您的位置:首页 > 编程语言 > Java开发

用struts-menu实现轻松实现网页菜单

2008-09-26 10:29 330 查看
在网页开发中,我们经常用到一些菜单,可能是下拉菜单,可能是标签式菜单,也可能是树状菜单,struts-menu帮我们实现了一些常用菜单,而且非常漂亮,这样就大大节省了开发的时间,真可谓是事半功倍呀。目前struts-menu最新的版本是2.4.1 ,可以从http://struts-menu.sourceforge.net/userguide.html进行下载,它主要实现以下几种类型的菜单:DropDownMenu,SimpleMenu,CoolMenu,PermissionsFormMenu,ListMenu,TabbedMenu,VelocityMenu,XtreeMenu,CSSListMenu。

下面我就以树状菜单为例,介绍一下具体的实现方法:

一、准备工作:
? 首先下载最新的struts-menu,包括struts-menu-2.4.1.jar及struts-menu-2.4.1.war。
? 将struts-menu-2.4.1.war解压到指定目录,我们将要用到该压缩包里的相关文件。
? 确保你的系统可以运行用struts框架实现的B/S程序,即需要安装Tomcat等Servlet容器。

二、将struts-menu整合到你的Struts应用程序中,它也可以整合到一个非Struts的应用程序中,但是我不喜欢这样做,所以在此没有提供相应的说明:
? 将struts-menu-2.4.1.jar放到你的WEB-INF/lib目录下。
? 在你的struts-config.xml文件中加入plug-in设置,如下:
<plug-in className="net.sf.navigator.menu.MenuPlugIn">
<set-property property="menuConfig" value="/WEB-INF/menu-config.xml"/>
</plug-in>
? 在WEB-INF建立文件名为“menu-config.xml”的XML文件,它主要是菜单插件的配置文件,内容如下:
<?xml version="1.0" encoding="UTF-8" ?>
<MenuConfig>

以下内容是菜单类型定义
<Displayers>
<Displayer name="DropDown"
type="net.sf.navigator.displayer.DropDownMenuDisplayer" />
<Displayer name="Simple"
type="net.sf.navigator.displayer.SimpleMenuDisplayer" />
<Displayer name="CoolMenu"
type="net.sf.navigator.displayer.CoolMenuDisplayer" />
<Displayer name="CoolMenu4"
type="net.sf.navigator.displayer.CoolMenuDisplayer4" />
<Displayer name="MenuForm"
type="net.sf.navigator.example.PermissionsFormMenuDisplayer" />

<Displayer name="ListMenu"
type="net.sf.navigator.displayer.ListMenuDisplayer" />
</Displayers>

<Menus>

以下内容是菜单定义
<Menu name="indexMenu" title="VIP病人管理系统">
<Item name="inexmenu" title="VIP病人管理系统" toolTip="VIP病人管理系统" page="/menu_list.jsp" />
</Menu>
以上的menu_list.jsp文件为实现树状菜单的核心文件

以下内容是菜单项目定义
<Menu name="menu_mz" title="门诊处理" width="50">
<Item name="TDLnewcase" title="病人登记" location="vipinfo_add.jsp" />
<Item name="TDLnewitem" title="查询处理" location="query_mz.jsp" />
</Menu>

<Menu name="menu_zy" title="住院处理" width="50">
<Item name="TDLopencase" title="基本信息" location="vipinfoadd_zy.jsp" />
<Item name="TDLopenitem" title="住院情况" location="vipinfozyqk.jsp" />
<Item name="TDLopenparty2" title="查询处理"
location="query_zy.jsp" />
</Menu>
</MenuConfig>

? 建立menu_list.jsp文件,文件内容如下:
<%@ taglib uri="http://struts-menu.sf.net/tag" prefix="menu" %>
<menu:useMenuDisplayer name="ListMenu" bundle="org.apache.struts.action.MESSAGE">
<menu:displayMenu name="menu_mz"/>
<menu:displayMenu name="menu_zy"/>
</menu:useMenuDisplayer>

? 建立实现菜单的主JSP文件,文件名为menu.jsp,内容如下:
%@page contentType="text/html; charset=gb2312"%>
<html>
<head>
<base target="right">
<link rel="stylesheet" type="text/css" media="screen"
href=" styles/global.css" />

<link rel="stylesheet" type="text/css" media="screen"
href=" styles/menuExpandable.css" />

<script type="text/javascript" src=" scripts/menuExpandable.js"></script>
</head>
<body>
<div id="topMenu">
<jsp:include page="menu_list.jsp" flush="true"/>
</div>
</body>
</html>

? 将struts-menu-2.4.1.war内scripts目录下的menuExpandable.js拷贝到你的struts中存放JS文件的目录下,将styles目录下的global.css、menuExpandable.css也拷贝到相应目录,最好新建以上两个目录scripts,styles,这样很多参数都不用修改,特别省事。
? 将struts-menu-2.4.1.war内images目录拷贝到你的struts应用程序下,这个目录主要是菜单所需要的图片。

三、以下便是该菜单

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: