前言:达梦数据库作为国产数据库的佼佼者,今天尝试利用springboot +mybatis +druid来测试一下达梦数据库在java开发,特别是现在的利用框架来进行快速开发中的效果。
利用springboot +mybatis +druid 连接国产达梦数据库
首先导入对应的依赖。
pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0modelVersion>
<parent>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-parentartifactId>
<version>2.5.2version>
<relativePath/>
parent>
<groupId>com.sise.fxlgroupId>
<artifactId>TestDMartifactId>
<version>0.0.1-SNAPSHOTversion>
<name>TestDMname>
<description>Demo project for Spring Bootdescription>
<properties>
<java.version>1.8java.version>
properties>
<dependencies>
<dependency>
<groupId>org.mybatis.spring.bootgroupId>
<artifactId>mybatis-spring-boot-starterartifactId>
<version>2.2.0version>
dependency>
<dependency>
<groupId>com.damenggroupId>
<artifactId>Dm8JdbcDriver18artifactId>
<version>8.1.1.49version>
dependency>
<dependency>
<groupId>com.alibabagroupId>
<artifactId>druid-spring-boot-starterartifactId>
<version>1.1.10version>
dependency>
<dependency>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-testartifactId>
<scope>testscope>
dependency>
<dependency>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-webartifactId>
dependency>
dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-maven-pluginartifactId>
plugin>
plugins>
build>
project>
编写实体类,对应数据库的类。
package com.sise.entity;
public class User {
private int id;
private String name;
private String birthday;
private String notes;
public String getBirthday() {
return birthday;
}
public void setBirthday(String birthday) {
this.birthday = birthday;
}
public String getNotes() {
return notes;
}
public void setNotes(String notes) {
this.notes = notes;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
编写mapper 里面主要是对数据库的一些crud操作。
package com.sise.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
import com.sise.entity.User;
@Mapper
public interface ConformityMapper {
User selectById();
@Select("select * from \"TESTDB\".\"t_student\"")
public List<User> getAllUser();
//查询
@Select("select * from \"TESTDB\".\"t_student\" where \"id\"= #{id}")
public List<User> getUsers(@Param("id") int id);
//插入
@Insert("insert into \"TESTDB\".\"t_student\" values (#{id},#{name},#{birthday},#{notes});commit;")
public void saveUser(@Param("id") int id,@Param("name") String name,@Param("birthday") String birthday,@Param("notes") String notes);
//删除
@Delete("delete from \"TESTDB\".\"t_student\" where \"id\"='1001'")
public void deleteUser();
//更新
@Update("update \"TESTDB\".\"t_student\" set \"name\"='ketene' where \"id\"='1007'")
public void updateUser();
}
在controller里面写上对应的映射操作
package com.sise.controller;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.sise.entity.User;
import com.sise.mapper.ConformityMapper;
@RestController
public class UserController {
@Autowired
ConformityMapper conformityMapper;
@RequestMapping("/test/all")
public List<User> getAllUser(){
return conformityMapper.getAllUser();
}
@RequestMapping("/test/{id}") //查询
public List<User> getUsers(@PathVariable("id")int id){
// System.out.println("查询");
// User user = new User();s
// user.setId(1002);
return conformityMapper.getUsers(id);
}
@RequestMapping("/testinsert")
public String saveUser() {
User user = new User();
user.setId(1007);
user.setName("jelly");
user.setBirthday("1999-8-6");
user.setNotes("NULL");
conformityMapper.saveUser(user.getId(),user.getName(),user.getBirthday(),user.getNotes());
return "insert success!!!!";
}
@RequestMapping("/testdelete")
public String deleteUser() {
conformityMapper.deleteUser();
return "delete success!!!!";
}
@RequestMapping("/testupdate")
public String updateUser() {
conformityMapper.updateUser();
return "updateUser success!!!!";
}
}
相关的数据库结构在testdb.sql文件上,需要自行加入数据。
在达梦的图形化界面进行操作,一定要记得提交事务,也就是 commit语句。
利用Javaspringboot框架,快速整合达梦数据库进行开发。相关配置参数在application.yml里面。
对数据库内容进行简单的crud(增删改查)
下面是一些演示内容:
自此,就对达梦数据库进行了一个简单的操作了。
但是除了查询以外的sql操作语句是写死的,也可以按照查询语句的写法来进行完善修改。
我这里为了方便展示,就没有去完善了。
项目已经上传到gitee上面:
链接附上:
DMTest
更多资讯请上达梦技术社区了解: https://eco.dameng.com