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

北京pk10做号网站官方网站怎么写

北京pk10做号网站,官方网站怎么写,怎么收录网站,wordpress菜单默认对游客不显示jpa语法错误根据我在帮助团队和进行培训方面的经验#xff0c;这是我遇到的一些陷阱/错误#xff0c;它们在使用JPA的基于Java的系统中引起了一些问题。 需要一个公共的无参数构造函数 始终使用双向关联/关系 将OneToMany用于可能庞大的集合 需要一个公共的无参数构造函数… jpa语法错误 根据我在帮助团队和进行培训方面的经验这是我遇到的一些陷阱/错误它们在使用JPA的基于Java的系统中引起了一些问题。 需要一个公共的无参数构造函数 始终使用双向关联/关系 将OneToMany用于可能庞大的集合 需要一个公共的无参数构造函数 是的JPA Entity需要零参数或默认的无参数构造函数。 但这可以得到protected 。 您不必将其public 。 这样就可以实现更好的面向对象的建模因为您不必强制使用可公开访问的零参数构造函数。 实体类必须具有无参数构造函数。 实体类也可以具有其他构造函数。 no-arg构造函数必须是public 或protected 。 [强调我的] –摘自Java Persistence API 2.1规范Oracle的2.1节 如果要建模的实体在创建时有一些字段需要初始化则应通过其构造函数来完成。 注意一些JPA提供程序可以通过在构建时添加一个无参数的构造函数来克服缺失的无参数构造函数。 假设我们正在建模酒店房间预订系统。 在其中我们可能有诸如房间预订等之类的实体。预订实体可能需要开始日期和结束日期因为没有停留时间来创建一个预订实体就没有多大意义。 在保留的构造函数中将开始日期和结束日期作为参数包括在内将可以提供更好的模型。 保留受保护的零参数构造函数会使JPA满意。 Entity public class Reservation { ...public Reservation(RoomType roomType, DateRange startAndEndDates) {if (roomType null || startAndEndDates null) {throw new IllegalArgumentException(...);} ...}...protected Reservation() { /* as required by ORM/JPA */ } } 注意 HibernateJPA提供程序允许将零参数构造函数设为私有。 这使您的JPA代码不可移植到其他JPA提供程序。 它还有助于在零参数构造函数中添加注释以表明它是出于JPA目的技术基础结构而添加的并且不是域所必需的业务规则/逻辑。 尽管我在JPA 2.1规范中找不到它但可嵌入类也需要一个默认无参数构造函数。 就像实体一样可以将必需的无参数构造函数设为protected 。 Embeddable public class DateRange { ...public DateRange(Date start, Date end) {if (start null || end null) {throw new IllegalArgumentException(...);}if (start.after(end)) {throw new IllegalArgumentException(...);} ...}...protected DateRange() { /* as required by ORM/JPA */ } } DDD示例项目还通过将no-arg构造函数设置为包范围来隐藏no-arg构造函数请参阅Cargo实体类其中no-arg构造函数位于底部附近。 始终使用双向关联/关系 JPA上的教学材料通常显示出双向关联。 但这不是必需的。 例如假设我们有一个包含一个或多个项目的订单实体。 Entity public class Order {Id private Long id;OneToMany private ListOrderItem items;... }Entity public class OrderItem {Id private Long id;ManyToOne private Order order;... } 很高兴知道JPA支持双向关联。 但是实际上这成为维护的噩梦。 如果订单项不必知道其父订单对象则单向关联就足够了如下所示。 ORM只需要知道如何命名多边表中的外键列。 通过在关联的一侧添加JoinColumn批注来提供此功能。 Entity public class Order {Id Long id;OneToManyJoinColumn(nameorder_id, ...)private ListOrderItem items;... }Entity public class OrderItem {Id private Long id;// ManyToOne private Order order;... } 由于OrderItem不再需要保留对Order实体的引用因此使其变得单向变得更容易。 请注意有时可能需要双向关联。 实际上这种情况很少见。 这是另一个例子。 假设您有几个引用国家/地区实体的实体例如人的出生地邮寄地址等。 显然这些实体将引用国家实体。 但是国家是否必须引用所有这些不同的实体 很有可能不是。 Entity public class Person {Id Long id;ManyToOne private Country countryOfBirth;... }Entity public class PostalAddress {Id private Long id;ManyToOne private Country country;... }Entity public class Country {Id ...;// OneToMany private ListPerson persons;// OneToMany private ListPostalAddress addresses; } 所以仅仅因为JPA支持双向关联 并不意味着你必须 使用 假设您正在建模银行帐户及其交易。 随着时间的流逝一个帐户可以进行数千甚至数百万笔交易。 Entity public class Account {Id Long id;OneToManyJoinColumn(nameaccount_id, ...)private ListAccountTransaction transactions;... }Entity public class AccountTransaction {Id Long id;... } 对于只有少量交易的帐户似乎没有任何问题。 但是随着时间的流逝当一个帐户包含成千上万个如果不是上百万个交易时您很可能会遇到内存不足的错误。 那么有什么更好的映射方法呢 如果不能确保关联的多面中的最大元素数都可以全部加载到内存中则最好在ManyToOne的另一侧使用ManyToOne 。 Entity public class Account {Id Long id;// OneToMany private ListAccountTransaction transactions;... }Entity public class AccountTransaction {Id Long id;ManyToOneprivate Account account;...public AccountTransaction(Account account, ...) {...}protected AccountTransaction() { /* as required by ORM/JPA */ } } 要检索一个帐户可能数千如果不是几百万的交易请使用支持分页的存储库。 Transactional public interface AccountTransactionRepository {PageAccountTransaction findByAccount(Long accountId, int offset, int pageSize);... } 要支持分页请使用Query对象的setFirstResult(int)和setMaxResults(int)方法。 摘要 我希望这些说明可以帮助开发人员避免犯这些错误。 总结一下 要求公众。 JPA要求的无参数构造函数可以设为public或protected 。 如果需要可以考虑对其进行protected 。 一直使用 考虑单向而不是双向关联/关系。 使用 避免使用OneToMany收集可能庞大的集合。 考虑ManyToOne映射关联/关系的ManyToOne端并支持分页。 翻译自: https://www.javacodegeeks.com/2016/02/jpa-pitfalls-mistakes.htmljpa语法错误
http://www.pierceye.com/news/655242/

