「Java开发指南」如何利用MyEclipse启用Spring DSL?(二)

本教程将引导您通过启用Spring DSL和使用Service Spring DSL抽象来引导Spring和Spring代码生成项目,本教程中学习的技能也可以很容易地应用于其他抽象。在本教程中,您将学习如何:

  • 为Spring DSL初始化一个项目
  • 创建一个模型包
  • 创建一个服务和操作
  • 实现一个服务方法
  • 启用JAX-WS和DWR

注意:自定义Spring代码生成需要MyEclipse Spring或Bling授权

在上文中(点击这里回顾>>),我们为大家介绍了如何初始化项目、检查输出等,本文将继续介绍如何创建一个Model包、创建服务和操作等。持续关注我们,获取更多MyEclipse中文教程哦~

MyEclipse v2023.1.2离线版下载(Q技术交流:742336981)

三、创建一个模型包

模型包用于名称间隔和对相关的Spring DSL组件进行分组,模型包直接与Java包相关,并且在模型包中创建的Spring DSL构件被生成为匹配的Java包。在创建服务之前,您需要创建一个模型包。

1. 右键单击Spring DSL文件夹,然后选择New>Model Package。

「Java开发指南」MyEclipse如何支持Spring Scaffolding?

添加模型包

2. 输入org.acme.services作为新模型包的名称,然后单击Finish,新的模型包被添加到Spring DSL视图中。

「Java开发指南」MyEclipse如何支持Spring Scaffolding?

新模型包

四、创建一个服务和操作

服务用于定义服务层组件和管理相关文件,服务被生成到多个Java文件中,主要的Java文件是一个带@Service注释的Spring组件,这是服务层组件的专用构造型。操作是为服务定义方法的Spring DSL构件,它们是Java方法的Spring DSL表示。操作使用输入和输出来交换数据,它们直接作为方法生成到各自的类中。

1. 右键单击org.acme.service模型包,然后选择New>Service。

「Java开发指南」MyEclipse如何支持Spring Scaffolding?

添加服务

2. 输入MyService作为新服务的名称,然后单击Finish,新的Service被添加到Spring DSL视图中。

3. 双击Service来在编辑器中打开。

Service编辑器用于配置Spring DSL服务的特定实例,在编辑器的底部有各种选项卡,用于配置服务的不同方面。

「Java开发指南」MyEclipse如何支持Spring Scaffolding?

服务编辑器

4. 右键单击MyService,然后选择New>Operation。

「Java开发指南」MyEclipse如何支持Spring Scaffolding?

向服务添加操作

5. 输入doSomething作为新操作的名称,然后单击Finish。新的Operation被添加到Spring DSL视图中,Operation编辑器将自动打开来配置该操作,Operation编辑器提供特定于操作的配置选项。

「Java开发指南」MyEclipse如何支持Spring Scaffolding?

操作编辑器

五、审查生成的代码

如果单击Spring DSL视图中的服务,则生成视图将显示为您生成的文件。

「Java开发指南」MyEclipse如何支持Spring Scaffolding?

生成视图

默认情况下,Spring DSL服务生成一个服务接口、一个服务实现类(用Spring @Service注释)和一个JUnit测试类。从Spring DSL工件生成的所有Java工件都在generated视图中列出,双击生成视图中的Java工件,在编辑器中打开Java文件。

注意:生成视图是MyEclipse中支持Spring的视图,默认情况下包含在MyEclipse Spring透视图中。如果您正在使用不同的透视图,那么可能需要将生成视图添加到您的工作区中。

如前所述,每个服务(DSL)生成一个服务实现类、一个服务接口和一个服务JUnit测试类。

Spring框架支持@Service注释,它是服务层组件的专用构造型。服务实现类是用Java包名(基于模型包)、所有相关的Spring导入语句、所有相关的Spring注释(包括@Serviceannotation)和为服务创建的每个操作的Java方法生成的。

「Java开发指南」MyEclipse如何支持Spring Scaffolding?

MyServiceImpl.java – 服务实现类

注意,doSomething() Java方法没有实现,这就是实现所需功能的地方。MyEclipse已经创建了包含所有必需的Java和Spring配置的框架代码,但是实现代码是您的责任。您知道希望服务方法做什么,并且可以直接在Java代码中实现该方法。

下面是生成的服务接口,当您向服务添加新操作时,服务接口将自动更新,这样就少了一件需要担心的事。

「Java开发指南」MyEclipse如何支持Spring Scaffolding?

MyService.java – service 接口

下面是生成的JUnit测试类,它是用所有必需的JUnit和Spring样板代码生成的,您要做的唯一事情就是实现服务测试。当新的操作被添加到服务中时,新的测试方法被自动添加到测试类中。

「Java开发指南」MyEclipse如何支持Spring Scaffolding?

MyService.java – service JUnit类

注意:如果您查看为scaffolded应用程序生成的服务操作,会注意到它们已完全实现。另一方面,当使用Spring编辑器创建新的服务操作时,会生成Java方法,但不会生成Java方法体,这是scaffolding和Spring编辑器功能之间的根本区别。

六、实现服务方法

您已经准备好实现服务方法了,这里没什么特别的,只需编写生成的服务方法的实现代码。

打开MyServiceImpl.java文件,并向服务方法添加一些代码。

「Java开发指南」MyEclipse如何支持Spring Scaffolding?

服务方法代码

七、启用JAX-WS

默认情况下,服务不支持web服务调用,JAXWS Web Service选项卡用于配置服务的Web服务选项。

1. 通过双击Spring DSL视图中的MyService构件,打开MyService的Service编辑器。

2. 切换到JAXWS Web Service选项卡,选择MyService Web服务,然后选择Publish Web Service选项,这将服务公开为JAX-WS web服务。

「Java开发指南」MyEclipse如何支持Spring Scaffolding?

JAX-WS配置

3. 保存文件。

在部署应用程序时,该服务可作为JAX-WS SOAP web服务使用。如果单击Spring DSL视图中的服务,则生成视图将显示为您生成的另外两个与JAX-WS相关的文件。

「Java开发指南」MyEclipse如何支持Spring Scaffolding?

生成视图

八、启用DWR

默认情况下,服务不支持JavaScript/JSON调用,DWR选项卡用于配置服务的DWR选项。

1. 通过双击Spring DSL视图中的MyService构件,打开MyService的Service编辑器。

2. 切换到DWR选项卡,选择MyService,然后选择Publish选项,这将通过使用DWR的JavaScript/JSON公开服务。

「Java开发指南」MyEclipse如何支持Spring Scaffolding?

DWR配置

3. 保存文件。

该应用程序已配置为使此服务可用于JavaScript/JSON客户端(即AJAX应用程序)。

注意:由于依赖Java库的库版本不匹配导致DWR运行时问题,请参阅MyEclipse for Spring论坛,了解一个非常简单的解决方案。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值