当前位置:   article > 正文

Spring Boot中使用JdbcTemplate访问达梦数据库详解_jdbctemplate 达梦

jdbctemplate 达梦

Spring Boot中使用JdbcTemplate访问达梦数据库详解


前言

       武汉达梦数据库股份有限公司作为国产数据库的龙头企业,是国内鲜有掌握数据管理与数据分析领域的核心前沿技术,拥有全部源代码,具有完全自主知识产权的国产数据库厂商,在国内数据库份额越来越多,深扎传统领域的关键业务场景,我们来学习下如果使用jdbcTemplate访问达梦数据库进行基本的Druid操作。

一、创建SpringBoot项目

创建项目,按下图选项进行勾选:

点击next进入下一步,配置项目基本信息,如下图:

勾选项目所需要的的依赖坐标,如下图:

点击next,finish结束后开始初始化项目,第一次建立项目,需要下载很多包,请耐心等待一下。初始化完毕后,由于我们要使用的是达梦数据库,需要我们自己增加达梦的jdbc驱动依赖,在maven的本地仓库中添加驱动包,驱动包在达梦的安装目录里有,可自行挪移,打开项目中的pom.xml文件,增加依赖坐标,如下图:

修改application.properties文件为application.yml文件,添加项目端口和jdbc链接相关信息,如下图:

二、代码编写

在启动类同级目录下创建entity,service,serviceImpl,dao,controller文件夹,如下图:

在entity文件夹下创建Plan实体类

  1. package com.dm.jdbcdemo.entity;
  2. public class Plan {
  3. private String id;
  4. private String gznr;
  5. private String tdfw;
  6. private String czlx;
  7. public String getId() {
  8. return id;
  9. }
  10. public void setId(String id) {
  11. this.id = id;
  12. }
  13. public String getGznr() {
  14. return gznr;
  15. }
  16. public void setGznr(String gznr) {
  17. this.gznr = gznr;
  18. }
  19. public String getTdfw() {
  20. return tdfw;
  21. }
  22. public void setTdfw(String tdfw) {
  23. this.tdfw = tdfw;
  24. }
  25. public String getCzlx() {
  26. return czlx;
  27. }
  28. public void setCzlx(String czlx) {
  29. this.czlx = czlx;
  30. }
  31. }

在dao文件夹下创建PlanDao接口

  1. package com.dm.jdbcdemo.dao;
  2. import com.dm.jdbcdemo.entity.Plan;
  3. import org.springframework.beans.factory.annotation.Autowired;
  4. import org.springframework.jdbc.core.BeanPropertyRowMapper;
  5. import org.springframework.jdbc.core.JdbcTemplate;
  6. import org.springframework.stereotype.Repository;
  7. import javax.sql.DataSource;
  8. import java.util.List;
  9. @Repository
  10. public class PlanDao {
  11. @Autowired
  12. JdbcTemplate jdbcTemplate;
  13. public List getPlanData() {
  14. return jdbcTemplate.queryForList("select * from plan where id='1111111'");
  15. }
  16. public int updatePlanData() {
  17. return jdbcTemplate.update("update plan set gznr='aaaaaa' where id='1111111'");
  18. }
  19. public int deletePlanData() {
  20. return jdbcTemplate.update("delete from plan where id in ('1111111','2222222','3333333')");
  21. }
  22. public int[] insertPlanData(List<Object[]> list) {
  23. return jdbcTemplate.batchUpdate("insert into plan(id, gznr, tdfw) values (?,?,?)", list);
  24. }
  25. public List<Plan> getPlanRecordData() {
  26. return jdbcTemplate.query("select top 5 id,gznr,tdfw,'cs' as czlx from plan",
  27. new BeanPropertyRowMapper<>(Plan.class));
  28. }
  29. }

