JSF它既是 Java Web 应用程序的用户界面标准又是严格遵循模型-视图-控制器设计模式的框架。那jsf框架常用的标签有哪些?下面来我们就来给大家讲解一下jsf框架常用的标签。
1.h:commandButton 删除一个对象。
<h:commandButton value="删除厨房" οnclick="return confirm('确定删除?')" action="#{kitchenController.delete()}"> <f:setPropertyActionListener target="#{kitchenController.kitchen.id}" value="#{kitchen.id}"/> < /h:commandButton>
2.点击 h:selectOneRadio 刷新。
<f:selectItem itemValue="all" itemLabel="全部"/> < f: selectItem itemValue = "can" itemLabel = "看允许发布餐饮的厨房" / > <f:selectItem itemValue="cannot" itemLabel="看不允许发布餐饮的厨房"/> < /h:selectOneRadio>
3.按钮提交 h:selectOneRadio 的更新。
针对该厨房的订单,是否需要中央管理后台审核
<h:form> <span>针对该厨房的订单,是否需要中央管理后台审核</span><br></br> <h:selectOneRadio value="#{kitchen.needAuditOrders}"> <f:selectItem itemValue="true" itemLabel="需要审核"/> <f:selectItem itemValue="false" itemLabel="不需要审核"/> </h:selectOneRadio> <h:commandButton value="提交" action="#{kitchenController.modifyCheck()}" class="submit_review"> <f:setPropertyActionListener target="#{kitchenController.kitchen.id}" value="#{kitchen.id}" /> <f:setPropertyActionListener target="#{kitchenController.kitchen.needAuditOrders}" value="#{kitchen.needAuditOrders}"/> </h:commandButton> </h:form>
public List<Kitchen> getKitchens(){ if(kitchens != null && !refreshList){ return kitchens; } // 其他代码 return kitchens; }
4.f:validateRegex 匹配电话。
<label for="admin_contact">联系电话(如:13866669999)</label> < h: message for = "admin_contact" style = "color:red" class = "error-message" / > <h:inputText value="#{kitchenController.adminTel}" validatorMessage="格式不正确" requiredMessage="必填" required="true" id="admin_contact" class="text ui-widget-content ui-corner-all"> <f:validateRegex pattern="((?=.*\d).{11})" /> </h:inputText>
或
<f:validateRegex pattern="((?=.*\d)(?=.*[-]).{12}|(?=.*\d).{11})" /> 5. c: if < c: forEach var = "admin" items = "#{kitchenController.admins}" > <c:if test="#{admin.loginId == kitchen.adminId}"> <span>duty:</span><span class="admin_role">#{admin.duty}</span> <span>tel:</span><span class="admin_contact">#{admin.tel}</span> </c:if> < /c:forEach> 6. c: choose < c: choose > <c:when test="${..}">...</c:when> < !-- if condition-- > <c:when test="${..}">...</c:when> < !-- else if condition-- > <c:otherwise>...</c:otherwise> < !-- else condition-- > </c:choose>
jsf的生命周期是怎样的?
FacesServlet 充当用户和 JSF 应用程序之间的纽带。它在明确限定的 JSF 生命周期(规定了用户请求之间的整个事件流)的范围内工作。
1. 当JSF页面上的一个事件发生时(比如:用户单击了一个按钮),事件通知通过HTTP发往服务器。服务器端使用FacesServet这个特殊的Servlet处理该通知。
2. FacesServlet一接收到用户的请求就创建一个FacesContext对象(JSF上下文,它存放了应用程序的所有数据)。在处理过程中,主要修改的就是这个FaceContext对象。
3. 接着就是处理过程,处理器是一个叫作Lifecycle的对象。FacesServet把控制权转交给Lifecycle对象。该对象分6个阶段来处理FacesContext对象以生成响应,最后将响应发回客户端。
Lifecycle对象处理JSP请求所需要的一系列动作称为请求处理生命周期。过程状态图如下:
jsf框架提供了一种以组件为中心的用户界面构建方法,从而简化了Java服务器端应用程序的开发。最后大家如果想要了解更多java架构师知识,敬请关注奇Q工具网。
推荐阅读: