首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

自定义Tag标签的施用、Struts2国际化全局资源配置(老鸟请绕道)

2012-12-21 
自定义Tag标签的使用、Struts2国际化全局资源配置(老鸟请绕道)????? 今天同事问我,如何对jsp上用户的某个功

自定义Tag标签的使用、Struts2国际化全局资源配置(老鸟请绕道)

????? 今天同事问我,如何对jsp上用户的某个功能进行限制,具有相应的权限,则能执行相应的功能,否则不可见或者不能执行!? 我当时告诉他可以建个类,这个类继承BodyTagSupport类。然后重写它的 doStartTag()方法!前提是还要在WEB-INF目录下建立tag文件夹,再tag文件夹下建立 .tld文件,然后再加以配置就可以实现限制权限的功能!晚上回到家闲着没事就把写了个源代码实例!欢迎大家拍砖!


????? 首先,我们先建立 TagPrivilege 类

?如果是新手的话,可能对这个tld文件的xml代码中的标签有些陌生,别急,我来告诉大家。name标签对应的是标签类TagPrivilege的属性名,required则表示是否为必填,rtexprvalue表示在是否可以在里面写入EL表达式。


做完这一步,就算是大功告成了! ,那么如何进行使用呢? 请看下面的jsp代码!

?

?不知大家可否注意:jsp页面上tablib引用的uri为:http://cn.zg.tools/privilege 。它和.tld文件中定义的uri标签是一致的!


现在大家猜想一下 页面的输出结果是什么,

首先假设用户已经登陆,我在session设置他对某个按钮的功能为可见,暂定为

这个标签的时候,就会自动的执行TagPrivilege类中的doStartTag()方法,方法中通过pageContext.getSession().getAttribute("privilege"); 得到用户的权限,

然后根据用户在标签上提供的

privilegeContent的值改为 "show",那么和session的键为“privilege”的值是一致的,那么输出“欢迎访问,您已经获得权限!”

?

为了新手学习,我提供了源码(里面还有我写的struts2的“国际化全局资源配置”源码,因为我写tag自定义标签是在前面这个项目上临时加的功能! 直接访问项目的index.jsp页面就可以看到国际化和tag自定义标签这两种技术的效果)放在附件里,欢迎下载!?? 自定义Tag标签的施用、Struts2国际化全局资源配置(老鸟请绕道)?? 老鸟请绕道!? 呵呵!

?

热点排行