在service文件夹下创建PlanService接口

  1. package com.dm.jdbcdemo.service;
  2. import java.util.List;
  3. public interface PlanService {
  4. List getPlanData();
  5. int updatePlanData();
  6. int deletePlanData();
  7. int[] insertPlanData();
  8. List getPlanRecordData();
  9. }

在serviceImpl文件夹下创建PlanServiceImpl实现类

  1. package com.dm.jdbcdemo.serviceImpl;
  2. import com.dm.jdbcdemo.dao.PlanDao;
  3. import com.dm.jdbcdemo.service.PlanService;
  4. import org.springframework.beans.factory.annotation.Autowired;
  5. import org.springframework.stereotype.Service;
  6. import java.util.ArrayList;
  7. import java.util.List;
  8. @Service
  9. public class PlanServiceImpl implements PlanService {
  10. @Autowired
  11. PlanDao planDao;
  12. @Override
  13. public List getPlanData() {
  14. return planDao.getPlanData();
  15. }
  16. @Override
  17. public int updatePlanData() {
  18. return planDao.updatePlanData();
  19. }
  20. @Override
  21. public int deletePlanData() {
  22. return planDao.deletePlanData();
  23. }
  24. @Override
  25. public int[] insertPlanData() {
  26. Object[] firstPlan = {"1111111","a","b"};
  27. Object[] secondPlan = {"2222222","aa","bb"};
  28. Object[] thirdPlan = {"3333333","aaa","bbb"};
  29. List<Object[]> planList = new ArrayList();
  30. planList.add(firstPlan);
  31. planList.add(secondPlan);
  32. planList.add(thirdPlan);
  33. return planDao.insertPlanData(planList);
  34. }
  35. @Override
  36. public List getPlanRecordData() {
  37. return planDao.getPlanRecordData();
  38. }
  39. }

在controller文件夹下创建PlanController类

  1. package com.dm.jdbcdemo.controller;
  2. import com.dm.jdbcdemo.service.PlanService;
  3. import org.springframework.beans.factory.annotation.Autowired;
  4. import org.springframework.web.bind.annotation.RequestMapping;
  5. import org.springframework.web.bind.annotation.RestController;
  6. import java.util.List;
  7. @RestController
  8. public class PlanController {
  9. @Autowired
  10. PlanService planService;
  11. @RequestMapping("/")
  12. public String index() {
  13. return "欢迎使用jdbcdTemplate!";
  14. }
  15. //查询plan数据
  16. @RequestMapping("/getPlanData")
  17. public List getPlanData() {
  18. return planService.getPlanData();
  19. }
  20. //修改plan数据
  21. @RequestMapping("/updatePlanData")
  22. public int updatePlanData() {
  23. return planService.updatePlanData();
  24. }
  25. //删除plan数据
  26. @RequestMapping("/deletePlanData")
  27. public int deletePlanData() {
  28. return planService.deletePlanData();
  29. }
  30. //新增plan数据
  31. @RequestMapping("/insertPlanData")
  32. public int[] insertPlanData() {
  33. return planService.insertPlanData();
  34. }
  35. //查询plan操作记录数据
  36. @RequestMapping("/getPlanRecordData")
  37. public List getPlanRecordData() {
  38. return planService.getPlanRecordData();
  39. }
  40. }

三、测试

开始启动项目,并查看日志是否启动正常,如下图:

打开谷歌浏览器,测试数据库的增删查改功能,浏览器地址解析如图:

插入三条数据,显示为1则代表插入成功,如下图:

修改一条数据,显示为1则代表修改成功,如下图:


总结

数据库访问是数据库应用系统中非常重要的组成部分。DM 作为一个通用数据库管理系统,提供了多种数据库访问接口,包括 ODBC、JDBC、DPI 等方式。本指南的主要读者是从事过数据库应用系统开发,并具有 SQL 使用基础的程序员。开发一个应用系统,需要对其使用的数据库管理系统所具有的功能、性能、特性有较深入的了解。

 

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号