从零搭建SSH项目之Struts2项目

这篇文章主要是介绍一下如何从零开始搭建一个Struts2项目。这段时间遇到了很多这样的例子就是有很多工程师知道某些代码如何实现就是在面试过程中手写程序的时候遇到有的关键字不会写,这样就导致了很尴尬的问题,所以以后有机会要尽量的手写代码而不是过多的依赖于IDE。有时候IDE真的就是一把双刃剑,它能够让高手更高、让菜鸟更菜。言归正传,下面就一步一步的徒手建立一个Struts2项目。搭建此项目大致需要五步:
    第一步、准备Struts2项目必备的Jar包。Struts2项目中必备的Jar包一共有5个分别是freemarker-2.3.13.jar、 ognl-2.6.11.jar、struts2-core-2.1.6.jar、xwork-2.1.2.jar、commons-fileupload-1.2.1.jar。这五个包在本人机器上测试过能够正常启动,缺少一个项目就无法正常启动。
    第二步、搭建项目文件结构。首先在磁盘的一个位置新建一个文件夹命名struts_demo(项目的名字),然后再struts_demo文件夹下面新建文件夹WEB-INF,然后再WEB-INF下面创建两个文件夹classes(放class文件)、lib(放项目中的Jar包)。这样就把项目的文件夹结构搭建完毕。然后将第一步准备的Jar包放入lib文件夹中
    第三步、准备项目的视图文件。视图文件主要包括login.jsp、error.jsp、success.jsp三个文件。

    其中login.jsp的代码如下:

    

[html]  view plain copy
  1. <%@ page language="java" pageEncoding="UTF-8"%>  
  2. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
  3. <html>  
  4.     <head>  
  5.         <title>演示struts2</title>  
  6.     </head>  
  7.     <body>  
  8.         <form action="login.action">  
  9.             <table>  
  10.                 <tr>  
  11.                     <td>  
  12.                         用户名:  
  13.                     </td>  
  14.                     <td>  
  15.                         <input type="text" name="userName" />  
  16.                     </td>  
  17.                 </tr>  
  18.                 <tr>  
  19.                     <td>  
  20.                         密码:  
  21.                     </td>  
  22.                     <td>  
  23.                         <input type="password" name="password" />  
  24.                     </td>  
  25.                 </tr>  
  26.                 <tr>  
  27.                     <td colspan="2">  
  28.                         <input type="submit" value="提交">  
  29.                         <input type="reset" value="重置">  
  30.                     </td>  
  31.                 </tr>  
  32.             </table>  
  33.         </form>  
  34.     </body>  
  35. </html>  

    其中error.jsp的代码如下:

    

[html]  view plain copy
  1. <%@ page language="java" pageEncoding="UTF-8"%>  
  2. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
  3. <html>  
  4.     <head>  
  5.         <title>演示struts2</title>  
  6.     </head>  
  7.     <body>  
  8.         <form action="login.action">  
  9.             <table>  
  10.                 <tr>  
  11.                     <td>  
  12.                         失败!  
  13.                     </td>  
  14.                 </tr>  
  15.             </table>  
  16.         </form>  
  17.     </body>  
  18. </html>  

    其中success.jsp的代码如下:
    
[html]  view plain copy
  1. <%@ page language="java" pageEncoding="UTF-8"%>  
  2. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  
  3. <html>  
  4.     <head>  
  5.         <title>演示struts2</title>  
  6.     </head>  
  7.     <body>  
  8.         <form action="login.action">  
  9.             <table>  
  10.                 <tr>  
  11.                     <td>  
  12.                         成功!  
  13.                     </td>  
  14.                 </tr>  
  15.             </table>  
  16.         </form>  
  17.     </body>  
  18. </html>  



    第四步、准备项目的控制器组件。这里的控制器就是项目中的action,在本示例中将其命名为LoginAction.

    其中LoginAction.java的代码如下:

    

[java]  view plain copy
  1. package com.qingfeilee.struts2demo;  
  2.   
  3. public class LoginAction {  
  4.     private String userName;  
  5.     private String password;  
  6.     public String execute()throws Exception{  
  7.         if(userName.equals("1")){  
  8.             System.out.println(userName+"    "+password);  
  9.             return "success";  
  10.         }else{  
  11.             System.out.println(userName+"    "+password);  
  12.             return "error";  
  13.         }  
  14.     }  
  15.     public String getUserName() {  
  16.         return userName;  
  17.     }  
  18.     public void setUserName(String userName) {  
  19.         this.userName = userName;  
  20.     }  
  21.     public String getPassword() {  
  22.         return password;  
  23.     }  
  24.     public void setPassword(String password) {  
  25.         this.password = password;  
  26.     }  
  27.       
  28. }  

    第五步、准备项目配置文件。刚开始需要的两个最基本的配置文件分别是web.xml和struts.xml。

    其中web.xml的代码如下:

    

[html]  view plain copy
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <web-app version="2.5"   
  3.     xmlns="http://java.sun.com/xml/ns/javaee"   
  4.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   
  5.     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   
  6.     http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">  
  7.       
  8.     <filter>  
  9.         <filter-name>Struts2</filter-name>  
  10.         <filter-class>  
  11.             org.apache.struts2.dispatcher.FilterDispatcher  
  12.         </filter-class>  
  13.     </filter>  
  14.     <filter-mapping>  
  15.         <filter-name>Struts2</filter-name>  
  16.         <url-pattern>/*</url-pattern>  
  17.     </filter-mapping>  
  18.       
  19. </web-app>  

    其中struts.xml的代码如下:

    

[html]  view plain copy
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <!DOCTYPE struts PUBLIC   
  3.     "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"  
  4.     "http://struts.apache.org/dtds/struts-2.0.dtd">  
  5. <struts>  
  6.     <package name = "struts2" extends = "struts-default">  
  7.         <action name = "login" class = "com.qingfeilee.struts2demo.LoginAction">  
  8.             <result name = "error">/error.jsp</result>  
  9.             <result name = "success">/success.jsp</result>  
  10.         </action>  
  11.     </package>  
  12. </struts>  

    在这里需要注意的是需要struts.xml放在了classes的跟目录下。

    到这里整个项目就创建完毕,将项目放到tomcat的webapp下面启动tomcat即可通过浏览器来访问本项目。下周将会介绍一下如何创建一个hibernate项目。以此demo来奋斗在技术一线的战友共同进步。

       如有不对还请各位指正和补充,如需转载还需注明出处http://blog.youkuaiyun.com/qingfeilee/article/details/7296281,谢谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值