springboot初体验
周sir |
2017年6月16日 |
springboot |
0 条评论 | 1677
Spring Boot 由 Pivotal 提供,目标是简化新 Spring 应用的初始搭建和开发过程。它用约定好的方式做配置,让你少写样板 XML / JavaConfig。官网:http://projects.spring.io/spring-boot/。
Boot 并不另起一套问题域,而是给已有 Spring 技术换一种更短的使用路径。熟悉 Spring 生态的人上手很快;新人也可以用更少配置把 Web 应用和 REST 跑起来。下面先做一个最小可访问接口,再补上 JSP + SpringMVC 视图。
一、最小可运行的 Spring Boot
1. Maven 依赖
创建一个 Maven 工程,引入 parent 和 web starter 即可:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.4.1.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
2. Application.java
@Controller
@SpringBootApplication
public class Application {
@RequestMapping("/")
@ResponseBody
public String helloSpringBoot() {
return "welcome to springBoot ";
}
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
3. 访问 http://localhost:8080/
浏览器打开 http://localhost:8080/,页面应显示 welcome to springBoot。
| 步骤 |
关键点 |
| parent + starter-web |
版本由 parent 统一管理,不必手写一堆 spring jar |
@SpringBootApplication |
等于配置类 + 自动配置 + 组件扫描 |
SpringApplication.run |
内嵌 Tomcat,main 方法直接启动 |
二、让 Spring Boot 支持 JSP 并走 SpringMVC
官方并不推荐 JSP。STS 生成的工程会在 src/main/resources/templates 下放模板,也没有传统 webapp 目录。若仍要用 JSP,需要额外依赖和视图前后缀。
1. 引入依赖
<!-- tomcat 的支持 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
2. application.properties
# springmvc 前后缀配置
spring.mvc.view.prefix=/WEB-INF/views/
spring.mvc.view.suffix=.jsp
更推荐写成 application.yml:
spring:
mvc:
view:
prefix: /WEB-INF/views/
suffix: .jsp
3. LoginController.java
@Controller
public class LoginController {
@RequestMapping("/login")
public String login() {
return "login";
}
@RequestMapping("/login_submit")
public String loginSubmit(String username, String password, Model model) {
model.addAttribute("message", "username = " + username + " password = " + password);
return "login";
}
}
4. 浏览器请求
访问 http://localhost:8080/login,会解析到 /WEB-INF/views/login.jsp。
一句话总结:Spring Boot 用 starter 和约定配置把第一个 Web 接口缩成「依赖 + 一个 Application 类」;若坚持 JSP,补 jasper / jstl 并配好视图前后缀即可接到 SpringMVC。
转载请注明来源:springboot初体验
我是周sir,这是我的博客。致力于分享我学会的技术和优秀的文章。微信公众号 “周sir专栏” 欢迎大家关注。