struts1使用的简单例子

struts1包下载地址:http://www.apache.org


第一步:建一个web工程struts1,然后解压下载到的struts压缩包-->,解压后的目录为



apps文件夹下都是一些struts1的例子,把struts-blank-1.3.10应用解压,然后把其lib目录下的jar文件拷贝到自己工程lib目录下,这些jar文件是:



第二步:在web.xml文件中添加配置,配置主要内容为:

 

  1. <servlet>  
  2.    <servlet-name>action</servlet-name>  
  3.    <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>  
  4.    <init-param>  
  5.      <param-name>config</param-name>  
  6.      <param-value>/WEB-INF/struts-config.xml</param-value>  
  7.    </init-param>  
  8.    <load-on-startup>2</load-on-startup>  
  9. </servlet>  
  10.   
  11.  <servlet-mapping>  
  12.    <servlet-name>action</servlet-name>  
  13.    <url-pattern>*.do</url-pattern>  
  14.  </servlet-mapping>  


第三步:把struts-blank-1.3.10应用下的struts-config.xml文件拷贝到自己工程WEB-INF目录下,编辑内容:

 

  1. <?xml version="1.0" encoding="ISO-8859-1" ?>  
  2. <!DOCTYPE struts-config PUBLIC  
  3.           "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"  
  4.           "http://struts.apache.org/dtds/struts-config_1_3.dtd">  
  5. <struts-config>  
  6.     <form-beans>  
  7.   <span style="color:#ff6666;"><form-bean name="loginForm" type = "com.struts1.app.form.login.LoginForm"/></span>  
  8.      </form-beans>  
  9.     <global-exceptions>  
  10.     </global-exceptions>  
  11.     <global-forwards>  
  12.         <forward  
  13.             name="welcome"  
  14.             path="/Welcome.do"/>  
  15.     </global-forwards>  
  16.     <action-mappings>  
  17.         <action  
  18.             path="/Welcome"  
  19.             forward="/pages/Welcome.jsp"/>  
  20.             <action path = "/login" name = "loginForm" scope = "request"  
  21.             type = "com.struts1.app.action.login.LoginAction" validate = "false">  
  22.             <span style="color:#ff0000;"><forward name = "success" path = "/success.jsp"/>  
  23.              <forward name = "login" path = "/login.jsp"/></span>  
  24.               
  25.             </action>  
  26.     </action-mappings>  
  27.     <message-resources parameter="MessageResources" />  
  28.     
  29.   <plug-in className="org.apache.struts.validator.ValidatorPlugIn">  
  30.     <set-property  
  31.         property="pathnames"  
  32.         value="/org/apache/struts/validator/validator-rules.xml,  
  33.                /WEB-INF/validation.xml"/>  
  34.   </plug-in>  
  35. </struts-config>  


第四步:编写LoginForm.java:

 

  1. /* 
  2.  * LoginForm.java 
  3.  */  
  4. package com.struts1.app.form.login;  
  5.   
  6. import org.apache.struts.action.ActionForm;  
  7.   
  8. @SuppressWarnings("serial")  
  9. public class LoginForm extends ActionForm{  
  10.     private String username;//要和表单的名字一样  
  11.     private String password;//要和表单的名字一样  
  12.   
  13.   
  14.     public String getUsername() {  
  15.         return username;  
  16.     }  
  17.   
  18.     public void setUsername(String username) {  
  19.         this.username = username;  
  20.     }  
  21.   
  22.     public String getPassword() {  
  23.         return password;  
  24.     }  
  25.   
  26.     public void setPassword(String password) {  
  27.         this.password = password;  
  28.     }  
  29.   
  30. }  

第五步:编写LoginAction.java:

 

  1. package com.struts1.app.action.login;  
  2.   
  3. import javax.servlet.http.HttpServletRequest;  
  4. import javax.servlet.http.HttpServletResponse;  
  5.   
  6. import org.apache.struts.action.Action;  
  7. import org.apache.struts.action.ActionForm;  
  8. import org.apache.struts.action.ActionForward;  
  9. import org.apache.struts.action.ActionMapping;  
  10.   
  11. import com.struts1.app.form.login.LoginForm;  
  12.   
  13. public class LoginAction extends Action{  
  14.   
  15.     @Override  
  16.     public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {  
  17.         // TODO Auto-generated method stub  
  18.         String str = "";  
  19.         LoginForm login = (LoginForm) form;  
  20.         if (login.getUsername().equals("") || login.getPassword().equals("") || login.getUsername() == null || login.getPassword() == null) {  
  21.             request.setAttribute("message""用户名或密码不能为空!");  
  22.             str = "login";  
  23.         } else if (login.getUsername().equals("zhangsan") && login.getPassword().equals("123")) {  
  24.             str = "success";  
  25.         }  
  26.         return mapping.findForward(str);  
  27.     }  
  28.   
  29. }  


第六步:编写jsp页面:

login.jsp

 

  1. <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>  
  2. <%  
  3. String path = request.getContextPath();  
  4. String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";  
  5. %>  
  6.   
  7. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
  8. <html>  
  9.   <head>  
  10.     <base href="<%=basePath%>">  
  11.   </head>  
  12.   <body>  
  13. <span style="color:#ff0000;">   <form </span><span style="color:#3333ff;">action = "login.do"</span><span style="color:#ff0000;"> method = "post">  
  14.    用户名:<input type = "text" name = "username" /><br/>  
  15.    密 码:<input type = "password" name = "password"/></br>  
  16.    <input type = "submit" value = "登录"/>  
  17.      
  18.    </form></span>  
  19. <span style="color:#ff0000;">     <%  
  20.   String mess = (String)request.getAttribute("message");  
  21.   if(mess!=null){  
  22.   out.print("<script language = 'javascript'>alert('"+mess+"')</script>");  
  23.   }  
  24.    %></span>  
  25.      
  26.   </body>  
  27. </html>  


success.jsp:

 

  1. <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>  
  2. <%  
  3. String path = request.getContextPath();  
  4. String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";  
  5. %>  
  6. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
  7. <html>  
  8.   <head>  
  9.     <base href="<%=basePath%>">  
  10.   </head>  
  11.   <body>  
  12. <span style="color:#ff0000;">  <script language = "javascript">  
  13.   alert("登陆成功!");  
  14.   </script></span>  
  15.   </body>  
  16. </html>  

第七步:

在地址栏输入http://localhost:8080/struts1/login.jsp运行


整个工程架构:


posted @ 2012-09-09 21:12  张兰云  阅读(920)  评论(0编辑  收藏  举报