ofbiz快速crud

网上介绍的关于Ofbiz的curd大多是java写的,有点过于繁杂.这里介绍的是minilang书写的简单crud,相比java书写的十分快速简单,页面上关于表单,就不再赘述.


一.controller.xml请求的配置

<request-map uri="createNoteSmart">
        <security auth="true" https="false" />
        <event type="service" invoke="createNoteSmart" />
        <response name="success" type="request-redirect-noparam" value="FindNoteSmart" />
        <response name="error" type="view" value="EditNoteSmart" />
    </request-map>
    <request-map uri="updateNoteSmart">
        <security auth="true" https="false" />
        <event type="service" invoke="updateNoteSmart" />
        <response name="success" type="request-redirect-noparam" value="FindNoteSmart" />
        <response name="error" type="view" value="EditNoteSmart" />
    </request-map>
    <request-map uri="deleteNoteSmart">
        <security auth="true" https="false" />
        <event type="service" invoke="deleteNoteSmart" />
        <response name="success" type="request-redirect-noparam" value="FindNoteSmart" />
    </request-map>


二.services.xml请求的配置

<service name="createNoteSmart" default-entity-name="Note" engine="simple" auth="true" 
            invoke="createNote" location="component://note/script/net/ecpt/note/NoteServices.xml">
        <description>Create a Note</description>
        <auto-attributes include="pk" mode="INOUT" optional="true" />
        <auto-attributes include="nonpk" mode="IN" optional="true" />
    </service>
    <service name="updateNoteSmart" default-entity-name="Note" engine="simple" auth="true" 
            invoke="updateNote" location="component://note/script/net/ecpt/note/NoteServices.xml">
        <description>Update a Note</description>
        <auto-attributes include="pk" mode="IN" optional="false" />
        <auto-attributes include="nonpk" mode="IN" optional="true" />
    </service>
    <service name="deleteNoteSmart" default-entity-name="Note" engine="simple" auth="true" 
            invoke="deleteNote" location="component://note/script/net/ecpt/note/NoteServices.xml">
        <description>Delete Note</description>
        <auto-attributes include="pk" mode="IN" optional="false" />
    </service> 


三.script下minilang文件的配置文件格式如:NoteServices.xml.

<simple-method method-name="createNote" short-description="create Note" login-required="true">
        <make-value value-field="entity" entity-name="Note" />
        <set-pk-fields value-field="entity" map="parameters" />
        <if>
            <condition>
                <if-empty field="parameters.noteId"></if-empty>
            </condition>
            <then>
                <sequenced-id sequence-name="Note" field="entity.noteId" />
            </then>
        </if>
        <set-nonpk-fields value-field="entity" map="parameters" />
        <create-value value-field="entity" />
    </simple-method>


    <simple-method method-name="updateNote" short-description="Update an Note" login-required="true">
        <entity-one entity-name="Note" value-field="entity">
            <field-map field-name="noteId" from-field="parameters.noteId" />
        </entity-one>
        <set-nonpk-fields map="parameters" value-field="entity" />
        <store-value value-field="entity" />
    </simple-method>


    <simple-method method-name="deleteNote" short-description="Delete Note" login-required="true">
        <entity-one entity-name="Note" value-field="entity">
            <field-map field-name="noteId" from-field="parameters.noteId" />
        </entity-one>
        <remove-value value-field="entity" />

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值