您的位置:首页 > 编程语言 > Java开发

spring data jpa-------Repository的继承关系和一些基本方法的应用

2019-07-09 14:12 363 查看

1 我们先看一下Repository的继承关系

在这个图片中继承关系一目了然。最顶层是Repository,不过这是一个空的接口。

2 测试Repository的方法。以 JpaRepository<T, ID>为例子:

保存方法:
User entity = new User();
entity.setId("2");
entity.setLoginTime("2019-7-9");
entity.setStatus("0");
entity.setToken(UUID.randomUUID().toString());
entity.setUserAccount("这是一个修改的数据");
User user = demoRespostiy.save(entity);
demoRespostiy.flush();
System.out.println(user.getId());
如果你的主键id是自动生成在这里设置id的值是无效的的
并且当你的主键id设置的值在数据库已经存在的话那么save方法先执行select * from  user where id=?  然后再执行update的操作。 update user set  字段
----------------------------------------------------------------------------------
带条件的查询,不带分页。在这里主要的工作就是构造出example的实例
Pageable pageable=PageRequest.of(1, 5);
User user2=new User();
user2.setLoginTime("fs");
Example<User> example=Example.of(user2);
List<User> users=userRespostiy.findAll(example);
users.stream().forEach(item->{
System.out.println(item.getId());
});
带条件的分页查询。在这里能够进行条件的分页查询。
Pageable pageable=PageRequest.of(0, 1);
User user2=new User();
user2.setLoginTime("fs");
Example<User> example=Example.of(user2);
Page<User> pageusers= userRespostiy.findAll(example,pageable);
List<User>  users=pageusers.getContent();
users.stream().forEach(item->{
System.out.println(item.getId());
});

批量删除
List<User> userlistList=new ArrayList<>();
User user=new User();
user.setId("1");
User user2=new User();
user2.setId("2");
userlistList.add(user2);
userlistList.add(user);
userRespostiy.deleteInBatch(userlistList);
userRespostiy.flush();
批量的增加
List<User> userlistList=new ArrayList<>();
User user=new User();
user.setId("1");
User user2=new User();
user2.setId("2");
userlistList.add(user2);
userlistList.add(user);
userRespostiy.saveAll(userlistList);
userRespostiy.flush();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: