当前位置:首页 > JAVA > 正文内容

springboot、MyBatis-Plus、hana数据库模型查询的处理

高老师2年前 (2023-01-04)JAVA513

hana数据库查询语句如下:

SELECT  *  FROM   "_SYS_BIC"."ellassay.public/AT_DIM_SAP_DEPOT_ALL_NEW_JTBB"  WHERE DEPOTID_JTBB ='S2351001'

想通过

@TableName(" \"_SYS_BIC\".\"ellassay.public/AT_DIM_SAP_DEPOT_ALL_NEW_JTBB\"")

进行查询,结果全部是null,于是通过自定xml进行查询

(1).创建xml

src/main/resources/mapper/AtDimSapDepotAllNewJtbb.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.learn.mapper.AtDimSapDepotAllNewJtbbMapper">
    <select id="getList" resultType="com.learn.entity.AtDimSapDepotAllNewJtbb">
        SELECT  *  FROM   "_SYS_BIC"."ellassay.public/AT_DIM_SAP_DEPOT_ALL_NEW_JTBB" 
    </select>
</mapper>

(2).创建实体

package com.learn.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;

@TableName(" \"_SYS_BIC\".\"ellassay.public/AT_DIM_SAP_DEPOT_ALL_NEW_JTBB\"")
public class AtDimSapDepotAllNewJtbb {

    @TableField("PP")
    public String PP;


    public String getDEPOT_NAME() {
        return DEPOT_NAME;
    }

    public void setDEPOT_NAME(String DEPOT_NAME) {
        this.DEPOT_NAME = DEPOT_NAME;
    }

    @TableField("DEPOT_NAME")
    public String DEPOT_NAME;
}

(3).创建mapper

package com.learn.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.learn.entity.AtDimSapDepotAllNewJtbb;
import org.apache.ibatis.annotations.Param;
import org.apache.poi.ss.formula.functions.T;
import org.springframework.stereotype.Component;

import java.util.List;

@Component
public interface AtDimSapDepotAllNewJtbbMapper extends BaseMapper<AtDimSapDepotAllNewJtbb> {
    List<AtDimSapDepotAllNewJtbb> getList();
}

(4).配置mybatis_pus

mybatis-plus:
  mapper-locations: classpath:mapper/*.xml
  configuration:
    map-underscore-to-camel-case: false

(5).进行查询

List<AtDimSapDepotAllNewJtbb>  monthTargetDepot1 =  atDimSapDepotAllNewJtbbMapper.getList();

其实是支持TableName转义字符串进行查询的,之所以查询的结果为null是因为没有关闭自动驼峰转换的原因, map-underscore-to-camel-case: false,这导致了 @TableField("nickname")注解失效了

扫描二维码推送至手机访问。

版权声明:本文由高久峰个人博客发布,如需转载请注明出处。

本文链接:https://blog.20230611.cn/post/420.html

分享给朋友:

“springboot、MyBatis-Plus、hana数据库模型查询的处理” 的相关文章

 java字节与字符的区别,字节与字的区别与联系

java字节与字符的区别,字节与字的区别与联系

字节(Byte)是计量单位,表示数据量多少,是计算机信息技术用于计量存储容量的一种计量单位,通常情况下一字节等于八位。字符(Character)计算机中使用的字母、数字、字和符号,比如'A'、'B'、'$'、'&'等。一般在英文...

java final 修饰符,java通过final修饰符创建常量,,java通过final修饰符声明方法不可被修改

java final 修饰符,java通过final修饰符创建常量,,java通过final修饰符声明方法不可被修改

(1).final 修饰符通常和 static 修饰符一起使用来创建类常量。(2).父类中的 final 方法可以被子类继承,但是不能被子类重写,声明 final 方法的主要目的是防止该方法的内容被修改。public class Member {   ...

java Character 类,java判断字符是否是一个字母,java判断字符是否是一个数字,java判断字符是否是一个空白,java判断字符是否是小写字母,java判断字符是否是大写字母,java转换字符为大写,java转换字符为小写

java Character 类,java判断字符是否是一个字母,java判断字符是否是一个数字,java判断字符是否是一个空白,java判断字符是否是小写字母,java判断字符是否是大写字母,java转换字符为大写,java转换字符为小写

java判断字符是否是一个字母System.out.println(Character.isLetter('a'));java判断字符是否是一个数字System.out.println(Character.isDigit('0'));java判断字符是否是一个空白Sy...

java获取时间戳,java时间戳获取

java获取时间戳,java时间戳获取

System.out.println("当前时间戳(秒): " + System.currentTimeMillis()/1000); System.out.println("当前时间戳(毫秒): " +&nb...

java方法重载

java方法重载

(7).java方法重载一个类的两个方法拥有相同的名字,但是有不同的参数列表,叫做方法重载,例如public static int sum(int a, int b) {     retur...

java命令行传参,java从命令行接收参数

java命令行传参,java从命令行接收参数

java命令行传参,java从命令行接收参数public static void main(String[] args) {     for (int i = 0;&nb...