分享
 
 
 

struts简单例子的分析(含代码注释和配置文件说明)

王朝other·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

<!-- 以下仅为个人经验,供大家参考。不足或谬误之处请大家指教 -->

<!-- 徐建明 -->

首先你要对你的环境进行配置

配置TomCat环境

1、到我的机器(IP为192.1.168.7,用户为Guest,口令没有)上的"共享"目录中,拷贝j2sdk-1_4_2_02-windows-i586-p.exe、jakarta-tomcat-5.0.14.zip、jakarta-struts-1.1.zip三个压包文件。

2、先双击j2sdk-1_4_2_02-windows-i586-p.exe安装jdk,最好安装到一个根目录下。在此假设安装在D:j2sdk1.4.2_02下。

3、安装TOMCAT。TOMCAT不用安装,只用直接解压jakarta-tomcat-5.0.14.zip到硬盘上。假设解压到D:TOMCAT下。

4、配置环境变量。右键点击"我的电脑"图标,选择"高级"子项,点击"环境变量"按扭。在"系统变量"中新建如下几个环境变量:

名称 键值 说明

Java_HOME D:j2sdk1.4.2_02 就是你的JDK的安装目录

CLASSPATH .;%JAVA_HOME%LIB

5、解压jakarta-struts-1.1.zip到任一目录,将其中jakarta-struts-1.1webapp目录下的struts-example.war文件拷贝到TOMCAT下的omcatwebapps中

6、进入omcatin目录,点击startup.bat以启动TomCat。(TomCat启动后点击shutdown.bat可关闭)

7、让TomCat在后台运行,打开ie,在地址栏中输入http://localhost:8080/可进入TomCat的主页,输入http://localhost:8080/struts-example可进入struts的一个例子。

祝大家安装顺利 :)

然后,我们来看一下STRUTS例子中的最重要的两个文件,这两个都是配置文件,

struts-config.XML(具体配置的情况我作了注释)

<?xml version="1.0" encoding="ISO-8859-1" ?>

<!DOCTYPE struts-config PUBLIC

"-//Apache Software Foundation//DTD Struts Configuration 1.1//EN"

"http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">

<!--

This is the Struts configuration file for the example application,

using the proposed new syntax.

-->

<struts-config>

<!-- ========== Form Bean Definitions =================================== -->

<!-- FormBean是struts的一个概念,本质是JavaBean,用来自动存储页面表单中各个域的值,并在适当的时候回填表单域,不需要象传统那样request.getParameter("fieldName");,常被action-mappings中的action 使用 -->

<form-beans>

<!-- 稍后我们会新增一个GetparameterForm类,用来存储用户信息 -->

<form-bean name="GetParameterForm" type="beans.GetParameterForm"/>

</form-beans>

<!-- ========== Global Forward Definitions ============================== -->

<!--这里存放整个系统都可以使用的全局转向中转(Forward)地址 -->

<!-- 一般情况下,一个Action处理完毕后,会转发到一个jsp页面进行显示。这也是JSP中的MVC的实现的要点。-->

<global-forwards>

<!--failed.do和sUCcess.do将被当成servlet请求,到action-mappings中寻找对应的action处理。-->

<forward name="success" path="/success.do"/>

<forward name="fail" path="/fail.do"/>

</global-forwards>

<!-- ========== Action Mapping Definitions ============================== -->

<!--web.xml中后缀为.do的请求被转到这里处理。这里相当于struts的Model部分,Model部分是struts中比较灵活的地方。-->

<action-mappings>

<!--处理showinput.do的请求,使用的FormBean是GetparameterForm,既beans.GetParameterForm类,当处理过程发生错误时将返回index.jsp-->

<action path="/showinput" type="beans.ShowAction" name="GetParameterForm" scope="request" input="/index.jsp" />

<action path="/success" forward="/success.jsp"/>

<action path="/fail" forward="/error.jsp" />

</action-mappings>

</struts-config>

web.xml(具体配置的情况我作了注释)

<!-- Action Servlet Mapping -->

<!--该系统的servlet可以映射成.do为后缀的文件,后缀名可以改成任何名称.-->

<servlet-mapping>

<servlet-name>action</servlet-name>

<url-pattern>*.do</url-pattern>

</servlet-mapping>

<!-- The Welcome File List -->

<!--该系统的默认首页是index.jsp,可以有多个,系统按次序找,类似IIS-->

<welcome-file-list>

<welcome-file>index.jsp</welcome-file>

</welcome-file-list>

<!-- Application Tag Library Descriptor -->

<!-- 定义标签库 -->

<!--

<taglib>

<taglib-uri>/WEB-INF/app.tld</taglib-uri>

<taglib-location>/WEB-INF/app.tld</taglib-location>

</taglib>

-->

</web-app>

这两个文件是我们用JDK+TOMCAT+STRUTS的基本配置,注重:在更改了这个配置后需要对TOMCAT进行重新启动!

在你的目录中存放你的.JSP文件,他们的编写你可以使用Html或FRONGPAGE等工具编写,对于大家这个是比较简单的,在此我就不再觜书,代码如下:

INDEX.JSP

<%@ page contentType="text/html;charset=gb2312"%>

<%@ page import="java.util.*,java.sql.*,java.text.*,java.io.*"%>

<form name="form1" method="post" action="showinput.do">

输入success将返回到"success"页面,否则返回到"fail"页面<br><br>

input:<input type="text" name="valu"><input type="submit" value="submit">

</form>

<br>

<a href="success.do">success</a><br>

<a href="fail.do">fail</a>

SUCCESS.JSP

<%@ page contentType="text/html;charset=gb2312"%>

<%@ page import="java.util.*,java.sql.*,java.text.*,java.io.*"%>

success!

ERROR.JSP

<%@ page contentType="text/html;charset=gb2312"%>

<%@ page import="java.util.*,java.sql.*,java.text.*,java.io.*"%>

error page!

再在你的文件夹WEB-INFclasseseans中我们编写需要处理消息请求的类。具体代码如下:

GetParameterForm.java

package beans;

import org.apache.struts.action.ActionForm;

public class GetParameterForm extends ActionForm

{

private String valu="null";

public GetParameterForm() {

}

public void setValu(String s) {

valu = s;

}

public String getValu() {

return valu;

}

}

ShowAction.java

package beans;

import java.lang.reflect.InvocationTargetException;

import java.util.Locale;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpSession;

import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.*;

import org.apache.struts.util.*;

public final class ShowAction extends Action

{

public ActionForward execute(ActionMapping mapping,

ActionForm form,

HttpServletRequest request,

HttpServletResponse response)

throws Exception {

Locale locale = getLocale(request);

MessageResources messages = getResources(request);

HttpSession session = request.getSession();

GetParameterForm userform = (GetParameterForm) form;

if(userform.getValu().equals("success")) {

return(mapping.findForward("success"));

}

else {

System.out.println(userform.getValu());

return(mapping.findForward("fail"));

}

}

}

最后你可以运行了。

在TOMCAT中地址中填写http://localhost:8080/你的文件夹/

这是一个简单的例子,希望大家能喜欢,不知道我的讲解是否正确,请指教!

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有