一、工程目录
二、主要配置文件
(1)父类pom文件
<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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.demo</groupId>
<artifactId>springboot</artifactId>
<packaging>pom</packaging>
<version>1.0</version>
<modules>
<module>platform</module>
</modules>
<name>springboot</name>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.3.RELEASE</version>
</parent>
<properties>
<main.basedir>${basedir}</main.basedir>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.7</java.version>
<project.deploy.directory>${basedir}/target</project.deploy.directory>
<mybatis-spring-boot.version>1.3.1</mybatis-spring-boot.version>
<druid.version>1.0.26</druid.version>
</properties>
<dependencyManagement>
</dependencyManagement>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>${java.version}</source>
<target>${java.version}</target>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
</project>
(2)子类pom文件
<?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">
<parent>
<artifactId>springboot</artifactId>
<groupId>com.demo</groupId>
<version>1.0</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<packaging>jar</packaging>
<artifactId>platform</artifactId>
<name>platform</name>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- mybatis -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>${mybatis-spring-boot.version}</version>
</dependency>
<!-- 数据源 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>
<!-- druid 连接池 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>${druid.version}</version>
</dependency>
</dependencies>
<build>
<plugins>
<!-- 该插件为Spring Boot应用提供了执行Maven操作的 -->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<!-- 打包后的输出路径 -->
<outputDirectory>${project.deploy.directory}</outputDirectory>
</configuration>
</plugin>
<!-- 编译插件,用于指定编译的jdk版本 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
</plugin>
<!-- 将当前项目打包为Jar包 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
</plugin>
<!-- 用于定制化打包方式 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<executions>
<execution>
<id>config-zip</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<skipAssembly>false</skipAssembly>
<!-- 打包输出路径 -->
<outputDirectory>${project.deploy.directory}</outputDirectory>
<!-- 描述符文件,用于描述那些文件需要被打包 -->
<descriptor>src/main/assembly/config-zip.xml</descriptor>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
(3)application.properties文件
spring.application.name=springboot_demo
#tomcat访问上下文路径
server.context-path=/springboot_demo
#指定tomcat端口
server.port=8090
#指定tomcat的编码格式
server.tomcat.uri-encoding=UTF-8
#配置字符集过滤器
spring.http.encoding.charset=UTF-8
spring.http.encoding.enabled=true
spring.http.encoding.force=true
#数据库连接参数
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.url=
spring.datasource.username=
spring.datasource.password=
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
#指定启动连接池时,初始建立的连接数量
spring.datasource.initialSize=5
#指定必须保持连接的最小值
spring.datasource.minIdle=5
#指定连接池中最大的活跃连接数
spring.datasource.maxActive=20
#指定连接池等待连接返回的最大等待时间,毫秒单位.
spring.datasource.maxWait=60000
#指定空闲连接检查、废弃连接清理、空闲连接池大小调整之间的操作时间间隔
spring.datasource.timeBetweenEvictionRunsMillis=60000
#指定一个空闲连接最少空闲多久后可被清除
spring.datasource.minEvictableIdleTimeMillis=300000
#指定获取连接时连接校验的sql查询语句
spring.datasource.validationQuery=SELECT 1 FROM DUAL
#当连接空闲时,是否执行连接测试
spring.datasource.testWhileIdle=true
#当从连接池借用连接时,是否测试该连接
spring.datasource.testOnBorrow=false
#在连接归还到连接池时是否测试该连接
spring.datasource.testOnReturn=false
#指定是否池化statements
spring.datasource.poolPreparedStatements=true
spring.datasource.maxPoolPreparedStatementPerConnectionSize=20
#配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙,此处是filter修改的地方
spring.datasource.filters=stat,wall,log4j
#在使用Druid connection pool时指定要配置的属性
spring.datasource.connectionProperties=druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
(4)mybatis配置文件
@Configuration
@EnableTransactionManagement
@MapperScan(basePackages = "com.demo.platform.**.repository")
public class MybatisConfig {
@Value("${spring.datasource.type}")
private Class<? extends DataSource> dataSourceType;
@Bean
@ConfigurationProperties(prefix = "spring.datasource")
public DataSource dataSource() {
return DataSourceBuilder.create().type(dataSourceType).build();
}
@Bean
public SqlSessionFactory sqlSessionFactoryBean() throws Exception {
SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean();
//设置数据源
sqlSessionFactoryBean.setDataSource(dataSource());
PathMatchingResourcePatternResolver resolver = new PathMatchingResourcePatternResolver();
//设置mapper对应的xml文件
sqlSessionFactoryBean.setMapperLocations(resolver.getResources("classpath*:mybatis/mysql/**/*.xml"));
return sqlSessionFactoryBean.getObject();
}
@Bean(name = "transactionManager")
@Primary
public PlatformTransactionManager transactionManager() {
return new DataSourceTransactionManager(dataSource());
}
}
至此,springboot+mybatis+mysql基本搭建完成,接下来就是连接mysql数据库并执行表的增删改查操作了~