java

位置:IT落伍者 >> java >> 浏览文章

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


发布日期:2019年01月20日
 
如何在Web工程项目中使用Struts

起初的工程(未引入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);

}}

测试结果

测试成功!

上一篇:Spring 结合 Hibernate 配置 C3P0

下一篇:spring,ioc模式与ejb3的SLSB实现