007.MyBatis访问PostgreSQL-XML方式

news/2024/7/9 22:24:09 标签: postgresql, xml, 数据库

在以下案例的基础上修改

006.MyBatis访问PostgreSQL-常规方式_℡メ㏑╭ァ小凯-CSDN博客

1.在应用主类中增加mapper的扫描包配置

@MapperScan("com.java.core")

 

 2.在扫描包对应下创建Mapper类,前面创建过了,这里需要去掉前面例子的注解

package com.java.core;

import org.apache.ibatis.annotations.*;

@Mapper
public interface UserMapper {

    //@Select("SELECT * FROM \"User\" WHERE name = #{name}")
    User findByName(@Param("name") String name);

    //@Insert("INSERT INTO \"User\"(name, age) VALUES(#{name}, #{age})")
    int insert(@Param("name") String name, @Param("age") Integer age);

    //@Update("UPDATE \"User\" SET age=#{age} WHERE name=#{name}")
    void update(User user);

    //@Delete("DELETE FROM \"User\" WHERE id =#{id}")
    void delete(Long id);
}

3.配置xml地址

mybatis.mapper-locations=classpath:mapper/*.xml

 

 

4.创建MapperXML

<?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.java.core.UserMapper">
    <select id="findByName" resultType="com.java.core.User">
        SELECT * FROM "User" WHERE NAME = #{name}
    </select>

    <insert id="insert">
        INSERT INTO "User"(NAME, AGE) VALUES(#{name}, #{age})
    </insert>

    <update id="update">
        UPDATE "User" SET age=#{age} WHERE name=#{name}
    </update>

    <delete id="delete">
        DELETE FROM "User" WHERE id =#{id}
    </delete>
</mapper>

 5.测试调用


@SpringBootTest
class CoreApplicationTests {

    @Autowired
    private UserMapper userMapper;


    @Test
    public void testUserController() throws Exception {

        // insert一条数据,并select出来验证
        userMapper.insert("AAA", 20);
        User u = userMapper.findByName("AAA");

        // update一条数据,并select出来验证
        u.setAge(30);
        userMapper.update(u);
        u = userMapper.findByName("AAA");

        // 删除这条数据,并select验证
        userMapper.delete(u.getId());
        u = userMapper.findByName("AAA");
}


http://www.niftyadmin.cn/n/1529410.html

相关文章

C# NET MVC 分页导出、打包导出、常规导出

前台调用导出代码 function BM1DataCheck() {loading layer.confirm(确定导出&#xff1f;, function (index) {var url "xxxx" new Date().getTime();layer.close(loading);loading layer.load(0, {shade: [0.1, #fff]});$.get(url, function (data) {layer.cl…

SAP财务凭证校验和替换

SAP财务凭证校验和替换前言一、凭证校验二、凭证替代1.GGB1建立替代和步骤替代步骤先决条件替换2.激活替代OBBH总结前言 财务模块一般在SPRO配置中预留一些增强的地方&#xff0c;有些是纯写代码如BADI E开头函数&#xff0c;这些使用起来影响较大&#xff0c;工作量也不小。这…

SAP接口集成-PO/PI FunctionLibrary和UDF篇

目录 一、ESR mapping的FunctionLibrary概况 二、新建FL 三、FL参数说明 四、FLJava对象解释&#xff08;java&#xff09; 一、ESR mapping的FunctionLibrary和UDF概况 1.Mapping函数概况 首先说说MM里面的函数&#xff0c;我们FunctionLibirary保存的就是java自定义函数…

000.IDE热部署

设置热部署后&#xff0c;java代码保存后会自动发布,静态资源文件等改动则需要重新启动&#xff0c;按以下配置设置即可

集成接口基础-http报文

近段时间跟PO较多&#xff0c;跟着一些大牛做项目&#xff0c;学到了很多细节问题和基础。找时间整理了下接口的报文相关内容。 一、HTTP请求报文&#xff1a; &#xff1c;request-line&#xff1e; //请求行 请求方法列&#xff1a;GET、POST、HEAD、PUT、DELETE、OPTIONS、…

000.SpringBoot项目分层以及遇到的坑

因学习过程中&#xff0c;子包名&#xff0c;没有带启动类的包名&#xff0c;导致很多组件丢失了默认要扫描路径&#xff0c;处理起来特别麻烦&#xff0c;各种修改组件的默认扫描路径&#xff0c;配置错误还各种报错&#xff0c;最后无奈了&#xff0c;只需要记住【启动类的包…

008.MyBatis实现多数据源

1.创建两个数据库 2.配置文件新增多数据源配置 server.port8080 #单数据源 #spring.datasource.urljdbc:postgresql://localhost:5432/javacore #spring.datasource.usernamepostgres #spring.datasource.passwordasdf-1234 #spring.datasource.driver-class-nameorg.postgresq…

009.SpringBoot整合MyBatis

注意点 API调用Servic&#xff0c;Service调用Mapper需要用Autowired&#xff0c;直接new的方式会获取不到mapper对象 API/Controller层 Service层 Mapper层 Model层 MapperXML