「已注销」 2019-10-27 04:08 采纳率: 100%
浏览 3673
已结题

有关于JPA和MybatisPlus的问题。

有关于 JPA 和 Mybatis Plus的问题

问题背景描述

  1. 确定数据库字段和其所对应的实体类字段一致。例如:DB(mem_name),Class(memName)
  2. 用于数据库操作的表,以下简称A表。A表中主键id,名称是id,类型varchar,不为NULL。
  3. 我实体类定义如下:
// A就是A表对应的实体类
@Data
@TableName("A")
public class A extends BaseClass {
   .........
}

@Data
public abstract class BaseEntity {

    @TableId(value = "id")
    private String id ;//id在application.yml中是UUID的
    .......
}

问题:
1. 当使用 Mybatis Plus时:
1.1 利用SQL注解,BaseMapper.selectByID,通过Mapper.XML进行查询一行记录,在ServiceImpl的Test测试方法中可以查询出我需要的记录,而通过Controller进行调用Service方法来获取记录,但是SQL已经执行了。就无法查出,但是新增是可以向A表进行插入数据。
为什么通过Controller调用Service的方法,方面内部:selectByID或以上3中方式之一,就无法查询出数据.

  1. 当使用 JPA 时:
// A就是A表对应的实体类
@Data
@Entity
@TableName("A")
public class A extends BaseClass {
        @Id
    @TableId(value = "id")
    private String id ;
   .........
}

@Data
public abstract class BaseEntity {

    .......
}

2.1 你看的没错,我就是把注解放到原有的MyBatis Plus上面,但是调整id位置了,我放到A类中,同样,可以测试查询,放到tomcat中,就无法用请求->controller->service->repository来查询所需数据?

MyBatis-Plus:selectById()无法查询
JAP:findOne(id) 无法查询
都无法放到tomcat中,用请求的方式进行查询,测试都能过!

不明白。求赐教!

  • 写回答

1条回答

  • Json-Huang 2019-10-27 10:21
    关注

    新增可以,而查询不行说明查询传递的id参数有问题,看看是不是类型有转换或者参数名称不一致?

    评论

报告相同问题?

悬赏问题

  • ¥15 求解答一道线性规划题,用lingo编程运行,第一问要求写出数学模型和lingo语言编程模型,第二问第三问解答就行,我的ddl要到了谁来求了
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥15 maple软件,用solve求反函数出现rootof,怎么办?
  • ¥65 汇编语言除法溢出问题
  • ¥15 Visual Studio问题
  • ¥20 求一个html代码,有偿
  • ¥100 关于使用MATLAB中copularnd函数的问题
  • ¥20 在虚拟机的pycharm上
  • ¥15 jupyterthemes 设置完毕后没有效果