jpa使用小结

1、查询

在查询的时候,如果你查询的结果为list<a>,a是一个对象,这个时候查出来的是这个对象的所有属性的值,如下

select * from 表名 where 条件

但是你只想要这个对象的一部分属性,那list的泛型就不能是对象,可以是String[],即list<String[]>

这样就可以写成如下

select name from 表名 where 条件

list<String[]>转换为list<a>

 for (String[] values : stringArrayList) {
               //创建对象
                CustomObject customObject = new CustomObject();
                //根据下标进行赋值,这里的下标的值根据select 后的字段顺序
                customObject.setProperty1(values[0]);
                customObject.setProperty2(values[1]);
                customObjectList.add(customObject);
         
        }

 

动态查询:

生成的对象.findAll(查询的对象).where(
               对象某个属性值.equals("")?查询条件给的值:null
        );

 需要自己写查询语句的时候,nativeQuery = true 不能少

@Query(value="sql语句",nativeQuery = true)

list<a> findbyId((@Param("a") A a);

2、增删改

@Transactional(), @Modifying() 这两个注解不能少

@Transactional()
    @Modifying()
    @Query(value="sql语句",,nativeQuery = true)

int updateData(@Param("a") A a)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值