公司的业务比较多,但是实际展示的页面想对而言较少,不同的服务又会提供给自己或者第三方使用。公司的技术经理在年初开始让我们使用spring-boot进行开发。构建微服务,对外对内其他项目提供服务。用了一段时间,给我的印象是搭建快速,配置简单,管理方便(我真不是来打广告的)。有一点需要注意,它在controller返回的是json格式,所以表现层青睐于使用ajax+html或者其他静态模板。springboot采用的是java配置+配置文件替代了xml这种。配置文件支持多种格式的文件,本人习惯使用propertites.你也可以使用yml.好了,开始springboot的代码入门。
1.jar的导入,本人使用的是maven管理,springboot集成了spring的基础开发的jar,你只需要导入 <!-- springboot核心jar -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.3.6.RELEASE</version>
</parent>
<!-- Add typical dependencies for a web application -->
<dependencies>
<!-- web相关 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
就能满足基本的web的开发,当然如果需要使用数据库以及其他的组件需要自行导入。值得注意一点的是,springboot采用的是内嵌的tomcat服务器,也就是说它本身是包含tomcat的jar的。打包的时候只需要打包成jar的形式就可以发布,不用像之前打包成war,然后放到tomcat的对应目录下。当然它也支持打包成war放到tomcat的目录然后发布。
我们需要定义入口,当你用jar打包发布时能运行,就像你的java类运行通过main函数或者junit测试一样。
@SpringBootApplication
public class Application {
public static void main(String[] args) throws Exception {
SpringApplication.run(Application.class, args);
}
}
以上代码就是简单的入口配置,要使用别的配置或者更高级的功能可以拓展。比如我要单独建一个java类来使用数据源的配置只需要在java类上面加@Confing的注解,表明当加载时会自动作为配置项。那些都是后话,这里只是顺便提一下。
@Controller
public class BaseController {
@ResponseBody
@RequestMapping(value="/wz", method=RequestMethod.GET)
public String query(){
return "www.xxxx.com";
}
}
这里和springmvc的配置一样,@Controller的注解可以换成@RestController.@restController的注解相当于@Controller+@ResponseBody的组合,定义这个类全局都是返回一个json格式。
到这里,一个简单的springboot的就已经搭好,默认的端口是8080,你也可以在配置文件中使用配置来修改这些参数,比如
spring.application.name=microservice
server.port=60012
表明我的端口为60012,项目的名字为microservice。
这样就完成了。
打开浏览器,输入“http://127.0.0.1:8080/项目名/wz”就能看到浏览器输出www.xxxx.com的字样。如果你使用了我说的配置,端口就是60012.项目名是microservice。
如果你需要打包发布,那么你的Pom.xml的 <packaging>jar</packaging>或者使用maven的打包插件。
右键项目,maven->clean 之后maven->build。就可以得到一个jar,在cmd窗口运行这个jar,就可以访问了。效果是一样的。