用一个managedbean存储当前的导航图片及对应的链接
时间: 2023-04-01 20:04:38 浏览: 59
可以使用一个Map来存储当前的导航图片及对应的链接,其中键为图片的名称,值为链接的地址。在ManagedBean中定义一个Map类型的属性,然后在页面中通过EL表达式来访问这个属性,从而实现导航图片的展示和链接的跳转。具体实现可以参考以下代码:
```
import java.util.HashMap;
import java.util.Map;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
@ManagedBean
@SessionScoped
public class NavigationBean {
private Map<String, String> navImages;
public NavigationBean() {
navImages = new HashMap<String, String>();
navImages.put("home", "/index.xhtml");
navImages.put("about", "/about.xhtml");
navImages.put("contact", "/contact.xhtml");
}
public Map<String, String> getNavImages() {
return navImages;
}
public void setNavImages(Map<String, String> navImages) {
this.navImages = navImages;
}
}
```
在页面中可以这样使用:
```
<h:panelGrid columns="3">
<ui:repeat value="#{navigationBean.navImages}" var="entry">
<h:graphicImage value="/resources/images/#{entry.key}.png" />
<h:outputLink value="#{entry.value}">
#{entry.key}
</h:outputLink>
</ui:repeat>
</h:panelGrid>
```