分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 教程案例

pe框架自定义jsp标签

发布时间:2023-09-06 01:43责任编辑:郭大石关键词:jsjsp

以最常见的获取账号列表为例子:

  

  引入标签,prefix可以理解成别名,或者对象,使用时类似对象.成员。

<%@ taglib prefix="pe" uri="/WEB-INF/tlds/powerengine2.tld"%>

  这里可以理解成jsp中的k/v,通过tld中的k映射到java中属性值。也可以理解成声明,因为牵涉到jsp到java数据的流动,还是kv好些。

<tr align="left" valign="middle" id="localbank">
??<td height="23" nowrap class="tdTitle">原绑定卡号/账号</td>
??<td align="left" nowrap class="tdValue" colspan="4" onchange="selectAcNo(this.value)"><select
?????name="AcNoAlias" onChange="selectAcNo(this.value)">
????????<pe:optionEx listResolverId="AcACList" input="AcNo"
????????optionName="id,aliasName,bankAcType,name"
????????constantPrefix=",,BankAcType,"
????????optionValue="id,type,bankAcType,currency.id,currency.type,currency.id,name,currency.type"
????????valuePrefix=",,,Currency,CRFlag,," currentValue="${AcNo}" />
??</select></td>


</tr>

  标签的理解百度即可,入门级这里写业务逻辑,一般这里当做xml解耦

<tag> ???????<name>optionEx</name> ???????<tag-class>com.csii.pe.channel.http.tag.OptionExTag</tag-class> ???????<body-content>empty</body-content> ???????<attribute> ???????????<name>listResolverId</name> ???????</attribute>。。。。。。。。。。

  OptionExTag.class接口多态机制,接口的引用指向实例化对象,该出实例化是在mergedPool池中获取的。
listResolverId是注入的beanid,一般spring都是注入和getbeanid两步骤。
resolver对象是实例<bean name="AcACList" class="com.csii.ibs.accesscontrol.AcAccessControlListResolver" >
 List items = null; ???????ListResolver resolver = mergedPool.getListResolver(this.listResolverId); ???????if (resolver != null) { ???????????items = resolver.getList(context, inputData, extraData, this.defaultRuleDef); ???????}

  resolver.getList();还是获取的user

 ?public List getList(Context paramContext, Object paramObject1, Object paramObject2, String paramString) ?{ ???IbsUser localIbsUser = (IbsUser)paramContext.getUser();

  其实账户管理中的账号列表都是直接拿user数据了。例如

<pe:option items="${_USER.accounts}" ???????????????????????????optionName="id,bankAcType,name" ???????????????????????????constantPrefix=",BankAcType" ??????????????????????????????optionValue="id,type,bankAcType,currency.id,currency.type,currency.id" ???????????????????????????valuePrefix=",,,Currency,CRFlag" ???????????????????????????currentValue="${AcNo}" ???????????????????????????condition=‘ "1D".indexOf(type)!=-1 and subCifNo==null‘/>

  题外话谈下el表达式,el仅仅是一种简化形式,例如pagecontext.request...等等,mvc将数据分离后,只要数据流到了view层,el都能表示的,常见的context只是一种常用的获取方式,适配器把传递参数都封与此,user也常用,是首次登陆拿的puser和paccount表数据。

 

pe框架自定义jsp标签

原文地址:https://www.cnblogs.com/liwanxing/p/8461465.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved