struts第三篇:第一个struts程序

来源:互联网 发布:近几年网络流行体研究 编辑:程序博客网 时间:2024/05/01 12:16

         应用struts写程序,首先要搭建struts环境。

         搭建struts环境的步骤:

         1.首先要把struts打包好的jar包拷贝到WEB-INF\lib文件夹下。

         2.在web.xml文件中配置actionservlet。在struts的bin\webapps文件夹下有struts-blank项目。其中的web.xml文件是标准配置。

  <!-- Standard Action Servlet Configuration (with debugging) -->  <servlet>    <servlet-name>action</servlet-name>    <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>    <init-param>      <param-name>config</param-name>      <param-value>/WEB-INF/struts-config.xml</param-value>    </init-param>    <init-param>      <param-name>debug</param-name>      <param-value>2</param-value>    </init-param>    <init-param>      <param-name>detail</param-name>      <param-value>2</param-value>    </init-param>    <load-on-startup>2</load-on-startup>  </servlet>  <!-- Standard Action Servlet Mapping -->  <servlet-mapping>    <servlet-name>action</servlet-name>    <url-pattern>*.do</url-pattern>  </servlet-mapping>

3.将标准的struts-config.xml文件拷贝到WEB-INF下,配置相关的标签。

<struts-config><form-beans><form-bean name="loginForm" type="com.tgb.struts.LoginActionForm"/></form-beans><action-mappings><action path="/login"type="com.tgb.struts.LoginAction"name="loginForm"scope="request"><forward name="success" path="/login_success.jsp"/><forward name="error" path="/login_error.jsp"/></action></action-mappings></struts-config>

         form-beans标签中配置的为actionform,action-mappings标签中配置的为action信息。Struts的中心控制器就是通过读取这些配置文件,来创建actionform和相应的action的。Forward标签为相应的转向信息,action的execute方法返回的为ActionForward信息,forward标签就是配置的就是其转向的相关信息。

第一个struts程序代码

         Login.jsp中代码:

<body>   <form action="login.do"method="post">      用户名:<input type="text" name="username"/><br/>      密     码:<input type="password" name="password"/><br/>      <input type="submit" value="登录"/>   </form></body>

   LoginAction中代码:

public class LoginAction extends Action {public ActionForward execute(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response)throws Exception {//相当于实体actionformLoginActionForm laf = (LoginActionForm)form;String username = laf.getUsername();String password = laf.getPassword();UserManager userManager = new UserManager();try{userManager.login(username, password);return mapping.findForward("success");}catch(UserNotFoundException e){e.printStackTrace();request.setAttribute("msg", "user can't be found,username=["+ username +"]");}catch(PassWordErrorException e){e.printStackTrace();request.setAttribute("msg", "password error");}return mapping.findForward("error");}}


         在利用struts开发程序的时候,就省去了servlet,是因为servlet已经被封装了起来,我们只需要按照它规定的格式去配置struts-config.xml文件,struts中的servlet就会读取这个配置文件来实例化不同的类。这样为我们开发省去了很多时间,也实现了灵活配置。



原创粉丝点击