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(){ // 监控页面地址 ServletRegistrationBeanbean = 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; } }); });