struts簡介:html
Struts是Apache軟件基金會(ASF)贊助的一個開源項目。它最初是Jakarta項目中的一個子項目,並在2004年3月成爲ASF的頂級項目。它經過採用Java Servlet/JSP技術,實現了基於Java EE Web應用的Model-View-Controller(MVC)設計模式的應用框架,是MVC經典設計模式中的一個經典產品。java
優缺點:apache
<dependency> <groupId>org.apache.struts</groupId> <artifactId>struts2-core</artifactId> <version>2.5.13</version> </dependency>
而後導入xml文件:設計模式
base.xml文件配置架構
寫一個控制器 寫上須要測試的方法框架
在struts-sy.xml中配置好 jsp
最後寫一個jsp界面來測試ide
完成。學習
jsp參數傳遞到後臺有三種方式測試
1.implements modelDrivern接受參數值
2.類實例。屬性名 接受參數值
3.set/get接受參數值
寫好實體類
jsp界面
以上報錯爲假報錯可忽略。
控制器接受值而後取出值
/** * implements modelDrivern接受參處值 * @return */ public String accept1() { System.out.println("cal1="+cal1); } /** * 類實例。屬性名 接受參處值 * @return */ public String accept2() { System.out.println("cal2="+cal2); return "rs"; } /** * set/get接受參處值 * @return */ public String accept3() { System.out.println(sex); return "rs"; }
後臺傳值到jsp界面
一是注入
二是非注入
public class HelloAction implements ModelDriven<Cal>,ServletRequestAware{ //注入耦合 private HttpServletRequest req; private Cal cal1=new Cal(); private Cal cal2; private String sex; public Cal getCal2() { return cal2; } public void setCal2(Cal cal2) { this.cal2 = cal2; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public String add() { System.out.println("調用add方法。。。。"); return "rs"; } public String del() { System.out.println("調用del方法"); return "rs"; } /** * implements modelDrivern接受參處值 * @return */ public String accept1() { System.out.println("cal1="+cal1); // req.setAttribute("cal1", cal1); //非注入耦合 HttpServletRequest request=ServletActionContext.getRequest(); request.setAttribute("cal1", cal1); //非注入解耦 // ActionContext context=ActionContext.getContext(); // context,get("xxxxxxx"); return "rs"; } /** * 類實例。屬性名 接受參處值 * @return */ public String accept2() { System.out.println("cal2="+cal2); return "rs"; } /** * set/get接受參處值 * @return */ public String accept3() { System.out.println(sex); return "rs"; } @Override public Cal getModel() { // TODO Auto-generated method stub return cal1; } @Override public void setServletRequest(HttpServletRequest req) { this.req=req; } }
在jsp界面測試
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!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> 結果頁 ${cal1} </body> </html>
顯示:
成功;