Java工作笔记-Spring Boot中使用Mybatis操作达梦数据库

370 篇文章 20 订阅
140 篇文章 4 订阅

这里以达梦数据库为例,使用MyBatis对数据库进行增删改查

这里先给出截图

此处为了简单,直接在Controller里面调用dao中数据:

关键代码如下:

application.properties

spring.datasource.driver-class-name=dm.jdbc.driver.DmDriver
spring.datasource.url=jdbc:dm://XXX.XXX.XXX.XXX
spring.datasource.username=XXXX
spring.datasource.password=XXXX

mybatis.mapperLocations=classpath:/*.xml

AppInfo.java

i1package com.example.demo.object;

import lombok.Data;

@Data
public class AppInfo{

    private String appXXId;
    private String nodeXXId;
    private String appXXEngName;
    private String appXXChnName;
    private String appXXStatus;
}

AppInfoMapper.java

package com.example.demo.dao;


import com.example.demo.object.AppInfo;
import org.apache.ibatis.annotations.Mapper;


import java.util.List;

@Mapper
public interface AppInfoMapper {

    List<AppInfo> getAllAPPInfo();
    void addAPPInfo(AppInfo appInfo);
    void updateAPPInfo(AppInfo appInfo);
    void deleteAPPInfo(AppInfo appInfo);
}

TestController.java

package com.example.demo.controller;

import com.example.demo.dao.AppInfoMapper;

import com.example.demo.object.AppInfo;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import javax.annotation.Resource;

@Controller
@ResponseBody
public class TestController {

    @Resource
    private AppInfoMapper mapper;

    @GetMapping("/select")
    public String select(){

        System.out.println(mapper.getAllAPPInfo());
        return "<h1>Hello World</h1>";
    }

    @GetMapping("/insert")
    public String insert(){

        AppInfo appInfo = new AppInfo();
        appInfo.setAppXXId("10086");
        appInfo.setNodeXXId("10010");
        appInfo.setAppXXChnName("呵呵哒");
        appInfo.setAppXXEngName("English");
        mapper.addAPPInfo(appInfo);
        System.out.println(mapper.getAllAPPInfo());
        return "<h1>Hello World</h1>";
    }

    @GetMapping("/update")
    public String update(){

        AppInfo appInfo = new AppInfo();
        appInfo.setAppXXId("10086");
        appInfo.setNodeXXId("10000");
        appInfo.setAppXXChnName("哦!是吗");
        appInfo.setAppXXEngName("Chinese");
        mapper.updateAPPInfo(appInfo);
        System.out.println(mapper.getAllAPPInfo());
        return "<h1>Hello World</h1>";
    }

    @GetMapping("/delete")
    public String delete(){

        AppInfo appInfo = new AppInfo();
        appInfo.setAppXXId("10086");
        mapper.deleteAPPInfo(appInfo);
        System.out.println(mapper.getAllAPPInfo());
        return "<h1>Hello World</h1>";
    }
}

关键的xml文件如下:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="com.example.demo.dao.AppInfoMapper">

    <select id="getAllAPPInfo" resultType="com.example.demo.object.AppInfo">
        select APPXXID as appXXId, NODEXXID as nodeXXId, APPXX_ENG_NAME as appXXEngName, APPXX_CHN_NAME as appXXChnName, APPXX_STATUS as appXXStatus from XX.XX
    </select>

    <insert id="addAPPInfo" useGeneratedKeys="false" parameterType="com.example.demo.object.AppInfo">
        insert into XX.XX(APPXXID, NODEXXID, APPXX_ENG_NAME, APPXX_CHN_NAME) values(#{appXXId}, #{nodeXXId}, #{appXXEngName}, #{appXXChnName})
    </insert>

    <update id="updateAPPInfo" parameterType="com.example.demo.object.AppInfo">
        update XX.XX set NODEXXID=#{nodeXXId}, APPXX_ENG_NAME=#{appXXEngName}, APPXX_CHN_NAME=#{appXXChnName} where APPXXID=#{appXXId}
    </update>

    <delete id="deleteAPPInfo" parameterType="com.example.demo.object.AppInfo">
        delete from XX.XX where APPXXID=#{appXXId}
    </delete>
    
</mapper>

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT1995

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值