赞
踩
武汉达梦数据库股份有限公司作为国产数据库的龙头企业,是国内鲜有掌握数据管理与数据分析领域的核心前沿技术,拥有全部源代码,具有完全自主知识产权的国产数据库厂商,在国内数据库份额越来越多,深扎传统领域的关键业务场景,我们来学习下如果使用jdbcTemplate访问达梦数据库进行基本的Druid操作。
创建项目,按下图选项进行勾选:
点击next进入下一步,配置项目基本信息,如下图:
勾选项目所需要的的依赖坐标,如下图:
点击next,finish结束后开始初始化项目,第一次建立项目,需要下载很多包,请耐心等待一下。初始化完毕后,由于我们要使用的是达梦数据库,需要我们自己增加达梦的jdbc驱动依赖,在maven的本地仓库中添加驱动包,驱动包在达梦的安装目录里有,可自行挪移,打开项目中的pom.xml文件,增加依赖坐标,如下图:
修改application.properties文件为application.yml文件,添加项目端口和jdbc链接相关信息,如下图:
在启动类同级目录下创建entity,service,serviceImpl,dao,controller文件夹,如下图:
在entity文件夹下创建Plan实体类
- package com.dm.jdbcdemo.entity;
-
- public class Plan {
- private String id;
- private String gznr;
- private String tdfw;
- private String czlx;
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getGznr() {
- return gznr;
- }
-
- public void setGznr(String gznr) {
- this.gznr = gznr;
- }
-
- public String getTdfw() {
- return tdfw;
- }
-
- public void setTdfw(String tdfw) {
- this.tdfw = tdfw;
- }
-
- public String getCzlx() {
- return czlx;
- }
-
- public void setCzlx(String czlx) {
- this.czlx = czlx;
- }
- }
在dao文件夹下创建PlanDao接口
- package com.dm.jdbcdemo.dao;
-
- import com.dm.jdbcdemo.entity.Plan;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.jdbc.core.BeanPropertyRowMapper;
- import org.springframework.jdbc.core.JdbcTemplate;
- import org.springframework.stereotype.Repository;
-
- import javax.sql.DataSource;
- import java.util.List;
-
- @Repository
- public class PlanDao {
- @Autowired
- JdbcTemplate jdbcTemplate;
-
- public List getPlanData() {
- return jdbcTemplate.queryForList("select * from plan where id='1111111'");
- }
-
- public int updatePlanData() {
- return jdbcTemplate.update("update plan set gznr='aaaaaa' where id='1111111'");
- }
-
- public int deletePlanData() {
- return jdbcTemplate.update("delete from plan where id in ('1111111','2222222','3333333')");
- }
-
- public int[] insertPlanData(List<Object[]> list) {
- return jdbcTemplate.batchUpdate("insert into plan(id, gznr, tdfw) values (?,?,?)", list);
- }
-
- public List<Plan> getPlanRecordData() {
- return jdbcTemplate.query("select top 5 id,gznr,tdfw,'cs' as czlx from plan",
- new BeanPropertyRowMapper<>(Plan.class));
- }
- }
在service文件夹下创建PlanService接口
- package com.dm.jdbcdemo.service;
-
- import java.util.List;
-
- public interface PlanService {
-
- List getPlanData();
-
- int updatePlanData();
-
- int deletePlanData();
-
- int[] insertPlanData();
-
- List getPlanRecordData();
- }
在serviceImpl文件夹下创建PlanServiceImpl实现类
- package com.dm.jdbcdemo.serviceImpl;
-
- import com.dm.jdbcdemo.dao.PlanDao;
- import com.dm.jdbcdemo.service.PlanService;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
-
- import java.util.ArrayList;
- import java.util.List;
-
- @Service
- public class PlanServiceImpl implements PlanService {
-
- @Autowired
- PlanDao planDao;
-
- @Override
- public List getPlanData() {
- return planDao.getPlanData();
- }
-
- @Override
- public int updatePlanData() {
- return planDao.updatePlanData();
- }
-
- @Override
- public int deletePlanData() {
- return planDao.deletePlanData();
- }
-
- @Override
- public int[] insertPlanData() {
- Object[] firstPlan = {"1111111","a","b"};
- Object[] secondPlan = {"2222222","aa","bb"};
- Object[] thirdPlan = {"3333333","aaa","bbb"};
- List<Object[]> planList = new ArrayList();
- planList.add(firstPlan);
- planList.add(secondPlan);
- planList.add(thirdPlan);
- return planDao.insertPlanData(planList);
- }
-
- @Override
- public List getPlanRecordData() {
- return planDao.getPlanRecordData();
- }
- }
在controller文件夹下创建PlanController类
- package com.dm.jdbcdemo.controller;
-
- import com.dm.jdbcdemo.service.PlanService;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RestController;
-
- import java.util.List;
-
- @RestController
- public class PlanController {
-
- @Autowired
- PlanService planService;
-
- @RequestMapping("/")
- public String index() {
- return "欢迎使用jdbcdTemplate!";
- }
-
- //查询plan数据
- @RequestMapping("/getPlanData")
- public List getPlanData() {
- return planService.getPlanData();
- }
-
- //修改plan数据
- @RequestMapping("/updatePlanData")
- public int updatePlanData() {
- return planService.updatePlanData();
- }
-
- //删除plan数据
- @RequestMapping("/deletePlanData")
- public int deletePlanData() {
- return planService.deletePlanData();
- }
-
- //新增plan数据
- @RequestMapping("/insertPlanData")
- public int[] insertPlanData() {
- return planService.insertPlanData();
- }
-
- //查询plan操作记录数据
- @RequestMapping("/getPlanRecordData")
- public List getPlanRecordData() {
- return planService.getPlanRecordData();
- }
- }
开始启动项目,并查看日志是否启动正常,如下图:
打开谷歌浏览器,测试数据库的增删查改功能,浏览器地址解析如图:
插入三条数据,显示为1则代表插入成功,如下图:
修改一条数据,显示为1则代表修改成功,如下图:
数据库访问是数据库应用系统中非常重要的组成部分。DM 作为一个通用数据库管理系统,提供了多种数据库访问接口,包括 ODBC、JDBC、DPI 等方式。本指南的主要读者是从事过数据库应用系统开发,并具有 SQL 使用基础的程序员。开发一个应用系统,需要对其使用的数据库管理系统所具有的功能、性能、特性有较深入的了解。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。