在Struts作为表示层框架的应用中,我们可以使用其众多的Struts plug-ins来丰富其功能。大家使用比较多的是使用Struts-Tiles、Struts-Validator,这里我给大家介绍一下Struts-menu,很好用,在没有权限控制时最简单,只需配置文件就可以了;在要菜单权限控制时,可以和Tomcat(或其他J2EE容器)的认证机制结合实现权限控制,也可以利用后台数据库的方式实现权限控制,这里主要介绍数据库方式,比较灵活,本人一直以为容器验证的方式太死板,不易扩充。
Struts-menu是sourceforge的一个项目,可以直接到sourceforge.net下载。下面介绍一下在Struts项目中如何集成Struts-menu。
方式一:先介绍没有权限控制的方式使用:
1、将 /lib/struts-menu.jar 拷贝到 WEB-INF/lib/目录下;
2、将 /lib/struts-menu.tld拷贝到WEB-INF/lib/目录下;
3、将struts-menu.war中的scripts、styles、images目录拷贝到你的应用"/"目录下;
4、修改 web.xml 加入 taglib 的调用。
5、修改 struts-config.xml 加入 plugin描述
6、配置menu-config.xml,如:
说明:断描述了Strut-menu将采用的显示方式,可以在jsp文件中选择Displayer;进行了相关菜单项目的配置,可以在jsp文件中选择显示的菜单。
7、在jsp文件(如Struts-tiles中使用了menu.jsp)中加入,可以通过对useMenuDisplayer来设置菜单的显示风格。
8、可以在浏览其中显示了。
方式二:数据库验证方式
基本配置与方式一一致,只是在JSP中动态构建Menus。
采用数据库验证的方式,后台数据与你的其他数据库验证菜单类似。下面的示例代码中假设从后台数据中得到权限列表ArrayList:res,我下面的示例中的res是在Action中传入的SQLExecutor的结果SQLResults(其实就是ArrayList); Import Struts 的类库:net.sf.navigator.menu.*。菜单显示部分如下:
这样的调用,详细用法可以参考Struts-menu,当然有兴趣的朋友可以把以上代码包装成特定的Javabeans,方便灵活调用。
玩了一阵struts-menu,总体感觉他的xml配置和权限处理,是我最喜欢的部分。但是他在页面展示上不够灵活,这是他的缺点。
这里推荐一个简单配置权限的方式。就是在楼主介绍的方法一的基础上,利用struts-menu adpater的概念,只要在jsp上加上如下代码:
其中MenuBO取出的是权限允许的菜单名字。
DropDownPermissionAdapter 实现了如下:
Struts-menu是sourceforge的一个项目,可以直接到sourceforge.net下载。下面介绍一下在Struts项目中如何集成Struts-menu。
方式一:先介绍没有权限控制的方式使用:
1、将 /lib/struts-menu.jar 拷贝到 WEB-INF/lib/目录下;
2、将 /lib/struts-menu.tld拷贝到WEB-INF/lib/目录下;
3、将struts-menu.war中的scripts、styles、images目录拷贝到你的应用"/"目录下;
4、修改 web.xml 加入 taglib 的调用。
|
5、修改 struts-config.xml 加入 plugin描述
6、配置menu-config.xml,如:
|
说明:断描述了Strut-menu将采用的显示方式,可以在jsp文件中选择Displayer;进行了相关菜单项目的配置,可以在jsp文件中选择显示的菜单。
7、在jsp文件(如Struts-tiles中使用了menu.jsp)中加入,可以通过对useMenuDisplayer来设置菜单的显示风格。
8、可以在浏览其中显示了。
方式二:数据库验证方式
基本配置与方式一一致,只是在JSP中动态构建Menus。
采用数据库验证的方式,后台数据与你的其他数据库验证菜单类似。下面的示例代码中假设从后台数据中得到权限列表ArrayList:res,我下面的示例中的res是在Action中传入的SQLExecutor的结果SQLResults(其实就是ArrayList); Import Struts 的类库:net.sf.navigator.menu.*。菜单显示部分如下:
|
这样的调用,详细用法可以参考Struts-menu,当然有兴趣的朋友可以把以上代码包装成特定的Javabeans,方便灵活调用。
玩了一阵struts-menu,总体感觉他的xml配置和权限处理,是我最喜欢的部分。但是他在页面展示上不够灵活,这是他的缺点。
这里推荐一个简单配置权限的方式。就是在楼主介绍的方法一的基础上,利用struts-menu adpater的概念,只要在jsp上加上如下代码:
|
其中MenuBO取出的是权限允许的菜单名字。
DropDownPermissionAdapter 实现了如下:
|
浙公网安备 33010602011771号