struts2框架學習筆記7:struts2標簽
阿新 • • 發佈:2018-02-23
put 取值 div private sub pan 不常用 筆記 textarea
三大標簽:
1.JSP:腳本,為了替代servlet,已過時
2.JSTL:標準標簽庫(core、format、sql、xml),還未淘汰的只有core庫
3.Struts2標簽庫:由Struts2開發團隊開發,功能更加強大
struts2標簽分為:普通標簽、UI標簽
普通標簽分:控制標簽,數據標簽
UI標簽分:表單標簽,非表單標簽
準備一些數據:
List<String> list = new ArrayList<>(); list.add("tom"); list.add("jerry"); list.add("jack"); list.add("rose"); ActionContext.getContext().put("list", list);
普通標簽示例:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib prefix="s" uri="/struts-tags" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> <!-- 遍歷標簽 iterator --> <!-- ------------------------------------- --> <s:iterator value="#list" > <s:property/><br> </s:iterator> <!-- ------------------------------------- --><hr> <s:iterator value="#list" var="name" > <s:property value="#name" /><br> </s:iterator> <!-- ------------------------------------- --><hr> <s:iterator begin="1" end="100" step="1" > <s:property />| </s:iterator> <!-- ------------------if else elseif標簽------------------- --><hr> <s:if test="#list.size()==4"> list長度為4! </s:if> <s:elseif test="#list.size()==3"> list長度為3! </s:elseif> <s:else> list長度不為3也不為4! </s:else> <!-- ------------------property 配合ognl表達式頁面取值 ------------------- --><hr> <s:property value="#list.size()" /> <s:property value="#session.user.name" /> </body> </html>
表單標簽(不常用):
<!-- struts2表單標簽 --> <!-- 好處1: 內置了一套樣式. --> <!-- 好處2: 自動回顯,根據棧中的屬性 --> <!-- theme:指定表單的主題 xhtml:默認 simple:沒有主題 --> <s:form action="Demo3Action" namespace="/" theme="xhtml" > <s:textfield name="name" label="用戶名" ></s:textfield> <s:password name="password" label="密碼" ></s:password> <s:radio list="{‘男‘,‘女‘}" name="gender" label="性別" ></s:radio> <s:radio list="#{1:‘男‘,0:‘女‘}" name="gender" label="性別" ></s:radio> <s:checkboxlist list="#{2:‘抽煙‘,1:‘喝酒‘,0:‘打遊戲‘}" name="habits" label="愛好" ></s:checkboxlist> <s:select list="#{2:‘大專‘,1:‘本科‘,0:‘碩士‘}" headerKey="" headerValue="---請選擇---" name="edu" label="學歷" > </s:select> <s:file name="photo" label="近照" ></s:file> <s:textarea name="desc" label="個人簡介" ></s:textarea> <s:submit value="提交" ></s:submit> </s:form> <s:actionerror/>
Action:
package tag; import com.opensymphony.xwork2.ActionSupport; public class Demo3Action extends ActionSupport { private String name; public String execute() throws Exception { System.out.println(name); this.addActionError("錯誤"); return SUCCESS; } public String getName() { return name; } public void setName(String name) { this.name = name; } }
struts2框架學習筆記7:struts2標簽