Mybatis连接Oracle数据库(2)

765 阅读1分钟

这是我参与 8 月更文挑战的第 11 天,活动详情查看: 8月更文挑战

紧接着上期的后续配置:

(2) application.properties中配置如下:

#数据库
mybatis.type-aliases-package=com.tjm.pojo
mybatis.mapper-locations=classpath:mapper/*.xml

(3)添加Datebase

截屏2021-08-11 下午9.48.26

在General界面,User选择自己创建的角色名,密码就是对应的角色的密码,填好后,点击左下角的Test Connection,测试成功后,点击Apply后,然后点击Schemas,选择准备连接的角色,然后点击Apply

截屏2021-08-11 下午9.49.37

截屏2021-08-11 下午9.54.19

(4) application.yml中配置如下:

spring:
  datasource:
    username: 'tjm'
    password: '123'
    # 假如时区报错,加入一个时区配置serverTimezone
    url: jdbc:oracle:thin:@localhost:1521:XE
    driver-class-name: oracle.jdbc.driver.OracleDriver
    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
    testWhileIdle: true
    testOnBorrow: false
    testOnReturn: false
    #是否缓存psCache,mysql建议关闭,oracle打开
    poolPreparedStatements: true

    #配置监控统计拦截的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

上述参数中:

usrname对应我们连接Database中的User,password对应Password,url对应Database中的URL.

测试是否连接上

在test中写入:

 @Autowired
    DataSource dataSource;

    @Test
    void contextLoads() throws SQLException {
        System.out.println("数据源>>>>>>" + dataSource.getClass());
        Connection connection = dataSource.getConnection();
        System.out.println("连接>>>>>>>>>" + connection);
        System.out.println("连接地址>>>>>" + connection.getMetaData().getURL());
        connection.close();
    }

输出为:

截屏2021-08-11 下午10.07.19

可以看出我们所连接的数据源以及连接地址,测试成功!