- 浏览: 58277 次
- 性别:
- 来自: 大连
最新评论
-
guoyangjie:
忘了留下扣扣和邮箱了扣扣是:734868158邮箱是:guoy ...
初涉StrutsMenu -
guoyangjie:
在线吗?在的话帮我一个忙,我第一次在项目中用,希望你能多多帮助 ...
初涉StrutsMenu -
liufangbj:
抱着试试看的心里,不过谢谢了~~~
初涉StrutsMenu -
大力水手:
不知在实际项目中是否真能实用? 如何动态构造菜单呢?
初涉StrutsMenu -
e4077wf:
怎么说培训生了;培训生是有问题也有可取之处;我也是一个培训生; ...
职业培训:如何培养合格程序员
在JSP页面中,通过如下代码显示动态菜单,显示菜单所需要的包同《初涉StrutsMenu》中lib中所包含的包,在《初涉StrutsMenu》中中已经提供了下载。
- <%@ page contentType="text/html; charset=UTF-8" %>
- <%@ taglib uri="/WEB-INF/tld/struts-menu.tld" prefix="menu" %>
- <%@ taglib uri="/WEB-INF/tld/struts-menu-el.tld" prefix="menu-el" %>
- <%@ taglib uri="/WEB-INF/tld/c.tld" prefix="c" %>
- <%@ taglib uri="/WEB-INF/tld/fmt.tld" prefix="fmt" %>
- <%@ taglib uri="/WEB-INF/tld/sql.tld" prefix="sql" %>
- <%@ page import="java.sql.*"%>
- <%@ page import="java.util.*" %>
- <%@ page import="bean.MyMenu" %>
- <%@ page import="java.util.Map,
- javax.servlet.jsp.jstl.sql.Result,
- net.sf.navigator.menu.MenuComponent,
- net.sf.navigator.menu.MenuRepository"%>
- <head>
- <title>menu testtitle>
- <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>
- <link rel="stylesheet" type="text/css" media="all" href="styles/xtree.css"/>
- <script type="text/javascript" src="scripts/xtree.js">script>
- <script type="text/javascript">
- /* Function for showing and hiding elements that use 'display:none' to hide */
- function toggleDisplay(targetId) {
- if (document.getElementById) {
- target = document.getElementById(targetId);
- if (target.style.display == "none"){
- target.style.display = "";
- } else {
- target.style.display = "none";
- }
- }
- }
- script>
- head>
- <body>
- <%
- ArrayList<Map> ary=new ArrayList<Map>();
- Connection con=null;
- try{
- Class.forName("oracle.jdbc.driver.OracleDriver");
- con=DriverManager.getConnection
- ("jdbc:oracle:thin:@127.0.0.1:1521:system","scott","tiger");
- }catch(Exception e){
- System.out.println("Error in index:"+e.getMessage());
- }
- Statement state=con.createStatement();
- ResultSet rs=state.executeQuery("SELECT id,parent_name,name,title,location FROM menu_item");
- while(rs.next()){
- Map temp=new HashMap();
- temp.put("id",rs.getString("id"));
- temp.put("name",rs.getString("name"));
- temp.put("parent_name",rs.getString("parent_name"));
- temp.put("title",rs.getString("title"));
- temp.put("location",rs.getString("location"));
- ary.add(temp);
- }
- request.setAttribute("menus",ary);
- MenuRepository repository = new MenuRepository();
- MenuRepository defaultRepository = (MenuRepository)
- application.getAttribute(MenuRepository.MENU_REPOSITORY_KEY);
- repository.setDisplayers(defaultRepository.getDisplayers());
- ArrayList result=(ArrayList)request.getAttribute("menus");
- Iterator iterator=result.iterator();
- int id=0;
- System.out.println("out while");
- while(iterator.hasNext()){
- MenuComponent mc = new MenuComponent();
- Map row=(Map)result.get(id);
- String name=(String)row.get("name");
- mc.setName(name);
- String parent=(String)row.get("parent_name");
- if (parent != null) {
- MenuComponent parentMenu = repository.getMenu(parent);
- if (parentMenu == null) {
- System.out.println("parentMenu '" + parent + "' doesn't exist!");
- parentMenu = new MenuComponent();
- parentMenu.setName(parent);
- repository.addMenu(parentMenu);
- }
- mc.setParent(parentMenu);
- }
- String title = (String) row.get("title");
- mc.setTitle(title);
- String location = (String) row.get("location");
- mc.setLocation(location);
- repository.addMenu(mc);
- iterator.next();
- id++;
- }
- pageContext.setAttribute("repository", repository);
- %>
- <div id="content">
- <script type="text/javascript" src="./scripts/coolmenus3.js">script>
- <script type="text/javascript" src="./scripts/coolmenu-config.js">script>
- <menu:useMenuDisplayer name="CoolMenu" config="/templates/coolmenus.html"
- repository="repository" bundle="org.apache.struts.action.MESSAGE">
- <c:forEach var="menu" items="${repository.topMenus}">
- <menu-el:displayMenu name="${menu.name}"/>
- c:forEach>
- menu:useMenuDisplayer>
- div>
- body>
- html>
显示效果如下:希望大家能提供更好的实现方式.
<v:shapetype id="_x0000_t75" path="m@4@5l@4@11@9@11@9@5xe" o:preferrelative="t" filled="f" stroked="f" coordsize="21600,21600" o:spt="75"> <v:stroke joinstyle="miter"></v:stroke><v:formulas><v:f eqn="if lineDrawn pixelLineWidth 0"></v:f><v:f eqn="sum @0 1 0"></v:f><v:f eqn="sum 0 0 @1"></v:f><v:f eqn="prod @2 1 2"></v:f><v:f eqn="prod @3 21600 pixelWidth"></v:f><v:f eqn="prod @3 21600 pixelHeight"></v:f><v:f eqn="sum @0 0 1"></v:f><v:f eqn="prod @6 1 2"></v:f><v:f eqn="prod @7 21600 pixelWidth"></v:f><v:f eqn="sum @8 21600 0"></v:f><v:f eqn="prod @7 21600 pixelHeight"></v:f><v:f eqn="sum @10 21600 0"></v:f></v:formulas><v:path o:extrusionok="f" o:connecttype="rect" gradientshapeok="t"></v:path><o:lock aspectratio="t" v:ext="edit"></o:lock></v:shapetype>
评论
发表评论
-
Struts2 HelloWorld
2010-06-02 16:37 969Struts2 HelloWorld 1、开发环境(E ... -
oracle查询语句
2010-03-20 14:40 1060查询第10条到第13条记录,要求按empno编号升序排序,先在 ... -
SSH整合学习(三)
2010-01-07 12:38 959SSH整合学习(二)中的乱码问题通过增加过滤器来解决。在web ... -
SSH整合学习(二)
2010-01-06 12:13 1072接着上次创建ssh工程之后的实现过程,实现的是一张 ... -
SSH整合学习(一)
2009-12-31 14:27 1158相当于是SSH的学习笔记,老不用,怕忘记了, ... -
制作饼图
2009-07-06 14:35 1471有学生要在毕设作品中加个饼图,根据数据库中查询出的数据 ... -
队列的一个小练习
2009-02-06 11:23 1111今天随手写了一个关于队列的小练习,总觉得不是特别贴 ... -
eclipse中的常用快捷键备忘
2008-10-26 09:48 1601推荐Ctrl+1 快速修复(最 ... -
Java语法备忘
2008-10-15 22:07 1058Java语法总结 - 基本数据类型Java不是纯的面向对象的语 ... -
关于JSP内置对象exception
2007-09-09 18:31 3958最近发现了一个问题,自己解释不清楚,很想请教一下. ... -
使用sitemesh显示ecside(eXtermeTable)初试
2007-01-18 13:35 3383在近期试图以sitemesh ... -
eXtremeComponents实现删除操作
2007-01-16 17:01 3125在使用eXtremeTable实现数据库的增删改操作时,遇到这 ... -
初涉StrutsMenu
2007-01-12 13:03 5671最近因为工作的原因,使用到了StrutsMenu, ... -
SiteMesh入门事例
2007-01-08 09:11 17041Site Mesh是open symphony团队开发的j2e ...
相关推荐
Struts-menu是一个专门为Apache ...总之,Struts-menu为基于Struts的Web应用提供了强大的菜单管理功能,通过合理的配置和资源组织,可以创建出美观、易用且动态的菜单系统,极大地提高了开发效率和应用的用户体验。
如下拉菜单(`DropDownMenu`)、简单菜单(`SimpleMenu`)、酷炫菜单(`CoolMenu`)、权限表单菜单(`PermissionsFormMenu`)、列表菜单(`ListMenu`)、标签式菜单(`TabbedMenu`)、模板引擎驱动菜单(`...
Struts-Menu是一个基于Apache Struts框架的菜单生成库,它可以帮助开发者轻松地在Web应用中创建动态、可配置的菜单结构。这个实例教程将深入介绍如何使用Struts-Menu来构建用户界面的导航系统。 1. **Struts框架...
`struts-menu`是一个开源项目,用于生成基于JSP的动态菜单。它支持多种格式的数据源,如XML、数据库等,可以方便地与Struts2的Action和结果类型结合,为Web应用提供自定义的导航结构。集成`struts-menu`能够使开发者...
Struts-menu是一个基于Java的开源项目,用于在Struts框架中生成动态菜单。这个例子是Struts-menu的一个实例,提供给需要了解或使用Struts-menu的开发者参考。下面将详细介绍Struts-menu及其在实际开发中的应用,以及...
在Struts-menu中,menu部分主要负责页面导航和菜单的生成,它与Struts的Action和ActionForm组件协同工作,提供了更方便的方式来管理和呈现网站的菜单结构。 Hibernate是一个强大的对象关系映射(ORM)框架,它简化...
4. **动态菜单**:Struts-menu支持动态生成菜单,这意味着菜单内容可以根据用户角色、权限或业务状态动态变化。这在多用户、多权限的复杂应用中非常实用。 5. **视频教程**:“速动画教程第十四集.exe”和“.rtf”...
Struts-menu是一个开源项目,主要用于在基于Struts的Web应用程序中生成动态菜单。它提供了多种显示样式,并且可以根据用户权限进行动态控制。以下是对Struts-menu集成和使用的详细说明: 首先,集成Struts-menu需要...
Struts-menu-2.0是基于Apache Struts框架的一个扩展组件,主要用于构建Web应用程序的菜单系统。这个组件的出现,极大地简化了在Struts应用中创建动态、可配置的菜单的过程,使得开发者能够更加专注于业务逻辑,而...
在实际应用中,`strutsMenu`这个文件可能是整个实例的源码或者示例项目的打包文件。它可能包含了以下内容: - `struts-menu.xml`:配置文件,定义了菜单结构。 - `MenuAction.java`:可能是一个处理菜单逻辑的...
struts-menu-2.4.jar,构建强大菜单
3. **动态生成菜单**:当用户请求页面时,Struts-menu会根据用户的权限信息,动态生成用户可以访问的菜单项和按钮。未授权的菜单和按钮将不会显示在用户界面上,从而实现了权限控制。 4. **模板渲染**:Struts-menu...
Struts-menu是一个基于Apache Struts框架的菜单管理组件,它为Web应用提供了动态生成和管理菜单的功能。在分析Struts-menu的源码时,我们可以深入理解Struts框架的工作原理、MVC模式的应用以及如何实现自定义标签库...
2. **动态菜单生成**:Struts-menu能够根据用户的登录状态和权限动态生成菜单。例如,管理员可能看到所有功能的菜单项,而普通用户只能看到他们有权访问的部分。 3. **国际化支持**:Struts-menu支持多语言环境,...
在实际开发中,Struts Menu 提供了动态生成菜单的能力,可以根据用户的权限和应用状态自动生成相应菜单,这在多用户角色和复杂权限控制的系统中尤其有用。同时,它支持国际化,可以方便地适应不同语言环境。此外,...
StrutsMenu是Struts的一个扩展,它的主要功能是自动生成Web应用的导航菜单,减轻开发者的负担,使他们可以更专注于业务逻辑。 在描述中提到了两个关键的文件: 1. struts-menu-2.4.3.jar:这是StrutsMenu的核心库...
Struts-menu是一个在Java Web开发中用于生成动态菜单的开源组件,主要应用于基于Struts框架的应用程序。这个组件能够帮助开发者从XML配置文件中提取数据,生成用户界面的菜单结构,使得应用程序的导航部分更加灵活和...
NULL 博文链接:https://guoyangjie.iteye.com/blog/870582
接下来,struts-menu是一个专门用于生成动态菜单的插件,它根据用户的权限动态生成显示的菜单项。在项目中,struts-menu会基于用户的角色和权限信息,生成仅包含用户有权访问的菜单,这样可以确保用户界面的简洁性和...