MyEclipse使用教程:使用REST Web Services管理JPA实体
MyEclipse 在线订购专享特惠!火爆开抢>>
使用REST Web Services来管理JPA实体。在逆向工程数据库表后生成REST Web服务,下面的示例创建用于管理博客条目的简单Web服务。你将学会:
- 利用数据库逆向工程开发REST Web服务
- 部署到Tomcat服务器
- 使用REST Web服务资源管理器进行测试
没有MyEclipse? 立即下载
1.建立项目和数据库连接
要在MyEclipse中开始REST和反向工程,您将需要以下内容:
- 添加了JPA Facets的项目
- 使用DB Explorer选择要使用JPA进行逆向工程的表
在MyEclipse中,您可以将JPA Facets添加到许多不同类型的项目中。JPA Facets通常被添加到Java项目或Web项目中。
1.1设置Web项目
- 单击New图标上的下拉箭头,然后选择Web Project。
- 在Project Name字段中输入RESTProject,接受默认选项,然后单击Finish。
创建Web项目
现在已经创建了项目,下一步是创建一个DB Connection来与该项目一起使用。在添加JPAFacet时,需要选择连接。
1.2建立DB连接
MyEclipse提供了一个预配置的DB连接,指向Apache Derby DBMS的嵌入式安装。您可以立即使用这个连接,而不需要设置自己的DBMS或连接。
- 单击OpenPers.图标,并从菜单中选择Database Explorer。
- 在DB Browser视图中,选择MyEclipse Derby连接,然后单击Open Connection图标。这将启动嵌入式MyEclipse Derby服务器,并使您能够立即访问数据库中的表。
打开数据库连接
MyEclipse Derby包括几个示例模式。您将使用的表是MYBLOG表,其中包含一个用于处理博客帖子的表。
Post table
1.3将JPA Facets添加到项目中
打开DB连接后,您可以将JPA方面添加到项目中,以便它可以从DB连接访问表和信息。
- 切换回Java企业透视图,右键单击项目,并选择“配置方面”>安装JPA方面。
- 选择2.1作为JPA规范版本,以及MyEclipse泛型Java运行时在目标运行时下拉,然后单击Next。
配置JPA方面
- 使用EclipseLink 2.5.x作为平台,使用MyEclipse Library作为JPA实现类型。在Connection字段中选择MyEclipse Derby,选择Add driver库来构建路径并从连接复选框中重写默认模式,并从Schema下拉菜单中选择MYBLOG。单击“完成”。
完成JPA方面配置
现在项目已经添加了完全配置的JPA方面,其中包括JPA配置信息、DB连接信息,以及添加到项目的构建路径中的所有必要的JDBC和JPA库。所有构建路径添加都准备好部署到应用服务器。
项目结构
2.Reverse-Engineer the POST表
现在已经设置了项目,您已经准备好将POST表逆向工程到项目中并开始使用生成的实体。
- 右键单击项目,然后选择JPA工具>GenerateEn.es&DAO。
注意:您可以选择使用MyEclipse逆向工程工具或DALI实体生成器。做出选择,单击OK,然后完成向导。本教程使用MyEclipse逆向工程工具。逆向工程工具选择
- 选择POST表,单击Add,然后单击Next。
指定要进行逆向工程的POST表
- 在Java包字段中,键入COM.MycliestId.jPa。选择以下复选框:
Entity Bean Generation: 告诉MyEclipse生成被注释为JPA实体的普通Java类
Update persistence.xml:类似于Hibernate;您可以列出在JPA配置文件中使用的所有JPA实体。
Java Data Access Generation:告诉MyEclipse为您生成DAO实用程序类,允许您立即从数据库中保存/查找/更新/删除实体。这段代码包装了JPA实体管理器,并使得使用实体和DB非常容易。
Generate Precise findBy Methods:告诉MyEclipse生成findByXXX方法,其中XXX与被反转的实体上的每个属性有关。这允许使用任何属性作为查找实体的手段,轻松访问DB中的实体。
Generate Java Interfaces:选择此选项创建一个具有相应的DAO实现类的接口类。取消选择此选项只生成DAO实现类,而不用定义接口的单独类。
建立逆向工程
- 单击Finish。您可以查看通过展开Explorer视图中的com.myeclipseide.jpa包生成的资源MyEclipse。
生成的类
所生成的实体描述如下:
- EntityManagerHelper:当使用直接JPA时,开发人员需要使用EntityManager类。这个生成的助手类通过提供静态方法访问管理器,以及最容易调用的常见操作,使得使用EntityManager的过程更加容易。
- IPostDAO:定义相应DAO实现类的接口的类。
- post:这个类是表示DB表POST的JPA实体(POJO)。这个POJO包含POST表的字段,并且表示DB中的一行。
- PostDAO:这个类包装了EntityManagerHelper以提供易于使用的方法,特别是用于从DB中添加/查找/更新和删除产品的方法。
注意:在反向工程完成之后,您可以打开Persistence透视图,使用一些持久性和数据源工具来分析DB和项目中的数据。
3.使用REST Web服务访问数据
可以通过RESTWeb服务公开从数据库表生成的JPA实体。为此,您必须首先将JAX-RS方面安装到项目中。当您通过REST服务公开实体时,会生成REST外观。这些外观提供了通过REST公开的用于管理数据库的方法。
- 右键单击项目,然后选择Configure Facets>Install JAX-RS(REST Web Services)Facet。
- 接受默认JAX-RS 2.1版本和默认目标运行时,然后单击Next。
选择JAX-RS版本和目标运行时
- 接受默认facet配置,然后单击Finish。
完成JAX-RS配置
- 右键单击资源管理器中的com.myeclipseide.jpa包,并选择Web服务工具>通过REST Web服务公开。
- 包和EntityManagerHelper类是默认的。如果对多个实体进行了逆向工程,则可以选择要公开的实体。在这种情况下,您只有一个。单击Finish生成REST外观。
Generating REST facades
如果打开PraseDeSerest.java文件,您可以看到可用的方法,如创建、编辑、删除和查找。
可用的REST外观方法
4.部署Web服务应用程序
部署Web服务的最快的方法是使用Run As或Debug As MyEclipse Server Application操作部署项目。
- 右键单击项目,并选择Run As>MyEclipse Server Application。
- 选择MyEclipse Tomcat,然后单击Finish。
MyEclipse执行以下步骤:
- 将项目打包并以爆炸模式将其部署到应用程序服务器
- 启动应用服务器并加载项目
5.使用REST Web服务资源管理器进行测试
REST Web服务资源管理器在MyEclipse标准订阅级别不可用。如果您是MyEclipse标准订户,请按照使用标准浏览器测试Web服务的说明操作。
- 右键单击项目,并选择Web服务工具>Test with REST Web Services Explorer。
注意:如果部署到MyEclipse Tomcat以外的应用服务器,则资源管理器中使用的WADL URL可能包含不正确的端口,从而阻止资源管理器加载WADL文件。更正端口,然后单击Go按钮继续。
还可以通过单击工具栏上的Web Services Explorer图标上的下拉箭头,并选择Launch REST Web Services Explorer,打开REST Web Services Explorer。在这种情况下,在继续之前,必须在地址栏中输入WADL文件的路径。
- 将树展开到count节点,并选择countREST方法。
选择要测试的方法
- 单击测试方法。将打开一个新选项卡,您可以在其中输入信息并运行测试。
用于测试方法的countREST选项卡
- 单击运行测试图标。在Raw响应区域中,观察计数为0,因为没有创建帖子。
- 关闭countREST选项卡。
- 在Post节点中选择create方法,然后单击Test method。
- 从create选项卡上的Representation下拉列表中选择application/xml。
- 在Body中,键入application/xml区域,粘贴以下代码,然后单击。实体创建成功。
<post>
<title>My First Post</title>
<content>Welcome to my new blog</content>
</post>博客条目测试响应
- 关闭create选项卡。
- 选择countREST方法,并单击Test method。
- 点击。计数现在显示您刚刚发布的条目的1。
- 在Post节点中,选择findAll方法,然后单击Test method。
- 点击。您可以在原始视图中看到您的帖子条目。
更多资讯敬请访问MyEclipse中文网>>
MyEclipse使用教程:使用REST Web Services管理JPA实体的更多相关文章
- MyEclipse使用教程:在Web项目中使用Web片段
MyEclipse 在线订购年终抄底促销!火爆开抢>> MyEclipse最新版下载 本教程向用户展示了使用关联的Web项目创建Web片段项目的机制.用户还可以获得要检查的示例项目.在本教 ...
- Web Services 教程
Web Services 可使您的应用程序成为 Web 应用程序. Web Services 通过 Web 进行发布.查找和使用. Web Services 是应用程序组件 Web Services ...
- Web 建站技术中,HTML、HTML5、XHTML、CSS、SQL、JavaScript、PHP、ASP.NET、Web Services 是什么(转)
Web 建站技术中,HTML.HTML5.XHTML.CSS.SQL.JavaScript.PHP.ASP.NET.Web Services 是什么?修改 建站有很多技术,如 HTML.HTML5.X ...
- abp学习(四)——根据入门教程(aspnetMVC Web API进一步学习)
Introduction With AspNet MVC Web API EntityFramework and AngularJS 地址:https://aspnetboilerplate.com/ ...
- 基于Spring设计并实现RESTful Web Services(转)
基于Spring设计并实现RESTful Web Services 在本教程中,你将会使用Spring来创建一个具有生产力的RESTful网络服务. 为什么用RESTful网络服务? 从和Amazon ...
- Delphi 6 Web Services初步评估之二(转)
Delphi 6 Web Services初步评估之二(转) ★ 测试环境:CPU:PIII 550内存: 256MBOS: Windows2000 Server + SP2Web Server: ...
- Delphi 6 Web Services初步评估之三(转)
Delphi 6 Web Services初步评估之三(转) Delphi 6 Web Services初步评估之三(转)★ 测试总体印象:在整个测试中,对Delphi 6创建的Web Servi ...
- Web Services 介绍
Web Services 介绍 Web Services 是建立可交互操作的分布式应用程序的新平台 ; Web Services 平台是一套标准,它定义了应用程序如何在 Web 上进行交互操作 , 你 ...
- 利用PHP SOAP扩展实现简单Web Services
原文:利用PHP SOAP扩展实现简单Web Services WebServices能干什么? WebServices 可以将应用程序转换为网络应用程序. 通过使用 WebServices,您的应用 ...
随机推荐
- 上传RNA-seq数据到NCBI GEO数据库
SRA - NCBI example - NCBI 要发文章了,审稿时编辑肯定会要求你上传NGS测序数据. 一般数据都是放在集群,不可能放在个人电脑上,因为有的数据大的吓人(几个T). 所以我们就建一 ...
- 详细讲解Linux下安装python3(Python3.5.4)
https://jingyan.baidu.com/article/6b97984dd6dbb01ca2b0bf0a.html
- android--------Eclipse中ddms heap内存分析工具
无 论怎么小心,想完全避免bad code是不可能的,此时就需要一些工具来帮助我们检查代码中是否存在会造成内存泄漏的地方. Android tools中的DDMS就带有一个很不错的内存监测工具Heap ...
- Django ModelForm 组件的应用
ModelForm组件的应用 ModelForm 组件的创建: 1.创建一个类,该类继承 forms.ModelForm 2.大致组成部分 class ModelNameModelForm(form ...
- Linux中常用压缩打包工具
Linux中常用压缩打包工具 压缩打包是常用的功能,在linux中目前常用的压缩工具有gzip,bzip2以及后起之秀xz.本文将介绍如下的工具常见压缩.解压缩工具以及打包工具tar. gzip2 直 ...
- 【IDEA】【3】操作使用
前言: 1,显示工具栏及底部周边工具栏 2,修改项目名称 3,文件重命名 4,鼠标移动到方法上时进行提示注释 5,修改文件后自动重启 6,查看代码覆盖率 正文: 1,显示工具栏及底部周边工具栏 Vie ...
- vue组件插槽
vue中子组件内容如何定义为可扩展的呢,就是用slot插槽来实现.如下图 如果<slot></slot>标签有内容,那就默认显示里面的内容,父组件传了就会覆盖此默认的内容.
- csu oj 1341 string and arrays
Description 有一个N*N的字符矩阵,从上到下依次记为第1行,第2行,……,第N行,从左至右依次记为第1列,第2列,……,第N列. 对于这个矩阵会进行一系列操作,但这些操作只有两类: (1) ...
- 回收站(recyclebin)及回滚
1. alter table table_name enable row movement; flashback table table_name to timestamp to_timestam ...
- Qt_Pro详解
在QT中,有一个工具qmake可以生成一个makefile文件,它是由.pro文件生成而来的,.pro文件的写法如下: 1. 注释 从“#”开始,到这一行结束. 2.模板变量告诉qmake为这个应用程 ...