用 Spring 快速搭建 Web 应用(支持 RESTful API)

Spring 是个好框架……不过 Java 开发的一个通病是前期配置太麻烦。正好手头上有个新项目,我考虑后决定用 Java 做,看了新出的 Spring 4,还有 Spring Boot,可以快速地做出一个 Web Demo。不过我不太喜欢大量使用注解的方式,而且 Spring 4 出来的时间不久,资料也不多,所以还是打算用 Spring 3 来做。

Spring 3 的配置比较多,网上不少文章会教你一步步搭建环境,涉及到细节就是怎么说的都有了。另一个不爽的地方是,有些概念解释不清,对初次使用的人很不友好。再加上我记性不好,又不想每次开始新项目再从头学一遍,所以做了一个 Maven 的 archetype,放到了 Github 上,名字叫 spring-webapp-restful-quickstart,顾名思义,除了支持 Web,还能支持 RESTful API,就像这样:

  • http://localhost:8080/index
    这是 HTML 页面输出
  • http://localhost:8080/index.json
    这是 JSON 数据的输出

以上两种输出只取决于 URL 的后缀,内部用的都是同一个 Controller —— 不用单独为 API 专门写 Controller 了。

API 的输出使用了 ContentNegotiatingViewResolver,目前 API 只支持 JSON 格式的输出,不过要加入其他的格式,如 XML 也不难,自己照着改 applicationContext.xml 里的配置就好了。

这个骨架用了 Tiles 2 作为模板,选择 Tiles 2 是因为它使用 JSP 作为基础语言,这样能更好地和其他的标签库一起使用,而且对熟悉 Java 的人来说扩展起来也比较容易,做自己的 JSP 标签就行了。至于为什么没选 Tiles 3……是因为我看 Tiles 2 的特性就够用了,就没再看 Tiles 3……此外还配置好了 Jetty,可以直接用 maven jetty:run 运行项目。

目前这个 archetype 只是放到了我的 Github 下,等之后再完善一些会发布到 Maven 中央仓库。需要用的话只需要 git clone 下来然后用 maven install 安装到本地的 Maven 仓库就可以了。用 maven 创建新项目时记得选 spring-webapp-restful-quickstart。

时间: 2024-10-29 08:56:34

用 Spring 快速搭建 Web 应用(支持 RESTful API)的相关文章

在Ubuntu上快速搭建基于Beego的RESTful API

最近在研究Go,打算基于Go做点Web API,于是经过初步调研,打算用Beego这个框架,然后再结合其中提供的ORM以及Swagger的集成,可以快速搭建一个RESTful API的网站. 下面是具体做法: 1. 在Ubuntu中安装Go 1.8 默认Ubuntu apt-get提供的是Go 1.6,而我们要用最新的Go 1.8需要执行以下操作: 1.1 添加apt-get源并刷新 $ sudo add-apt-repository ppa:gophers/archive $ sudo apt

Spring Boot入门-快速搭建web项目

Spring Boot 概述: Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can "just run".We take an opinionated view of the Spring platform and third-party libraries so you can get started with minimum

windows下如何快速搭建web.py开发框架

在windows下如何快速搭建web.py开发框架 用Python进行web开发的话有很多框架供选择,比如最出名的Django,tornado等,除了这些框架之外,有一个轻量级的框架使用起来也是非常方便和顺手,就是web.py.它由一名黑客所创建,但是不幸的是这位创建者于2013年自杀了.据说现在由另外一个人在维护和更新.现在就来了解一下windows下如何搭建web.py开发环境. 一.安装web.py 在 https://github.com/webpy/webpy上下载web.py安装包.

快速搭建Web环境 Angularjs + Express3 + Bootstrap3

快速搭建Web环境 Angularjs + Express3 + Bootstrap3 AngularJS体验式编程系列文章, 将介绍如何用angularjs构建一个强大的web前端系统.angularjs是由Google团队开发的一款非常优秀web前端框架.在当前如此多 的web框架下,angularjs能脱颖而出,从架构设计上就高人一等,双向数据绑定,依赖注入,指令,MVC,模板.Angular.js创新地把后 台技术融入前端开发,扫去jQuery一度的光芒.用angularjs就像写后台代

Spring-Boot快速搭建web项目详细总结

最近在学习Spring Boot 相关的技术,刚接触就有种相见恨晚的感觉,因为用spring boot进行项目的搭建是在太方便了,我们往往只需要很简单的几步,便可完成一个spring MVC项目的搭建,感觉就是下图: 好,下面就本人搭建项目的过程简单说说如何快速搭建一个spring MVC项目,相信我,spring-boot这趟车,你上了根本就停不下来了! 下面是这篇博客的主要内容: 1.spring boot 介绍 2.spring boot 项目快速搭建 3.spring-boot中单元测试

30分钟快速搭建Web CRUD的管理平台--django神奇魔法

加上你的准备的时间,估计30分钟完全够用了,因为最近在做爬虫管理平台,想着快速开发,没想到python web平台下有这么非常方便的框架,简洁而优雅.将自己的一些坑总结出来,方便给大家的使用. 准备环境: 系统:win7 or ubuntu django版本:1.8.5 python版本:2.7.6 数据库:自带的SQLLITE3 IDE: sublime text 3 ===========================Read ? go===========================

在windows下如何快速搭建web.py开发框架

用Python进行web开发的话有很多框架供选择,比如最出名的Django,tornado等,除了这些框架之外,有一个轻量级的框架使用起来也是非常方便和顺手,就是web.py.它由一名黑客所创建,但是不幸的是这位创建者于2013年自杀了.据说现在由另外一个人在维护和更新.现在就来了解一下windows下如何搭建web.py开发环境. 一.安装web.py 在 https://github.com/webpy/webpy上下载web.py安装包.注意github对浏览器版本有要求的,比如不支持IE

(第01节)IDEA快速搭建web项目

在配置好环境,熟悉了IDEA的基本操作后,就要开始搭建WEB项目了: File——>new——>project——>然后选择Maven 点击Create from archetype,选择下面的maven-archetype-webapp,点击next Groupld:一般是自己的域名倒写 Artifactld:一般是文件名 点击NEXT,选择自己MAVEN的版本和配置文件还有仓库存放地址 再点击+号添加 再点击Finish,完成 原文地址:https://www.cnblogs.com

Spring Boot中使用Swagger2生成RESTful API文档(转)

效果如下图所示: 添加Swagger2依赖 在pom.xml中加入Swagger2的依赖 <!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger2 --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <versi