阿泽哥
5分钟前:
spring-boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。它不再需要繁琐的XML配置,能够自动发现并自动处理复杂的依赖管理。Spring Boot就是一些库的集合,它能够被任意项目的构建系统所使用。
特点一:Spring Boot 支持Maven和Gradle构建系统,可以打包成jar或者war。
具体使用
可以选择按照http://projects.spring.io/spring-boot/ 的说明,Maven继承org.springframework.boot 来构建系统。全新项目的话,也可以使用http://start.spring.io/ 直接下载一个创建好的工程,在IDE中直接导入即可。(看不懂英文?没关系!)
使用Maven创建
在 http://start.spring.io/ 可以选择Maven和Gradle 两种方式构建,并提供了一些常用的库。
这里选择了,web, jdbc,mysql,redis,选择好了之后直接generate,即可开始下载创建的工程。
下载后解压,在IntelliJ IDE中 new->Project from Existing Source 导入即可(注意使用maven选项)。
自动创建的pom.xml内容为:
<?xml version="1.0" encoding="UTF-8"?><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">
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0modelVersion> <groupId>com.znngroupId>
<artifactId>demoartifactId>
<version>0.0.1-SNAPSHOTversion>
<packaging>jarpackaging> <name>demoname>
<description>Demo project for Spring Bootdescription> <parent>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-parentartifactId>
<version>1.4.0.RELEASEversion>
<relativePath/>
parent> <properties>
<project.build.sourceEncoding>UTF-8project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8project.reporting.outputEncoding>
<java.version>1.8java.version>
properties> <dependencies>
<dependency>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-aopartifactId>
dependency>
<dependency>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-data-redisartifactId>
dependency>
<dependency>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-jdbcartifactId>
dependency>
<dependency>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-webartifactId>
dependency> <dependency>
<groupId>mysqlgroupId>
<artifactId>mysql-connector-javaartifactId>
<scope>runtimescope>
dependency>
<dependency>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-testartifactId>
<scope>testscope>
dependency>
dependencies> <build>
<plugins>
<plugin>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-maven-pluginartifactId>
plugin>
plugins>
build>project>
初始化完成后,直接点运行,因为在pom里面配置了mysql,而现在并没有给mysql设置dataSource,所以这里会报错。在Spring Boot中是在src-resource-application.properties 里设置DataSource。
application.properties:
spring.datasource.driver-class-name=com.mysql.jdbc.Driverspring.datasource.url=jdbc:mysql://localhost:3306/database spring
spring.datasource.username=root spring
spring.datasource.password=
现在就能够正常启动Spring Boot了。
现在由于还没有配置controller,所以在打开localhost的时候会提示没有没有找到mapping。
我们创建一个Controller,里面定义两个接口,一个返回字符串,一个接口返回json:
package com.znn.controller;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.ResponseBody;import java.util.HashMap;@Controller public class TestController { @RequestMapping(
public class TestController { @RequestMapping("/") @ResponseBody String home(){ return
@ResponseBody
String home(){
return "Hello Spring Boot!!";
} @RequestMapping("/map") @ResponseBody HashMap map(){ HashMap map = new HashMap<>()
@ResponseBody
HashMap map(){
HashMap map = new HashMap<>();
map.put("code", 100);
map.put("msg", "success");
return map;
}
}
再次运行,打开 http://localhost:8080/ 就可以看到打印出了 Hello Spring Boot!!。
默认的打包方式是jar,我们可以使用mvn直接打包:
mvn clean package
打好的jar包存放在target目录下,可以直接使用
java -jar target/demo-0.0.1-SNAPSHOT.jar
来运行项目。通过这里可以看出来,Spring Boot相比Spring 去除了复杂的xml配置,更加简便快捷。
Spring Boot当然也支持war的形式打包,我们需要修改pom.xml中的packaging为war,然后还需要添加tomcat的支持。
修改后的pom.xml:
<?xml version="1.0" encoding="UTF-8"?><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">
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0modelVersion> <groupId>com.znngroupId>
<artifactId>demoartifactId>
<version>0.0.1-SNAPSHOTversion>
<packaging>warpackaging> <name>demoname>
<description>Demo project for Spring Bootdescription> <parent>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-parentartifactId>
<version>1.4.0.RELEASEversion>
<relativePath/>
parent> <properties>
<project.build.sourceEncoding>UTF-8project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8project.reporting.outputEncoding>
<java.version>1.8java.version>
properties> <dependencies>
<dependency>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-aopartifactId>
dependency>
<dependency>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-data-redisartifactId>
dependency>
<dependency>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-jdbcartifactId>
dependency>
<dependency>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-webartifactId>
dependency> <dependency>
<groupId>mysqlgroupId>
<artifactId>mysql-connector-javaartifactId>
<scope>runtimescope>
dependency>
<dependency>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-tomcatartifactId>
<scope>providedscope>
dependency>
<dependency>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-testartifactId>
<scope>testscope>
dependency>
dependencies> <build>
<plugins>
<plugin>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-maven-pluginartifactId>
plugin>
plugins>
build>project>
运行过程同上。
使用Gradle创建
待续....
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!