用Eclipse Europa进行Web开发,第1部分 - Eclipse Java EE - 编程入门网
多么痛苦。通常涉 及创建大量 JDBC 代码或人工编写的长串 SQL 字符串,还涉及用许多接口创建 实体 EJB 并编写部署描述符。那种日子已经一去不复返,这要归功于 EJB V3.0 和 JPA 的出现。现在不但 EJB 易于使用,而且无需使用重量级应用服务器就可 以使用它们。
Java EE for Eclipse 可以充分支持 JPA。甚至还提供了 JPA 透视图。要切 换到该透视图,请选择 Window > Open Perspective > Other 并选择 JPA Development。 图 32. 打开 JPA 开发透视图 要创建域模型,只需创建简单的 Java 类。首先为 Players 表创建一个名为 org.developerworks.baseball.Player 的类。该类的代码如清单 5 所示: 清单 5. Player 类
您将需要此类的 getter 和 setter。幸运的是,Eclipse 使这一切变得十分 简单。选择 Source > Generate Getters and Setters。 图 33. 生成代码 用Eclipse Europa进行Web开发,第1部分 - Eclipse Java EE(12)时间:2010-11-29 IBM Michael Galpin此操作将打开 Generate Getters and Setters 对话框。单击 Select All 和 OK。 图 34. 生成 getter 和 setter 得到的代码如清单 6 所示: 清单 6. 带有 getter 和 setter 的 Player 类
要把类与数据库表关联起来,请在 JPA Structure 窗口中单击 Player 类。 图 35. JPA 结构 用Eclipse Europa进行Web开发,第1部分 - Eclipse Java EE(13)时间:2010-11-29 IBM Michael Galpin在 JPA Details 中,选择 Map As > Entity。 图 36. JPA 详细信息 在 Table 部分中,选择模式,并且可以在 Name 下拉框中选择 Players 表 。 图 37. 指定表 此操作应当会使代码发生更改。 图 38. 生成的 player 代码 在 Package Explorer 中选择 persistence.xml 文件,右键单击该文件,然 后选择 JPA Tools > Synchronize Classes。 图 39. 与数据库同步 此操作将使 Eclipse 针对数据库验证代码。您将注意到自己的代码无效。 图 40. 无效的 Player 类 用Eclipse Europa进行Web开发,第1部分 - Eclipse Java EE(14)时间:2010-11-29 IBM Michael Galpin这是怎么回事?看看 Problems 窗口。 图 41. Problems 窗口 第一个问题是我们的类未指定主键。要解决此问题,请在 JPA Structure 窗 口中单击 Id 属性。在 JPA Details 窗口中,选择 Map As > Id。 图 42. ID 属性的 JPA 详细信息 另请注意,由于 ID 列已设置为自动累加的列,因此需要指定主键使用 Identity 键生成策略。如果再执行一次 JPA 同步,就应当会看到已经解决了一 个问题。 其他问题源自 JPA 不能把 firstName 和 lastName 字段映射到 Players 表 的列中。那是因为 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |