通过IDEA工具,用Spring Initializr创建项目。
1. 设置Group、Artifact以及包名
2.选择需要依赖的模块
2.1选择SpringBoot的版本,添加web依赖:
2.2在SQL中选中MySQL数据库驱动,选择JDBC用来添加数据源,然后选择添加MyBatis依赖
然后next->finish,项目创建完成。
3.项目的POM.xml
3.1然后查看创建完成的项目中的pom.xml配置文件,jdbc、web、mybatis等相关依赖都引入了进来。
3.2我们以图表的方式查看pom文件,可以看到它引入了spring-boot-starter-jdbc
、mybatis
、mybatis-spring
、mybatis-spring-boot-autoconfigure
这些依赖。
4.整合druid
数据源
4.1 需要在pom.xml配置文件中,加入如下dependency
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.8</version>
</dependency>
4.2在src/main/resources
下新建application.yml
配置文件,用于配置数据源,数据源的配置信息如下:
spring:
datasource:
# 数据源基本配置
username: root
password: root
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3306/test
type: com.alibaba.druid.pool.DruidDataSource
# 数据源其他配置
initialSize: 5
minIdle: 5
maxActive: 20
maxWait: 60000
timeBetweenEvictionRunsMillis: 60000
minEvictableIdleTimeMillis: 300000
validationQuery: SELECT 1 FROM DUAL
testWhileIdle: true
testOnBorrow: false
testOnReturn: false
poolPreparedStatements: true
# 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
filters: stat,wall,log4j
maxPoolPreparedStatementPerConnectionSize: 20
useGlobalDataSourceStat: true
connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500
4.3编写DruidConfig配置类,用于导入druid数据源信息。
@Configuration
public class DruidConfig {
@ConfigurationProperties(prefix = "spring.datasource")
@Bean
public DataSource druid(){
return new DruidDataSource();
}
//配置Druid的监控
//1、配置一个管理后台的Servlet
@Bean
public ServletRegistrationBean statViewServlet(){
ServletRegistrationBean bean = new ServletRegistrationBean(new StatViewServlet(), "/druid/*");
Map<String,String> initParams = new HashMap<>();
initParams.put("loginUsername","admin");
initParams.put("loginPassword","123456");
initParams.put("allow","");//默认就是允许所有访问
initParams.put("deny","192.168.15.21");
bean.setInitParameters(initParams);
return bean;
}
//2、配置一个web监控的filter
@Bean
public FilterRegistrationBean webStatFilter(){
FilterRegistrationBean bean = new FilterRegistrationBean();
bean.setFilter(new WebStatFilter());
Map<String,String> initParams = new HashMap<>();
initParams.put("exclusions","*.js,*.css,/druid/*");
bean.setInitParameters(initParams);
bean.setUrlPatterns(Arrays.asList("/*"));
return bean;
}
}
5.利用schema自动创建表
在application.yml中可以通过schema
为我们自动建表。在resources下创建sql目录,把SQL脚本放在sql目录下,重新启动项目数据库表就会自动创建好。
application.yml配置:
sql脚本存放路径: