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

SpringBoot2 JPA解決懶加載異常的問題

 更新時間:2021年01月29日 11:06:49   作者:易水墨龍吟  
這篇文章主要介紹了SpringBoot2 JPA解決懶加載異常的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

jpa解決懶加載異常

在我上一遍文章上進行行修改,SpringBoot2 實現(xiàn)JPA分頁和排序分頁

實體類上改:

@Entity
@Table(name = "employee")
@JsonIgnoreProperties(value={"hibernateLazyInitializer", "department"})
public class Employee {
 @Id
 @GeneratedValue(strategy = GenerationType.IDENTITY)
 private Integer empId;
 private String lastName;
 private String email;
 @Temporal(TemporalType.DATE)
 private Date birth;
 @Temporal(TemporalType.TIMESTAMP)
 private Date createTime;
 @ManyToOne(fetch = FetchType.LAZY)
 @JoinColumn(name = "dept_id")
 private Department department;
 public Integer getEmpId() {
  return empId;
 }
 public void setEmpId(Integer empId) {
  this.empId = empId;
 }
 public String getLastName() {
  return lastName;
 }
 public void setLastName(String lastName) {
  this.lastName = lastName;
 }
 public String getEmail() {
  return email;
 }
 public void setEmail(String email) {
  this.email = email;
 }
 public Date getBirth() {
  return birth;
 }
 public void setBirth(Date birth) {
  this.birth = birth;
 }
 public Date getCreateTime() {
  return createTime;
 }
 public void setCreateTime(Date createTime) {
  this.createTime = createTime;
 }
 public Department getDepartment() {
  return department;
 }
 public void setDepartment(Department department) {
  this.department = department;
 }
}

控制器驗證

import java.util.Iterator;
@RestController
public class EmployeeController {
 @Autowired
 private EmployeeService employeeService;
 @GetMapping("/emp")
 public Page<Employee> showPage(@RequestParam(value = "page") Integer page, @RequestParam(value = "size") Integer size){
  System.out.println("分頁: page:"+page+"; size:"+size);
  return employeeService.getPage(page, size);
 }
 @GetMapping("/emp_sort")
 public Page<Employee> showSortPage(@RequestParam(value = "page") Integer page, @RequestParam(value = "size") Integer size){
  System.out.println("排序分頁: page:"+page+"; size:"+size);
  Page<Employee> list = employeeService.getPageSort(page, size);
  Iterator<Employee> it=list.iterator();
  while(it.hasNext()){
   System.out.println("value:"+(it.next()).getDepartment().getDeptName());
  }
  return list;
 }
}

我大概實現(xiàn)了一下,具體的如果大佬找到更好的方法或者發(fā)現(xiàn)我的方法是錯的,希望各位大佬提醒一下!感謝!

補充:SpringBoot jpa 使用懶加載時,報異常:session失效

報異常:

could not initialize proxy - no Session

1、在方法上加@Transactional 注解,失敗

2、在application.yml 文件加上jpa.properties.open-in-view: true 失敗

3、在ResourceServerApplication.java 啟動文件中加上:

 @Bean
 public OpenEntityManagerInViewFilter openEntityManagerInViewFilter() {
   return new OpenEntityManagerInViewFilter();
 }

成功解決~

總結(jié):

要解決no session 問題需要:

配置文件中加jpa.properties.open-in-view: true同時在啟動文件中加@Bean

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

相關(guān)文章

最新評論

屯昌县| 昌图县| 岫岩| 怀宁县| 仙桃市| 乌苏市| 酒泉市| 绵阳市| 长寿区| 南靖县| 海宁市| 交口县| 阿克陶县| 阜南县| 克东县| 鲜城| 榆中县| 亚东县| 乳山市| 鱼台县| 垣曲县| 沐川县| 抚顺市| 平罗县| 威远县| 西乌珠穆沁旗| 栾城县| 新蔡县| 承德市| 长沙市| 克山县| 兴海县| 伊春市| 松滋市| 河东区| 盐城市| 封开县| 克山县| 池州市| 忻城县| 台湾省|