最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

spring-data-jpa實現(xiàn)增刪改查以及分頁操作方法

 更新時間:2018年02月10日 09:58:54   作者:Smos  
下面小編就為大家分享一篇spring-data-jpa實現(xiàn)增刪改查以及分頁操作方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

有幾個坑一定要注意:

實現(xiàn)刪除操作的時候一定要在各層類中 增加

@Transactional

注釋,否則會一直報錯

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

以下是部分代碼:

//Repository

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

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

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實現(xiàn)增刪改查以及分頁操作方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java實戰(zhàn)在線選課系統(tǒng)的實現(xiàn)流程

    Java實戰(zhàn)在線選課系統(tǒng)的實現(xiàn)流程

    讀萬卷書不如行萬里路,只學(xué)書上的理論是遠遠不夠的,只有在實戰(zhàn)中才能獲得能力的提升,本篇文章手把手帶你用java+SSM+jsp+mysql+maven實現(xiàn)一個在線選課系統(tǒng),大家可以在過程中查缺補漏,提升水平
    2021-11-11
  • Mybatis plus的自動填充與樂觀鎖的實例詳解(springboot)

    Mybatis plus的自動填充與樂觀鎖的實例詳解(springboot)

    這篇文章主要介紹了Mybatis plus的自動填充與樂觀鎖的實例詳解(springboot),本文給大家介紹的非常詳細對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-11-11
  • Java日常練習(xí)題,每天進步一點點(24)

    Java日常練習(xí)題,每天進步一點點(24)

    下面小編就為大家?guī)硪黄狫ava基礎(chǔ)的幾道練習(xí)題(分享)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧,希望可以幫到你
    2021-07-07
  • Java 中 Map 集合的三種遍歷方式小結(jié)

    Java 中 Map 集合的三種遍歷方式小結(jié)

    這篇文章主要介紹了Java 中 Map 集合的三種遍歷方式,每種遍歷方式結(jié)合示例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-12-12
  • SpringBoot中的HATEOAS詳情

    SpringBoot中的HATEOAS詳情

    這篇文章主要介紹了SpringBoot中的HATEOAS詳情,SpringBoot提供了HATEOAS的便捷使用方式,文章圍繞主題展開詳細介紹內(nèi)容,需要的小伙伴可以參考一下
    2022-05-05
  • Java語言實現(xiàn)簡單FTP軟件 FTP遠程文件管理模塊實現(xiàn)(10)

    Java語言實現(xiàn)簡單FTP軟件 FTP遠程文件管理模塊實現(xiàn)(10)

    這篇文章主要為大家詳細介紹了Java語言實現(xiàn)簡單FTP軟件,F(xiàn)TP遠程文件管理模塊的實現(xiàn)方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-04-04
  • Java后端面試題最新整理

    Java后端面試題最新整理

    在本篇文章里小編給大家整理了一篇關(guān)于Java后端面試題最新整理內(nèi)容,需要的朋友們可以參考下。
    2020-12-12
  • Mybatis實現(xiàn)增刪改查

    Mybatis實現(xiàn)增刪改查

    這篇文章主要介紹了Mybatis實現(xiàn)增刪改查,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-01-01
  • 詳解在Spring中如何自動創(chuàng)建代理

    詳解在Spring中如何自動創(chuàng)建代理

    這篇文章主要介紹了詳解在Spring中如何自動創(chuàng)建代理,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07
  • java實現(xiàn)簡單登錄界面的實戰(zhàn)過程

    java實現(xiàn)簡單登錄界面的實戰(zhàn)過程

    學(xué)習(xí)JAVA的過程當中,登陸界面是多數(shù)人第一個實現(xiàn)的小程序,下面這篇文章主要給大家介紹了關(guān)于利用java實現(xiàn)簡單登錄界面的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-05-05

最新評論

奎屯市| 略阳县| 奎屯市| 宜春市| 平武县| 平昌县| 台东市| 双桥区| 施甸县| 涡阳县| 荥阳市| 华容县| 北宁市| 新河县| 噶尔县| 通辽市| 台南县| 惠州市| 揭西县| 湘乡市| 汝州市| 伊金霍洛旗| 宝坻区| 马龙县| 巢湖市| 清苑县| 柳江县| 寻乌县| 天水市| 咸丰县| 新沂市| 呈贡县| 萍乡市| 延安市| 平南县| 吉林市| 阳西县| 娱乐| 荥阳市| 澄江县| 长海县|