相关文章:

  • 半路出家去学计算机网站开发团购做的好的网站
  • 没有网站怎么做CPC模板网站一天建好
  • 淘客网站模版北京网站优化指导
  • 网站域名更改后怎么做映射石家庄新闻主持人
  • 网站报404错误怎么解决办法禹城市建设局网站
  • asp网站建设运用的技术哪里有做商城的网站
  • 沈阳的网站制作公司哪家好七七鱼竞价托管
  • 网站如何做流量赚钱地推公司
  • 众筹网站建设需要多少资金知己图书网站建设策划书
  • 开源房产网站源码网站建设需要数学
  • 网站建设云技术公司推荐企业内部管理软件
  • 网站建设与维护案列北京梵客装饰
  • 网站建设电销话术海口h5建站
  • 网站建设怎么搭建服务器梧州本地网站
  • 佛山哪个做网站的好天津建设工程信息网怎么报名的
  • 专注扬中网站建设无锡免费建设网站
  • 中国建设银行门户网站企业wordpress如何禁止注册
  • 网站 模块wordpress极简风
  • 驻马店网站制作建筑施工特种证书查询入口官网
  • 四川网站建设公司电话网站的空间和域名备案
  • 海南网站建设方案django和WordPress哪个好
  • 已经有域名如何做网站手机优化加速有什么用
  • ps手机网站制作wordpress 嵌入pdf
  • 免费微网站建站系统源码网站登录流程
  • 有声直播网站建设做网站互联网公司排名
  • 如何判断网站是用什么程序做的网站建设岗位能力评估表
  • 怀来住房和城乡建设局网站可以下载的建站网站
  • 太原网站制作电话php网站作业模版
  • 网站建设 需求江西省赣州市南康家具城
  • 可以玩小游戏的网站百度地图推广电话