
1、环境搭建 1)新建SpringBoot工程 2)导jar包源码 + 资源 下载 >>
3)数据库等org.springframework.boot spring-boot-starter-weborg.mybatis.spring.boot mybatis-spring-boot-starter2.2.1 mysql mysql-connector-javaruntime com.alibaba druid1.2.8 log4j log4j1.2.17 org.springframework.boot spring-boot-starter-thymeleafcom.alibaba fastjson1.2.79 org.projectlombok lomboktrue org.springframework.boot spring-boot-starter-testtest
application.yml
spring:
datasource:
username: root
password: 123456
url: jdbc:mysql://localhost:3306/mybatis?useSSL=true&useUnicode=true&characterEncoding=utf8&serverTimezone=GMT
driver-class-name: com.mysql.cj.jdbc.Driver
# 自定义数据源
type: com.alibaba.druid.pool.DruidDataSource
#Spring Boot 默认是不注入这些属性值的,需要自己绑定
#druid 数据源专有配置
initialSize: 5 # 初始连接数
minIdle: 5 # 最小连接数
maxActive: 20 # 最大连接数
maxWait: 60000 # 没有可用连接时,最大等待时间
timeBetweenEvictionRunsMillis: 60000 # 运行时间间隔
minEvictableIdleTimeMillis: 300000 # 连接保持空闲
validationQuery: SELECt 1 FROM DUAL # 检测连接是否有效的SQL
testWhileIdle: true # 申请连接的时候检测,如果空闲时间大于timeBetweenEvictionRunsMillis,执行validationQuery检测连接是否有效。
testOnBorrow: false # 申请连接时执行validationQuery检测连接是否有效,true 配置会降低性能
testOnReturn: false # 归还连接时执行validationQuery检测连接是否有效,true 配置会降低性能。
poolPreparedStatements: false # 不缓存preparedStatement,也就是PSCache。PSCache对支持游标的数据库性能提升巨大,比如说oracle。在mysql下建议关闭。
#配置监控统计拦截的filters,stat:监控统计、log4j:日志记录、wall:防御sql注入
#如果允许时报错 java.lang.ClassNotFoundException: org.apache.log4j.Priority
#则导入 log4j 依赖即可,Maven 地址:https://mvnrepository.com/artifact/log4j/log4j
filters: stat,wall,log4j
maxPoolPreparedStatementPerConnectionSize: 20
useGlobalDataSourceStat: true
connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500
DruidConfig 配置类
@Configuration
public class DruidConfig {
@Bean
@ConfigurationProperties(prefix = "spring.datasource")
public DataSource druidDataSource(){
return new DruidDataSource();
}
@Bean
public ServletRegistrationBean statViewServlet(){
// 监控页面地址
ServletRegistrationBean bean = new ServletRegistrationBean<>(new StatViewServlet(),"/druid
@Bean
public FilterRegistrationBean webStatFilter(){
FilterRegistrationBean bean = new FilterRegistrationBean<>();
bean.setFilter(new WebStatFilter());
// exclusions:设置哪些请求进行过滤排除掉,从而不进行统计
Map initParams = new HashMap<>();
initParams.put("exclusions", "*.js,*.css,/druid
private int id;
private String author;
private String title;
private String content;
}
mapper接口
@Repository
public interface ArticleMapper {
List queryArticles();
int addArticle(Article article);
Article getArticleById(int id);
int deleteArticleById(int id);
}
mapper.xml配置
resources/mybatis/mapper 目录下
mybatis配置
mybatis: # 实体类别名 type-aliases-package: com.tuwer.pojo # 映射文件路径 mapper-locations: classpath:/mybatis/mapper toolbarIcons : function() { //return editormd.toolbarModes.full; //return editormd.toolbarModes.simple; //return editormd.toolbarModes.mini; return editormd.toolbarModes.me; } }); });