spring boot到底是什么框架?该如何使用呢?本章教程将带领你们学习入门spring boot,并向浏览器输出hello world,采用restful风格。在学习spring boot之前,我先来介绍一下什么是spring boot?
Spring Boot可以轻松快速创建独立的,生产级别的基于Spring的应用程序,具有以下几个特点,
第1:spring boot能创建不用配置tomcat,jetty或Undertow等服务器容器就能直接运行的应用程序,因为它内部嵌入了tomcat类的服务器容器,只需要运行一下main函数就可以了。
第2:运行spring boot程序绝对没有代码生成。
第3:spring boot程序可以不需要xml文件配置。
现在你们知道spring boot的好处了吧,它比ssm框架好用多了,因为ssm框架还要配置spring xml相关文件,ssm整合起来非常的麻烦,spring boot就是一个不用任何配置就可以做到和ssm一样功能的开发框架,也叫模式吧!
今天就一起来学习spring boot开发网站系统的入门阶段吧,先搭建一个简单入门小程序,我们通过创建maven来做这个项目,这样会方便很多,如果你不会在eclipse上搭建maven项目,请先参考以下教程,教你快速学会maven,很简单。
eclipse上如何搭建maven项目:http://www.tpyyes.com/a/javaweb/2016/1010/21.html
下面我们先创建一个名为springbootDemo的maven项目,然后在pom.xml文件中导入spring boot所需要的所有jar包,用下面的代码复制获取替换掉你自己项目下的pom.xml代码就好了,代码如下。
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.1.RELEASE</version> </parent> <!--这是自己项目的坐标,创建项目时自动生成的--> <groupId>com.baidu</groupId> <artifactId>springboot</artifactId> <version>0.0.1-SNAPSHOT</version> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies> <packaging>war</packaging> </project>
当所有的jar包导入完毕之后,就可以写我们的控制层了,如果你学过ssm框架的restful,那么这里是完全一样的,我们在自己的项目下创建SpringbootController,写上我们要输出hello world字符串的功能,很简单。
package com.baidu.web; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.RestController; @RequestMapping("/home") @RestController //@Controller注解也可以 @SpringBootApplication public class SpringbootController { //通过http://localhost:8080/home/hello地址访问,输出hello world @RequestMapping("/hello") @ResponseBody public String hello() { return "Hello World!"; } //右键运行main函数之后输入地址访问 public static void main(String[] args) throws Exception { SpringApplication.run(SringbootController.class, args); } }
main函数中的SpringApplication.run(SpringbootController.class, args)就是用来运行项目的,@SpringBootApplication注解是用来启动服务器的,如果没有这个注解程序就运行不了,你也可以用@EnableAutoConfiguration这个注解替代。
你也可以独立新建一个Appxx的类,将main函数整个复制过去,然后使用以上所说的注解,但是controller层的注解也不能少,也就是说两个类都需要@SpringBootApplication或者@EnableAutoConfiguration注解。
spring boot入门学习就写到这里,下一节讲深入学习spring boot的一些其他功能,不如mysql连接数据库的使用,tomcat搭建项目等等。