一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|JavaScript|易語言|

服務器之家 - 編程語言 - JAVA教程 - spring-data-jpa實現增刪改查以及分頁操作方法

spring-data-jpa實現增刪改查以及分頁操作方法

2021-04-04 14:21Smos JAVA教程

下面小編就為大家分享一篇spring-data-jpa實現增刪改查以及分頁操作方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

有幾個坑一定要注意:

實現刪除操作的時候一定要在各層類中 增加

?
1
@Transactional

注釋,否則會一直報錯

在自己使用@Query定義操作時,會碰到編譯器報錯,這個時候只需要禁用QL的語法檢查即可

以下是部分代碼:

//Repository

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
package com.example.myproject.dao;
import com.example.myproject.domain.User;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Modifying;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import javax.transaction.Transactional;
import java.util.List;
/**
 * Created by lenovo on 2017/4/19.
 */
@Transactional
public interface UserRepository extends JpaRepository<User,Long> {
 
  void deleteById(int id);
  void deleteByName(String name);
  void deleteBySex(String sex);
  void deleteByAge(int age);
  void removeByNameAndAge(String name, int age);
  @Modifying
  @Query(value = "update user u set u.name = :newName where u.name = :oldName",nativeQuery = true)
  void updateNameByName(@Param("oldName") String oldName, @Param("newName") String newName);
  List<User> findAll();
  Page<User> findAll(Pageable pageable);
  List<User> findByName(String name);
  List<User> findBySex(String sex);
  List<User> findByAge(int age);
  User findByNameAndSex(String name, String sex);
}

//Controller

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
package com.example.myproject.web;
 
import com.example.myproject.dao.UserRepository;
import com.example.myproject.domain.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.Sort;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
 
import javax.transaction.Transactional;
import java.util.List;
 
/**
 * Created by lenovo on 2017/4/19.
 */
@RestController
@RequestMapping("/")
@Transactional
public class UserController {
 @Autowired
 private UserRepository userRepository;
 
 @RequestMapping(value = "/userSave")
 public String userSave(@RequestParam String name,@RequestParam String sex,@RequestParam int age) {
  User user = new User();
  user.setName(name);
  user.setAge(age);
  user.setSex(sex);
  userRepository.save(user);
  return "true";
 }
 
 @RequestMapping(value = "/deleteById")
 public String deleteById(@RequestParam int id) {
  userRepository.deleteById(id);
  return "success";
 }
 
 @RequestMapping(value = "/deleteByName")
 public String deleteByName(@RequestParam String name) {
  userRepository.deleteByName(name);
  return "success";
 }
 
 @RequestMapping(value = "/deleteBySex")
 public String deleteBySex(@RequestParam String sex) {
  userRepository.deleteBySex(sex);
  return "success";
 }
 
 @RequestMapping(value = "/deleteByAge")
 public String deleteByAge(@RequestParam int age) {
  userRepository.deleteByAge(age);
  return "success";
 }
 
 @RequestMapping(value = "/deleteByNameAndAge")
 public String deleteByNameAndAge(@RequestParam String name, @RequestParam int age) {
  userRepository.removeByNameAndAge(name,age);
  return "success";
 }
 
 @RequestMapping(value = "/updateNameByName")
 public String updateNameByName(@RequestParam String oldName, @RequestParam String newName) {
  userRepository.updateNameByName(oldName,newName);
  return "success";
 }
 
 @RequestMapping(value = "/findall")
 public List<User> findAll() {
  List<User> l =userRepository.findAll();
  return l;
 }
 
 @RequestMapping(value = "/findallByPage")
 public Page<User> findAllByPage() {
  Sort sort = new Sort(Sort.Direction.ASC,"id");
  Pageable pageable = new PageRequest(2,6,sort);
  Page<User> page = userRepository.findAll(pageable);
  return page;
 }
 
 @RequestMapping(value = "/findByName")
 public List<User> findByName(@RequestParam String name) {
  List<User> list =userRepository.findByName(name);
  return list;
 }
 
 @RequestMapping(value = "/findByAge")
 public List<User> findByAge(@RequestParam int age) {
  List<User> list =userRepository.findByAge(age);
  return list;
 }
 
 @RequestMapping(value = "/findBySex")
 public List<User> findBySex(@RequestParam String sex) {
  List<User> list =userRepository.findBySex(sex);
  return list;
 }
 
 @RequestMapping(value = "/findByNameAndSex")
 public User findByNameAndSex(@RequestParam String name, @RequestParam String sex) {
  User list =userRepository.findByNameAndSex(name,sex);
  return list;
 }
}

//User

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
package com.example.myproject.domain;
import javax.persistence.*;
/**
 * Created by lenovo on 2017/4/19.
 */
@Entity
public class User {
 @Id
 @GeneratedValue()
 private Integer id;
 @Column
 private String name;
 @Column
 private String sex;
 @Column
 private int age;
 public Integer getId() {
  return id;
 }
 public String getName() {
  return name;
 }
 public void setName(String name) {
  this.name = name;
 }
 public String getSex() {
  return sex;
 }
 public void setSex(String sex) {
  this.sex = sex;
 }
 public int getAge() {
  return age;
 }
 public void setAge(int age) {
  this.age = age;
 }
}

以上這篇spring-data-jpa實現增刪改查以及分頁操作方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持服務器之家。

原文鏈接:http://blog.csdn.net/m0_37770300/article/details/70244517

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 成人影院观看 | 无码AV免费精品一区二区三区 | 国产亚洲精品网站 | 国产人成77777视频网站 | 青青五月天 | 亚洲 国产精品 日韩 | 国产成人刺激视频在线观看 | 久久久GOGO无码啪啪艺术 | 久久久久久久久性潮 | 日本在线一区二区 | 亚洲精品国精品久久99热 | 亚洲精品视频观看 | 91香蕉国产视频 | 日本特级a禁片在线播放 | 成人在线视频播放 | 男男浴室吸乳play | 欧美专区在线观看 | chinese帅男gayvideo | 视频在线观看入口一二三2021 | 69日本人| 精品第一国产综合精品蜜芽 | 国产一级真人毛爱做毛片 | 精品国产一区二区三区久久久蜜臀 | 好姑娘在线观看完整版免费 | 久久伊人在 | 国产成人精品男人的天堂538 | 国产小视频网站 | 我们日本在线观看免费动漫下载 | 香蕉久久一区二区不卡无毒影院 | 热门小说同人h改编h | 亚洲AV久久无码精品九号软件 | 成年女人毛片免费观看中文w | 成全动漫视频在线观看 | 99热精品在线观看 | 美女禁区视频免费观看精选 | 欧美日韩精品乱国产538 | 性bbbb妇女激情 | 奇米色7777| 胸奶好大好紧好湿好爽 | 人人擦| 香蕉国产人午夜视频在线观看 |