JPA笔记

由于并没有系统的学习JPA,但是目前还在用,所以临时做了个随笔

普通查询,不带条件,带排序

// 注意排序字段是entity里的字段,驼峰表示的,而不是表中下划线标识的字段
Sort sort = Sort.by(Sort.Order.desc("排序字段"));
xxxDao.findAll(sort);

分页查询,带条件,带排序,下面的示例是模糊查询name和nikname

public class User{
	private String name;
	private String nikname;
	// 省略get set
}
User user=new User();
// 如果查询第1页,则当前第几页=0
// 如果不需要排序,可直接调用另外一个不带排序的重载方法
Pageable pageable = PageRequest.of(当前第几页, 每页多少条, 排序);
ExampleMatcher em = ExampleMatcher.matching()
        .withMatcher("name", ExampleMatcher.GenericPropertyMatchers.contains())
        .withMatcher("nikname", ExampleMatcher.GenericPropertyMatchers.contains());
Example<User> example = Example.of(user, em);
return jpaBrandDao.findAll(example, pageable).toList();

使用原生sql:upda语句必须加@Modifying

// ?1对应第一个参数,?2对应第二个参数
// 注意如果不加nativeQuery = true,则列必须是entity中的字段(驼峰)
@Modifying
@Query(value = "update 表 set 列='新值' where 列 = ?1 and 列 = ?2", nativeQuery = true)
void updateSql(String 参数1,String 参数2);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值