spring-boot+mybatis-plus连接Oracle数据库,及查询相关数据
配置java
略(这里我用的是jdk1.8)
配置maven
-
环境变量:
-
M2_HOME:D:\LJ\software\java\maven\apache-maven-3.6.3
-
Path:%M2_HOME%\bin
-
仓库/jdk/镜像云设置(./config/sitting)
-
仓库
<localRepository>
D:/LJ/software/java/maven/apache-maven-3.6.3/maven_repository </localRepository>
-
阿里云镜像
<mirror><id>nexus-aliyun</id><mirrorOf>central</mirrorOf><name>Nexus aliyun</name><url>http://maven.aliyun.com/nexus/content/groups/public</url></mirror>
-
jdk
<profile><id>jdk-1.8</id><activation><activeByDefault>true</activeByDefault><jdk>1.8</jdk></activation><properties><maven.compiler.source>1.8</maven.compiler.source><maven.compiler.target>1.8</maven.compiler.target><maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion></properties></profile>
配置安装ojdbc
maven版本不匹配可能会安装失败,这里使用的是maven3.6.3,可是试试maven在线仓库提供的版本包(如本例的pom.xml所示),如果无法使用再自己到官网下载ojdbc.jar安装。
官网下载ojdbc.jar
***Oracel11g与ojdbc5/ojdbc6版本匹配
打包示例如下:
mvn install:install-file -Dfile=D:\LJ\software\java\jar\orcl\ojdbc8.jar -DgroupId=com.oracle -DartifactId=ojdbc8 -Dversion=1.0 -Dpackaging=jar -DgeneratePom=true
mvn install:install-file -Dfile=ojdbc6-11.1.0.7.jar -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=11.1.0.7 -Dpackaging=jar -DgeneratePom=true
Spring-boot测试
测试环境主要关注点
- 主要依赖环境mybatisplus,ojdbc6
- 检查依赖是否冲突
- 检查Oracle相关服务是否启动
- 检查查询实体类与数据库表是否吻合
- 注意Oracle引擎版本类型
Pom.xml依赖
<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId><version>2.3.7.RELEASE</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><version>2.3.7.RELEASE</version></dependency>
<!-- <dependency>-->
<!-- <groupId>com.oracle</groupId>-->
<!-- <artifactId>ojdbc8</artifactId>-->
<!-- <version>1.0</version>-->
<!-- </dependency>--><dependency><groupId>com.oracle.database.jdbc</groupId><artifactId>ojdbc6</artifactId><version>11.2.0.4</version></dependency><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter-test</artifactId><version>3.4.1</version></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.16.10</version><scope>provided</scope></dependency></dependencies>
配置Oracle登录信息(application.yml)
spring:datasource:username: LIJINpassword: 123456789url: jdbc:oracle:thin:@127.0.0.1:1521:ORCLdriver-class-name: oracle.jdbc.OracleDriver
# driver-class-name: oracle.jdbc.driver.OracleDriver
测试
实体类
package org.example.entities;import lombok.Data;@Data
public class Users {Integer id;String name;String psword;
}
Mapper接口
package org.example.Mapper;import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.example.entities.Users;public interface UserMapper extends BaseMapper<Users> {
}
在启动类中扫描注册Mapper【MapperScan】
package org.example;import org.example.Mapper.UserMapper;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@MapperScan("org.example.Mapper")
@SpringBootApplication
public class OrclApp {public static void main(String[] args) {SpringApplication.run(OrclApp.class,args);}
}
测试
package org.example;import org.example.Mapper.UserMapper;
import org.example.entities.Users;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;import java.util.List;@SpringBootTest
public class OrclTest {@AutowiredUserMapper userMapper;@Testpublic void testOrl(){List<Users> userList=userMapper.selectList(null);userList.forEach(System.out::println);}
}