「Java开发指南」如何在MyEclipse中使用JPA和Spring管理事务?(一)
  OQk9axLgKw38 2023年11月02日 28 0

本教程中介绍一些基于JPA/ spring的特性,重点介绍JPA-Spring集成以及如何利用这些功能。您将学习如何:

  • 为JPA和Spring设置一个项目
  • 逆向工程数据库表来生成实体
  • 实现创建、检索、编辑和删除功能
  • 启用容器管理的事务
1. 用JPA和Spring Facets创建一个Java项目

将JPA和Spring功能添加到Java或Web项目中是很常见的,本教程使用一个Java项目来演示这些技术的工作原理。

注意:您可以下载本教程中开发的项目,并将其导入到您的工作区中。

(1)创建一个名为SampleJPASpringProject的示例Java项目,并向其中添加JPA facet 

(2)右键单击该项目,然后选择MyEclipse>Project Facets>Install Spring Facet

(3)单击Next来接受Spring版本和运行时默认值。

「Java开发指南」如何在MyEclipse中使用JPA和Spring管理事务?(一)_逆向工程

设置Spring版本和目标运行时

(4)MyEclipse为您创建了一个新的applicationContext.xml文件,点击Next。

「Java开发指南」如何在MyEclipse中使用JPA和Spring管理事务?(一)_逆向工程_02

设置bean配置

(5)注意Add Spring-JPA支持复选框,它告诉MyEclipse在这个JPA项目中生成把Spring和JPA集成在一起的源。因为您要将Spring添加到JPA项目中,所以默认情况下是选中的。另外默认情况下支持使用@Transactional Spring注释,单击Finish。

「Java开发指南」如何在MyEclipse中使用JPA和Spring管理事务?(一)_spring_03

添加Spring-JPA功能

现在项目已经添加了JPA和Spring facets,您可以打开applicationContext.xml Spring bean配置文件,看看项目是如何配置的。通过单击编辑器底部的Beans Graph选项卡打开图形视图。

「Java开发指南」如何在MyEclipse中使用JPA和Spring管理事务?(一)_逆向工程_04

Spring配置

您可以从Spring bean配置文件中看到不同bean是如何配置的,transactionManager使用entitytManagerFactory,而entitytManagerFactory又使用JPA持久单元(在添加JPA facet时创建)。

2. 逆向工程

现在项目已经设置好了,您可以将PRODUCTLINE表逆向工程到项目中,并开始使用生成的实体。

(1)右键单击src文件夹,并选择New>Package来创建一个要在其中生成实体的包。

(2)右键单击包,并选择MyEclipse>Generate Entities & DAOs。

(3)选择PRODUCTLINE,并单击Add,然后点击Next。

「Java开发指南」如何在MyEclipse中使用JPA和Spring管理事务?(一)_Java_05

选择PRODUCTLINE表

(4)填写如下所述的字段。

Java source folder:项目中生成文件的文件夹。

Java package:您在上面创建的用于放置生成类的包。

Entity Bean Generation:告诉MyEclipse生成带有正确注释的普通Java类,以便作为JPA实体使用。

Create abstract class:如果您希望自定义生成的类,而不需要每次都覆盖您的更改,MyEclipse可以生成基抽象类以及您可以自定义和使用的具体子类。每次进行逆向工程时,MyEclipse只覆盖抽象基类,在具体的子类中维护您的更改。

Update persistence.xml:与Hibernate类似,您可以在JPA配置文件中列出正在使用的所有JPA实体。

Java Data Access Generation:告诉MyEclipse生成DAO实用程序类,允许您立即从数据库中保存/查找/更新/删除实体。这段代码封装了JPA实体管理器,使使用实体和数据库变得非常容易。

Generate Precise findBy Methods:告诉MyEclipse生成findByXXX方法,其中XXX属于被反转的实体上的每个属性,这允许使用任何属性作为查找实体的方法轻松地从DB访问实体。

Generate Java interfaces:告诉MyEclipse生成顶级DAO接口以及具体实现(例如IProductlineDAO和ProductlineDAO)

DAO Type:根据所生成的DAO的类型,MyEclipse(除了为您生成DAO实现之外)还可以用连接到现有entityManagerFactory的新DAO为您更新Spring bean配置文件。

「Java开发指南」如何在MyEclipse中使用JPA和Spring管理事务?(一)_逆向工程_06

生成实体

5. 点击Finish对表进行逆向工程。当逆向工程完成后,您可以再次查看项目的Spring配置并查看更新。

「Java开发指南」如何在MyEclipse中使用JPA和Spring管理事务?(一)_myeclipse_07

全新的Spring DAO

通过更新的Spring视图,您可以看到包含了ProductlineDAO。

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  3I1N9ysrcSyk   2023年12月08日   11   0   0 javahapi数据交换
  DF5J4hb0hcmT   2023年12月07日   30   0   0 javaArthas
OQk9axLgKw38