Spring Boot 简化基于Spring的应用开发
步骤:
1、准备依赖:
Spring-Boot:1.4.4
Maven:3.3.3,官方:springboot 1.4.4版本需要maven 3.2+
Maven的本地仓库
2、创建maven工程jar,父工程继承 spring-boot-starter-parent
3、添加依赖:spring-boot-starter-web,实际相当于添加SpringMVC和Spring
4、如果需要:变更JDK版本(首先得配置了指定版本的JDK)
<properties>
<java.version>1.7</java.version>
</properties>
jdk 1.6/1.7都可以使用spring-boot,官方推荐使用1.8
5、创建引导类:
@SpringBootApplication
public class SpringBootDemo {
public static void main(String[] args) {
// SpringApplication.run(SpringBootDemo.class, args);
// 关闭spring启动标识,可通过修改配置文件自定义标识
SpringApplication application = new SpringApplication(SpringBootDemo.class);
application.setBannerMode(Mode.OFF);
application.run(args);
}
}
@RestController
public class HelloController {
@Autowired
private Environment environment;
@Value("${name}")
private String name;
@Value("${url}")
private String url;
@RequestMapping("hello")
public String hello() {
System.err.println("name:" + environment.getProperty("name"));
System.err.println("url:" + environment.getProperty("url"));
System.err.println("name:" + this.name);
System.err.println("url:" + this.url);
return "Hello World!";
}
}
配置:application.properties中:
name=我爱中国
url=http://www.ilovechina.com
a、启动引导类
//b、使用maven命令:spring-boot:run
8、配置热加载:
pom添加依赖:spring-boot-devtools
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
9、pom配置MyBatis启动器:
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
#DB配置
spring.datasource.driverClassName=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/demo?useUnicode=true&characterEncoding=utf8
spring.datasource.username=root
spring.datasource.password=root
#配置MyBatis环境 别名扫描
mybatis.type-aliases-package=cn.lwj.demo.pojo
#加载Mybatis核心配置文件
mybatis.mapper-locations=classpath:mapper/*Mapper.xml
mybatis.config-location=classpath:mybatis/SqlMapConfig.xml
#配置连接池,还需要在pom.xml中加入该连接池的依赖
#spring.datasource.type=com.jolbox.bonecp.BoneCPDataSource
13、Mapper:(场景:根据用户名模糊查询用户)
@Mapper
public interface UserMapper extends com.github.abel533.mapper.Mapper<User>{
@Select("select * from user where name like '%${value}%'")
public List<User> queryUserByName(String name);
其中:
@Mapper声明接口
@Select声明所需的sql,及另外还有增删改的注解
14、其余业务正常编写
15、启动,测试即可……
另:
整合插件:通用Mapper和分页助手
1、依赖:
<!-- 通用Mapper -->
<dependency>
<groupId>com.github.abel533</groupId>
<artifactId>mapper</artifactId>
<version>2.3.4</version>
</dependency>
<!-- 分页助手 -->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>3.7.5</version>
</dependency>
2、MyBatis核心配置SqlMapConfig.xml:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!-- 分页助手 -->
<plugins>
<plugin interceptor="com.github.pagehelper.PageHelper">
<property name="dialect" value="mysql" />
<!--默认为false 设置为true时,使用RowBounds分页会进行count查询 -->
<property name="rowBoundsWithCount" value="true" />
</plugin>
<!-- 通用Mapper -->
<plugin interceptor="com.github.abel533.mapperhelper.MapperInterceptor">
<!--主键自增回写方法,默认值MYSQL -->
<property name="IDENTITY" value="MYSQL" />
<!--通用Mapper接口,多个通用接口用逗号隔开 -->
<property name="mappers" value="com.github.abel533.mapper.Mapper" />
</plugin>
</plugins>
</configuration>
3、此时Mapper接口定义,需要继承通用Mapper的接口,并注入泛型
4、编写实现逻辑即可。