Spring Boot 微框架
1. springboot的引言
Spring Boot是由
Pivotal团队提供的全新框架
,其设计目的是用来简化Spring应用的 初始搭建以及开发过程
。该框架使用了特定的方式来进行配置
,从而使开发人员不 再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应 用开发领域(rapid application development)成为领导者。
springboot(微框架) = springmvc(控制器) + spring(项目管理)
2. springboot的特点
创建独立的Spring应用程序
嵌入的Tomcat,无需部署WAR文件
简化Maven配置
自动配置Spring
没有XML配置
3. springboot的环境搭建
环境要求:
- MAVEN 3.x+
- Spring FrameWork 4.x+
- JDK7.x +
- Spring Boot 1.5.x+
3.1 项目中引入依赖
x
<!--继承springboot的父项目-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.7.RELEASE</version>
</parent>
<dependencies>
<!--引入springboot的web支持-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
3.2 引入配置文件
项目中src/main/resources/application.yml
3.3 建包并创建控制器
xxxxxxxxxx//在项目中创建指定的包结构
/*
com+| baizhi+| controller */"/hello")(public class HelloController {"/hello")(
public String hello(){System.out.println("======hello world=======");return "hello";}}
3.4 编写入口类
xxxxxxxxxx//在项目中如下的包结构中创建入口类 Application
/*
com+| baizhi */
public class Application {public static void main(String[] args) {SpringApplication.run(Application.class,args);}}
3.5 运行main启动项目
xxxxxxxxxxo.s.j.e.a.AnnotationMBeanExporter : Registering beans for JMX exposure on startups.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8989 (http)com.baizhi.Application : Started Application in 2.152 seconds (JVM running for 2.611)//说明: 出现以上日志说明启动成功
3.6 访问项目
xxxxxxxxxx//注意: springboot的项目默认没有项目名
//访问路径: http://localhost:8080/hello/hello
4. 启动tomcat端口占用问题
xxxxxxxxxx
server
port 8989 #用来指定内嵌服务器端口号
context-path /springboot #用来指定项目的访问路径
5. springboot相关注解说明
xxxxxxxxxx/*说明:
spring boot通常有一个名为 xxxApplication的类,入口类中有一个main方法, 在main方法中使用SpringApplication.run(xxxApplication.class,args)启动springboot应用的项目。@RestController: 就是@Controller+@ResponseBody组合,支持RESTful访问方 式,返回结果都是json字符串。
@SpringBootApplication 注解等价于:
@Configuration 项目启动时自动配置spring 和 springmvc 初始搭建@EnableAutoConfiguration 自动与项目中集成的第三方技术进行集成@ComponentScan 扫描入口类所在子包以及子包后代包中注解
*/
6. springboot中配置文件的拆分
xxxxxxxxxx
#说明: 在实际开发过程中生产环境和测试环境有可能是不一样的 因此将生产中的配置和测试中的配置拆分开,是非常必要的在springboot中也提供了配置文件拆分的方式. 这里以生产中项名名称不一致为例:
生产中项目名为 cmfz
测试中项目名为 springboot
端口同时为8080
拆分如下
#主配置文件:
application.yml #用来书写相同的的配置
server
port 8080 #生产和测试为同一个端口
#生产配置文件:
application-pord.yml
server
context-path /cmfz
#测试配置文件:
application-dev.yml
server
context-path /springboot
7. springboot中集成jsp展示
7.1 引入jsp的集成jar包
xxxxxxxxxx
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
</dependency>