Service开发
复制代码
- 注解方式。开发人员采用注解元素直接在服务的java类里面配置服务的输入参数、结果以及跳转页面的信息,好处是无需任何配置文件,但是会侵入代码,不是所有程序员都喜欢这种方式。
- XML配置方式。开发人员配置*.service.xml和*.servicemapping.xml来描述服务的输入参数、结果以及跳转页面,无需侵入代码。如果采用人工方式写XML,既麻烦又容易出错,因此Tiny小组提供了服务编辑器方便开发人员编辑配置。
想使用服务编辑器很简单,在Eclipse的IDE找到对应的java服务类,并打开右键菜单选择“OpenWith”-“服务编辑器”,操作如图:
服务编辑器简介
服务编辑器有三部分组成:Java代码、服务管理和方法扩展,开发人员可以在控制面板最下方进行切换。 - Java代码。顾名思义就是展示该Java类的代码内容,开发人员可以查看、编辑Java代码。
- 服务管理。这里就是配置服务基本信息的地方,开发人员可以定义服务BeanId、类名、路径等基本信息,然后通过勾选方法名来配置方法节点。
- 方法扩展。只有在服务管理的“发布为服务的方法”,勾选了相关方法,服务编辑器才会列出相关方法名的扩展TAB。
界面示例:
开发人员选择服务管理界面的“addMailInfo”方法,编辑面板才会出现该方法的编辑界面:
用户需要配置服务基本信息、输入参数和返回值,请按图示内容配置,并保存。服务编辑器会按服务类名生成同名的*.service.xml文件,完整的文件示例如下:
- <service-components>
- <service-component type="org.tinygroup.mailinfo.service.impl.MailDbServiceImpl" bean="mailDbServiceImpl">
- <service-method local-name="addMailInfo" service-id="addMailInfo" method-name="addMailInfo" cacheable="false" category="org.tinygroup.mailinfo.service.impl">
- <service-parameters>
- <service-parameter name="mailInfo" type="org.tinygroup.tinydb.Bean" required="false" is-array="false"/>
- </service-parameters>
- <service-result name="addMailInfoResult" required="false" is-array="false" type="void"/>
- </service-method>
- <service-method local-name="modifyMailInfo" service-id="modifyMailInfo" method-name="modifyMailInfo" cacheable="false" category="org.tinygroup.mailinfo.service.impl">
- <service-parameters>
- <service-parameter name="mailInfo" type="org.tinygroup.tinydb.Bean" required="false" is-array="false"/>
- </service-parameters>
- <service-result name="modifyMailInfoResult" required="false" is-array="false" type="void"/>
- </service-method>
- <service-method local-name="deleteMailInfo" service-id="deleteMailInfo" method-name="deleteMailInfo" cacheable="false" category="org.tinygroup.mailinfo.service.impl">
- <service-parameters>
- <service-parameter name="id" type="java.lang.String" required="false" is-array="false"/>
- </service-parameters>
- <service-result name="deleteMailInfoResult" required="false" is-array="false" type="void"/>
- </service-method>
- </service-component>
- </service-components>