spring-boot 连接人大金仓数据库
首先下载人大金仓的数据库 安装好 过程略过
-
在安装好的数据库文件里面找到jdbc的jar包
-
将jar包加入本地maven库
mvn install:install-file -Dfile=jar包的位置 -DgroupId=上面的groupId -DartifactId=上面的artifactId -Dversion=上面的version -Dpackaging=jar mvn install:install-file -Dfile=jar包的位置 -DgroupId=com.kingbase -DartifactId=kingbase8 -Dversion=8.2.0 -Dpackaging=jar
-
使用idea创建spring-boot项目
-
在pom中添加依赖
<!-- 人大金仓数据库连接依赖 这个是自己加的 --> <dependency> <groupId>com.kingbase</groupId> <artifactId>kingbase8</artifactId> <version>8.2.0</version> </dependency> <!-- 阿里巴巴druid 连接池 --> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.1.21</version> </dependency>
-
创建一个application.yml 使用了druid 连接池
# 数据源配置 spring: datasource: type: com.alibaba.druid.pool.DruidDataSource driverClassName: com.kingbase8.Driver # 数据源 druid: url: jdbc:kingbase8:localhost:54321/SAMPLES?zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf-8 username: SYSTEM password: SYSTEM # 初始连接数 initialSize: 5 # 最小连接池数量 minIdle: 10 # 最大连接池数量 maxActive: 20 # 配置获取连接等待超时的时间 maxWait: 60000 # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 timeBetweenEvictionRunsMillis: 60000 # 配置一个连接在池中最小生存的时间,单位是毫秒 minEvictableIdleTimeMillis: 300000 # 配置一个连接在池中最大生存的时间,单位是毫秒 maxEvictableIdleTimeMillis: 900000 # 配置检测连接是否有效 #mysql使用:SELECT 1 FROM DUAL validationQuery: SELECT 1 testWhileIdle: true testOnBorrow: false testOnReturn: false webStatFilter: enabled: true statViewServlet: enabled: true # 设置白名单,不填则允许所有访问 allow: url-pattern: /druid/* # 控制台管理用户名和密码 login-username: admin login-password: admin filter: stat: enabled: true # 慢SQL记录 log-slow-sql: true slow-sql-millis: 1000 merge-sql: true wall: config: multi-statement-allow: true
-
在pom中加入mybatis-plus 依赖
<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.4.0</version> </dependency>
-
添加连接数据库的实体类 dao,service ,controller
-
修改启动类 扫描包
@MapperScan(basePackages = {"com.example.kingbasedemo.dao"}) @ComponentScan(basePackages={"com.example.kingbasedemo.service"}) @SpringBootApplication(exclude = {DataSourceAutoConfiguration.class}) public class KingbasedemoApplication { public static void main(String[] args) { SpringApplication.run(KingbasedemoApplication.class, args); } }
-
然后进行测试
@SpringBootTest class KingbasedemoApplicationTests { @Autowired private UserService userService; @Test void contextLoads() { List<User> list = userService.list(); for (User user: list ) { System.out.println(user.toString()); } } }
结果
然后就可以进行下一步编码了