如何在Web工程项目中使用Struts

王朝other·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

起初的工程(未引入Struts)目录结构如下:

修改你的web.xml配置

如下:

修改之前是:

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"><web-app><!-- The mapping for the default servlet --><servlet><servlet-name>estservlet</servlet-name><servlet-class>action.JDBCServlet</servlet-class></servlet><servlet-mapping><servlet-name>estservlet</servlet-name><url-pattern>/estservlet</url-pattern></servlet-mapping><servlet><servlet-name>delconad</servlet-name><servlet-class>action.delConadBean</servlet-class></servlet><servlet-mapping><servlet-name>delconad</servlet-name><url-pattern>/delconad</url-pattern></servlet-mapping></web-app>

加入:

<!-- import Struts MVC framework--><!-- Standard Action Servlet Configuration 标准Struts Action Servlet 配置--><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>

<init-param>

<param-name>validate</param-name>

<param-value>true</param-value>

</init-param>

<load-on-startup>2</load-on-startup></servlet><!-- Standard Action Servlet Mapping标准Struts .do请求--><servlet-mapping><servlet-name>action</servlet-name><url-pattern>*.do</url-pattern></servlet-mapping><!--Struts Tag Library Descriptors Struts 标签--><taglib>

<taglib-uri>/WEB-INF/struts-bean.tld</taglib-uri>

<taglib-location>/WEB-INF/struts-bean.tld</taglib-location>

</taglib>

<taglib>

<taglib-uri>/WEB-INF/struts-html.tld</taglib-uri>

<taglib-location>/WEB-INF/struts-html.tld</taglib-location>

</taglib>

<taglib>

<taglib-uri>/WEB-INF/struts-logic.tld</taglib-uri>

<taglib-location>/WEB-INF/struts-logic.tld</taglib-location>

</taglib>

<taglib>

<taglib-uri>/WEB-INF/struts-template.tld</taglib-uri>

<taglib-location>/WEB-INF/struts-template.tld</taglib-location>

</taglib>

<taglib>

<taglib-uri>/WEB-INF/struts-nested.tld</taglib-uri>

<taglib-location>/WEB-INF/struts-nested.tld</taglib-location>

</taglib>

<taglib>

<taglib-uri>/WEB-INF/struts-tiles.tld</taglib-uri>

<taglib-location>/WEB-INF/struts-tiles.tld</taglib-location>

</taglib>

引入Struts所需的标签库

引入目录结构如下:(配置文件描述)

在工程中引入Struts工程所需的.jar文件

目录结构如下:

引入资源文件:

ApplicationResources.properties

内容如下:

# -- buttons --button.submit=Submitbutton.cancel=Cancelbutton.confirm=Confirmbutton.reset=Resetbutton.save=Save

现在编写一个测试代码:

编写一个提交数据库的表单jsp文件useStruts.jsp:

如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><%@ page language="java" contentType="text/html; charset=utf-8" %><%@ taglib url="/WEB-INF/struts-html.tld" prefix="html" %><%@ taglib url="/WEB-INF/struts-bean.tld" prefix="bean" %><html:html xhtml="true" locale="true"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>使用 Struts DynaActionForm 插入Mysql数据库</title><html:base/><link rel="stylesheet" type="text/css" href="../css/example.css" /></head><body><html:errors/><html:form action="/insertmysql.do"><p>用户:<br/><html:text property="user" size="40" maxlength="20"/></p><p>密码:<br/><html:text property="password" size="40" maxlength="20"/></p><p>标题:<br/><html:text property="title" size="40" maxlength="50"/></p><p>内容:<br/><html:text property="content" size="40" maxlength="50"/></p><p>作者:<br/><html:text property="author" size="40" maxlength="50"/></p></html:form></body></html:html>修改Struts-config.xml文件:<form-beans>

<!-- DynaActionForm Bean for usesturts -->

<form-bean name="usestrutsForm" type="org.apache.struts.action.DynaActionForm">

<form-property name="user" type="java.lang.String" />

<form-property name="password" type="java.lang.String" />

<form-property name="title" type="java.lang.String" />

<form-property name="content" type=" java.lang.String " />

<form-property name="author" type="java.lang.String" />

</form-bean>

</form-beans><!-- ========== Action Mapping Definitions ============================= -->

<action-mappings>

<!-- usersturts ActionForm ===================================== -->

<action path="/prepareUsestruts"

type="action.preUsestrutsAction">

<forward name="success" path="/jsp/useStruts.jsp"/>

</action>

<action path="/processUsestruts"

type="action.ProcessUseStrutsAction"

name="usestrutsForm"

scope="request"

input="/jsp/useStruts.jsp"

validate="true">

<forward name="success" path="/jsp/useStruts.jsp"/>

</action>

</action-mappings>

创建两个Action:

preUsestrutsAction.java 、ProcessUseStrutsAction.java

preUsestrutsAction.java:

代码如下:

/* * $Header: d:/cvs/repository/struts-examples/Web\040Content/WEB-INF/src/java/examples/SuccessAction.java,v 1.2 2003/06/13 06:23:13 sraeburn Exp $ * $Revision: 1.2 $ * $Date: 2005/11/25 06:23:13 $ * This software consists of voluntary contributions made by many * individuals on behalf of the Apache Software Foundation.For more * information on the Apache Software Foundation, please see * <http://www.apache.org/>. * by huhpreal */package action;import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;

import org.apache.struts.action.ActionForm;

import org.apache.struts.action.ActionForward;

import org.apache.struts.action.ActionMapping;

/** ** @author huhpreal * @version $Revision: 1.2 $ $Date: 2003/06/13 06:23:13 $ */public class preUsestrutsAction extends Action {

// ------------------------------------------------------------Constructors

/**

* Constructor for SuccessAction.

*/

public preUsestrutsAction() {

super();

}

// ---------------------------------------------------------- Action Methods

/**

* @param mapping The ActionMapping used to select this instance

* @param form The optional ActionForm bean for this request (if any)

* @param request The HTTP request we are processing

* @param response The HTTP response we are creating

*

* @exception Exception if mapping.findForward throws an Exception

*

* @return the "success" ActionForward, or null if it cannot be found

*/public ActionForward execute(

ActionMapping mapping,

ActionForm form,

HttpServletRequest request,

HttpServletResponse response)

throws Excep

[1] [2] 下一页

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航