起初的工程(未引入Struts)目录结构如下
修改你的webxml配置
如下
修改之前是
estservletactionJDBCServletestservlet/estservletdelconadactiondelConadBeandelconad/delconad
加入
action
orgapachestrutsactionActionServlet
config
/WEBINF/strutsconfigxml
debug
detail
validate
true
action*do/WEBINF/strutsbeantld
/WEBINF/strutsbeantld
/WEBINF/strutshtmltld
/WEBINF/strutshtmltld
/WEBINF/strutslogictld
/WEBINF/strutslogictld
/WEBINF/strutstemplatetld
/WEBINF/strutstemplatetld
/WEBINF/strutsnestedtld
/WEBINF/strutsnestedtld
/WEBINF/strutstilestld
/WEBINF/strutstilestld
引入Struts所需的标签库
引入目录结构如下(配置文件描述)
在工程中引入Struts工程所需的jar文件
目录结构如下
引入资源文件
ApplicationResourcesproperties
内容如下
# buttons buttonsubmit=Submitbuttoncancel=nfirm=Confirmbuttonreset=Resetbuttonsave=Save
现在编写一个测试代码
编写一个提交数据库的表单jsp文件useStrutsjsp
如下
transitionaldtd><%@ 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" %>用户
密码
标题:
内容:
作者:
修改Strutsconfigxml文件
type=actionpreUsestrutsAction>
type=actionProcessUseStrutsAction
name=usestrutsForm
scope=request
input=/jsp/useStrutsjsp
validate=true>
创建两个Action
preUsestrutsActionjava ProcessUseStrutsActionjava
preUsestrutsActionjava:
代码如下
/* * $Header: d:/cvs/repository/strutsexamples/Web\Content/WEBINF/src/java/examples/SuccessActionjavav // :: sraeburn Exp $ * $Revision: $ * $Date: // :: $ * This software consists of voluntary contributions made by many * individuals on behalf of the Apache Software FoundationFor more * information on the Apache Software Foundation please see * * by huhpreal */package action;import javaxservlethttpHttpServletRequest;
import javaxservlethttpHttpServletResponse;
import orgapachestrutsactionAction;
import orgapachestrutsactionActionForm;
import orgapachestrutsactionActionForward;
import orgapachestrutsactionActionMapping;
/** ** @author huhpreal * @version $Revision: $ $Date: // :: $ */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 mappingfindForward 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 Exception {
return mappingfindForward(success);
}}
ProcessUseStrutsActionjava
代码如下
/* * $Header: d:/cvs/repository/strutsexamples/Web\Content/WEBINF/src/java/examples/dyna/ProcessDynaActionjavav // :: sraeburn Exp $ * $Revision: $ * $Date: // :: $ * * This software consists of voluntary contributions made by many * individuals on behalf of the Apache Software FoundationFor more * information on the Apache Software Foundation please see * */package action;
import javaxservlethttpHttpServletRequest;
import javaxservlethttpHttpServletResponse;
import orgapachestrutsactionAction;
import orgapachestrutsactionActionForm;
import orgapachestrutsactionActionForward;
import orgapachestrutsactionActionMapping;
import orgapachestrutsactionDynaActionForm;
import beanLinkdb;
/** * Retrieve and process data from the submitted form
* * @author huhpreal * @version $Revision: $ $Date: // :: $ */public class ProcessUseStrutsAction extends Action {
// Constructors
/** * Constructor for ProcessOptionsAction
*/
public ProcessUseStrutsAction() {
super();
}
/**
* @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 the application logic throws an exception
*
* @return the ActionForward for the next view
*/
public ActionForward execute(
ActionMapping mapping
ActionForm form
HttpServletRequest request
HttpServletResponse response)
throws Exception {
Systemoutprintln(enter into ProcessUseStrutsAction);
if (isCancelled(request)) {
return mappingfindForward(home);
}
/**
* 获取表单信息
* 这里最好用Bean实体封装
* 时间关系就不提取
*/
String user=new String();
String password=new String();
String title=new String();
String content=new String();
String author=new String();
user=(String) ((DynaActionForm) form)get(user);
password=(String) ((DynaActionForm) form)get(password);
title=(String) ((DynaActionForm) form)get(title);
content=(String) ((DynaActionForm) form)get(content);
author=(String) ((DynaActionForm) form)get(author);
/***
* 数据库操作
*/
Linkdb linkdb=new Linkdb();
String sqlstr=insert into conad (titlecontentauthor) values(+title++content++author+);
linkdbexecuteUpdate(sqlstr);
// Forward to result page
return mappingfindForward(success);
}}
测试结果
测试成功!