当前位置: 首页 > news >正文

修改网站照片需要怎么做质监局网站建设总结

修改网站照片需要怎么做,质监局网站建设总结,网站被降权怎么恢复,流行的网站开发框架jpa批量保存,事务没提交Spring中的存储库和事务并存。 Spring中的所有数据库访问都应在事务内运行#xff0c;并且通常在某个地方使用Transactional来强制执行此操作。 但是#xff0c;这并不总是必需的。 例如#xff0c;当使用Spring Data时#xff0c;您的存储库使用Sim… jpa批量保存,事务没提交 Spring中的存储库和事务并存。 Spring中的所有数据库访问都应在事务内运行并且通常在某个地方使用Transactional来强制执行此操作。 但是这并不总是必需的。 例如当使用Spring Data时您的存储库使用SimpleJPARepository来实现CRUD功能。 SimpleJPARepository使用Transactional因此在执行CRUD操作时已经为您处理了事务。 这可能会给人以错误的印象即您不需要使用Transactional注释自己的类因为仅当您知道自己在做什么时这才是正确的。 考虑以下基于Spring Data的时间序列示例来管理汽车租赁 public CarRentalEntry createNewRental(Car car) {CarRentalEntry latestEntry carRentalRepository.findByCarId(car.getId());latestCarRentalEntry.setEndDate(LocalDate.now());CarRentalEntry newEntry new CarRentalEntry();newEntry.setCarId(car.getId())newEntry.setStartDate(LocalDate.now());newEntry.setEndDate(null);carRentalRepository.save(newEntry); } 在上面的示例中通过存储库获取了特定汽车的最新汽车租赁条目并结束了该租赁。 然后将创建并保存一个新的汽车租赁条目。 这在没有Transactional情况下将起作用因为carRentalRepository是一个处理事务的SimpleJPARepository 。 现在考虑以下在更改latestEntry的结束日期之前进行保存的latestEntry public CarRentalEntry createNewRental(Car car) { CarRentalEntry newEntry new CarRentalEntry();newEntry.setCarId(car.getId())newEntry.setStartDate(LocalDate.now());newEntry.setEndDate(null);carRentalRepository.save(newEntry);CarRentalEntry latestEntry carRentalRepository.findByCarId(car.getId());latestCarRentalEntry.setEndDate(LocalDate.now());} 从功能上讲方法完全相同但是在此示例中将仅执行保存 。 由于没有事务对latestEntry修改将不会保存到数据库中 为了使这种方法有效必须使用Transactional注释createNewRental() 。 如果JPA受管实体上的任何更改发生在正常JPA行为的事务中则仅自动保存它们。 所以问题是为什么第一种方法不需要交易。 实际上确实如此。 当latestEntry是通过存储库读取它被加入到persistanceContext JPAS的又名1级高速缓存 entityManager 。 当调用save()方法时它在事务提交时刷新了persistanceContext 这反过来又带来了副作用即还保留了修改后的latestEntry 。 在第二个示例中 persistanceContext latestEntry在调用save()时没有latestEntry 。 因为在方法完成时没有事务提交所以不会刷新更改。 通过添加Transactional 再次刷新persistanceContext 并将修改内容写入数据库。 请注意第二个示例也可以通过调用carRentalRepository.flush() Transactional 因为它也在Transactional下运行。 最重要的是您应该控制自己的事务因为这种情况表明容易出错。 最后是调试Hibernate和受管实体问题时的提示。 放置断点的良好候选类是 org.springframework.orm.jpa.JpaTransactionManager org.hibernate.jpa.internal.TransactionImpl.commit()将要刷新的持久性上下文通常在TransactionImpl.entityManager.session.persistenceContext找到 翻译自: https://www.javacodegeeks.com/2018/05/automatic-save-of-managed-jpa-entities-outside-of-transaction.htmljpa批量保存,事务没提交
http://www.huolong8.cn/news/79010/

相关文章:

  • 西安网站建设制作价格低展厅设计手绘图
  • 网站建设商标保护用户服务管理系统
  • 做网站找合作伙伴做网站制作怎么样
  • 小程序怎么生成厦门网站建设优化企业
  • 做视频网站怎么赚钱模拟炒股网站开发
  • 网站正在建设亚洲58同城深圳网站建设
  • 锦州制作网站公司wordpress小微商户支付
  • 旅游网站建设普通论文深圳建站公司 方网站
  • h5网站动画怎么做的100m光纤做网站
  • 打造对外宣传工作平台网站建设百度一下首页设为主页
  • wordpress在线支付株洲网站优化找哪家
  • 网站关键词不稳定谷歌seo是做什么的
  • 个人网站的建设流程网站开发研究热点
  • 建网站和建网店的区别做网站需要哪些人手
  • 忘记网站后台用户名wordpress列表显示文章
  • 大学生兼职网站策划书flash网站建设教程视频
  • 网站建设方案报价单wordpress正文底部版权信息
  • 网站 数据库龙岩市城乡建设局网站进不去
  • 公司做网站如何跟客户介绍什么网站能让小孩做算术题
  • 怎么让百度多收录网站沈阳做网站的公司有哪些
  • 制作大型网站电商网站多少钱
  • 对网站分析哈尔滨建站模板大全
  • 网站使用引导wordpress贴心插件
  • 思科中国网站开发案例php团购网站的难点
  • 济南集团网站建设报价scrm服务商
  • it培训网站重庆平台网站建设设计
  • 网站结构怎么做遂宁移动网站建设
  • 网站建设售后质量保证怎么给公司做推广
  • 往建设厅网站上传东西做公司网站排名
  • 池州网站开发怀柔 做网站的