• Liferay7 BPM门户开发之19: 理解Service Builder体系


    参考:https://www.cnblogs.com/starcrm/p/6043352.html


    Service Builder是Liferay为业务开发而设计的模型驱动(model-driven)平台工具,提供一系列的实体类、数据持久化、服务相关的代码自动生成服务。支持Hibernate and Spring集成,缓存处理,动态查询等特性。令人惊讶的是,Liferay所有的持久化代码、Servie接口代码都是由Service Builder自动生成的,可见其自动化程度之高。

    注意:Liferay的数据持久化开发不是必需用Service Builder,你可以直接用JDBC、JPA等任何技术。使用Service Builder只需要少量的学习,即可节省大量的开发时间。数据访问层和服务层很容易就自动生成,只需要创建一个配置文件service.xml,然后运行,CRUD 和相关方法就自动创建。

    服务层的生成分两种:local service、remote service。前者供本地程序使用(即同一个jvm的java应用),远程服务则是通过SOAP or JSON访问
    数据持久化层是包装了Spring 和 Hibernate的自动配置和注入(AOP、DI、ORM)

    Service Builder带来的另一个好处是支持自定义的finder方法。

    在 Liferay7中,可以通过https://github.com/liferay/liferay-blade-samples 来快速建立Service Builder工程

    定义Service Builder映射的7个步骤

    STEP 1: 创建service.xml
    DTD的定义文件:http://www.liferay.com/dtd/liferay-service-builder_7_0_0.dtd

    STEP 2: 定义全局信息


    STEP 3: 定义ENTITIES


    STEP 4: 定义ENTITY的列


    STEP 5: 定义ENTITIES关系


    STEP 6: 定义排序


    STEP 7: 定义FINDER方法


    运行Service Builder的2个方法

    方法1: 通过IDE,Package Explorer → right click your parent project → Liferay → Gradle → build-service
    方法2: 通过linux命令行:gradlew buildService 更多信息见:https://dev.liferay.com/develop/tutorials/-/knowledge_base/7-0/creating-a-liferay-workspace-with-blade-cli

    定制SQL

    动态查询

  • 相关阅读:
    react setstate
    【css】长文本左侧显示省略号
    react 获取input标签的输入值
    【react 分页器】 基于react-virtualized组件的分页器
    type为number的<input>标签 type和size属性失效
    js 获取Array数组 最大值 最小值
    ubuntu 编辑pdf
    【react redux && flux】
    远程唤醒、WOL、Magic_Packet
    win10无法访问局域网共享文件?(因微软账户和本地账户登陆问题导致)
  • 原文地址:https://www.cnblogs.com/show58/p/13807880.html
Copyright © 2020-2023  润新知