How to build a dynamic menu
嘿,我是使用 jsf 的新手,所以我想用从数据库加载的项目构建一个动态菜单,但我不确定我需要什么功能或如何为菜单构建支持 bean。我已经创建了数据库和三个表 Rol、User、Rol x User、Items。还有什么是项目表的好属性??.
每个
然后要创建菜单,使用 Primefaces 从数据库动态获取项目,您可以使用
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | //MenuBean model = new DefaultMenuModel(); //First submenu DefaultSubMenu firstSubmenu = new DefaultSubMenu("Dynamic Submenu"); DefaultMenuItem item = new DefaultMenuItem("External"); item.setUrl("http://www.primefaces.org"); item.setIcon("ui-icon-home"); firstSubmenu.addElement(item); model.addElement(firstSubmenu); //Second submenu ... |
然后在 .xhtml 文件中输入如下内容:
1 | <p:menu model="#{menuBean.model}"/> |
但是要生成从数据库中获取值的菜单,您可以使用 DAO 从您的实体中获取 MenuItems。
如果您的菜单具有 n 级格式,它可能会成为一种方便的递归方法来生成
如果您想了解有关
Primefaces 为您提供了一种使用
1 2 3 4 5 6 7 8 9 10 | public class MenuBean { private MenuModel model; public MenuBean() { // Build your menu here } // Gets and sets } |
在你的脸上:
1 | <p:menu model="#{menuBean.model}"/> |
更多细节:
http://www.primefaces.org/showcase/ui/menu.jsf