zoukankan      html  css  js  c++  java
  • SpringBoot-配置MyBatis-yml方式

    Druid的数据源配置:https://www.cnblogs.com/KuroNJQ/p/11171263.html

    1.导入依赖

    <dependency>
        <groupId>org.mybatis.spring.boot</groupId>
        <artifactId>mybatis-spring-boot-starter</artifactId>
        <version>2.0.1</version>
    </dependency>

    2.我有一个application-dev.yml和一个applicaion.yml

    分别是:

    
    
    spring:
    datasource:
    url: jdbc:mysql://localhost:3306/wrist?serverTimezone=UTC&useUnicode=true&characterEncoding=utf8&useSSL=false
    username: root
    password:
    driver-class-name: com.mysql.jdbc.Driver
    type: com.alibaba.druid.pool.DruidDataSource
    druid:
    #初始化大小
    initialSize: 5
    #最小值
    minIdle: 5
    #最大值
    maxActive: 20
    #最大等待时间,配置获取连接等待超时,时间单位都是毫秒ms
    maxWait: 60000
    #配置间隔多久才进行一次检测,检测需要关闭的空闲连接
    timeBetweenEvictionRunsMillis: 60000
    #配置一个连接在池中最小生存的时间
    minEvictableIdleTimeMillis: 300000
    validationQuery: SELECT 1 FROM DUAL
    testWhileIdle: true
    testOnBorrow: false
    testOnReturn: false
    poolPreparedStatements: true
    # 配置监控统计拦截的filters,去掉后监控界面sql无法统计,
    #'wall'用于防火墙,SpringBoot中没有log4j,我改成了log4j2
    filters: stat,wall,log4j2
    #最大PSCache连接
    maxPoolPreparedStatementPerConnectionSize: 20
    useGlobalDataSourceStat: true
    # 通过connectProperties属性来打开mergeSql功能;慢SQL记录
    connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500
    # 配置StatFilter
    web-stat-filter:
    #默认为false,设置为true启动
    enabled: true
    url-pattern: "/*"
    exclusions: "*.js,*.gif,*.jpg,*.bmp,*.png,*.css,*.ico,/druid/*"
    #配置StatViewServlet
    stat-view-servlet:
    url-pattern: "/druid/*"
    #允许那些ip
    allow: 127.0.0.1
    login-username: admin
    login-password: 123456
    #禁止那些ip
    deny: 192.168.1.102
    #是否可以重置
    reset-enable: true
    #启用
    enabled: true
    mybatis:
    # model的包 type-aliases-package: ssm.app.model configuration:
      # 开启驼峰uName自动映射到u_name map-underscore-to-camel-case: true # 打印sql logging: level: ssm.app.mapper : debug
    spring:
      profiles:
        active: dev

    3.mybatis已经可以用了,下面是mapper接口

    @Mapper
    public interface CountryMapper {
    
        @Select("select * from Country")
        public List<Country> selectAll();
    
        @Select("select * from Country where id = #{id}")
        public Country selectCountryById(long id);
    }

    service:

    @Service
    public class CountryServiceImpl implements CountryService {
        @Autowired
        private CountryMapper countryMapper;
    
        @Override
        public List<Country> getCountriesFromDb() {
            return countryMapper.selectAll();
        }
    
        @Override
        public Country getCountryFromDbById(long id) {
            return countryMapper.selectCountryById(id);
        }
    }

    controller:

    @RestController
    public class CountryController extends BaseController {
        private final CountryService countryServiceImpl;
    
        @Autowired
        public BaseController(CountryService countryServiceImpl) {
            this.countryServiceImpl = countryServiceImpl;
        }
    
        @RequestMapping("/getAllCountries")
        public List<Country> getAllCountries() {
            return countryServiceImpl.getCountriesFromDb();
        }
    }

    ok!还有就是记得注意yml的层次关系,别写错了,QAQ!

  • 相关阅读:
    2015/12/26 十六、 八 、二 进制转十进制
    2015/12/25 ① 图灵测试 ② 安装jdk出现的问题 ③ 配置环境变量
    java如何产生随机数
    二分查找法
    冒泡排序法
    计算阶乘
    九九乘法小练习
    数组循环语句练习
    经典循环例题练习
    如何用循环语句输出一个三角形
  • 原文地址:https://www.cnblogs.com/KuroNJQ/p/11184178.html
Copyright © 2011-2022 走看看