www.kingofcoders.com 编程王网站
开始玩Struts -入门级 index 1.建立JDK环境 2.建立Tomcat环境 3.下载Struts 4.建立目录结构 5.准备相关的library 6.建立web.xml档 7.建立struts-config.xml档 8.建立Bean档 9.建立JSP档 10.测试 11.测试程式的Action流向图 12.下载范例程式tset.zip 13.相关网站 建立JDK环境 1.下载jdk 1.3.1.10 : http://java.sun.com/j2se/1.3/download.html 2.执行j2sdk-1_3_1_10-windows-i586.exe进行安装,并选择安装路径为: C:/Java/jdk1.3.1_10 建立Tomcat环境 1.下载Tomcat 4.1.30 : http://mir2.ovh.net/ftp.apache.org/dist/jakarta/tomcat-4/v4.1.30/bin/jakarta-tomcat-4.1.30.zip 2. unzip压缩档,并放置于C:/Java/jakarta-tomcat-4.1.30 3.用文书编辑软体,建立C:/Java/jakarta-tomcat-4.1.30/conf/worker.properties档 由于本档设定值很多,请从这里下载worker.properties档即可使用。 若要使用其他版本的Tomcat或JDK,请修改如下两个设定值: workers.tomcat_home=C:/Java/jakarta-tomcat-4.1.30 workers.java_home=C:/Java/jdk1.3.1_10 注意:太旧的Tomcat版本并不支援Struts/Tags方式。 4.用文书编辑软体,建立C:/Java/Tomcat.bat ,其内容如下: cd /Java/jakarta-tomcat-4.1.30/bin set CATALINA_HOME=C:/Java/jakarta-tomcat-4.1.30 set JAVA_HOME=C:/Java/jdk1.3.1_10 startup 下载Struts 1.下载Struts 1.1 : http://archive.apache.org/dist/struts/struts-1.1/ 2.更多下载档案: http://archive.apache.org/ 建立目录结构 1.建立一个测试用的目录test/ ,放置于C:/Java/jakarta-tomcat-4.1.30/webapps/ ,其目录结构如下: webapps/ | --- test/ | --- WEB-INF/ | --- classes/ | --- lib/ | --- src/ 准备相关的library 1.复制以下libs,放置于C:/Java/jakarta-tomcat-4.1.30/webapps/test/WEB-INF/lib/ 这些libs可以在C:/Java/jakarta-struts-1.1/lib或是C:/Java/jakarta-struts-1.1/contrib/struts-el/lib找到 commons-beanutils.jar commons-collections.jar commons-digester.jar commons-fileupload.jar commons-lang.jar commons-logging.jar commons-validator.jar jakarta-oro.jar jstl.jar standard.jar struts-el.jar struts-legacy.jar struts.jar 建立web.xml档 1.用文书编辑软体,建立C:/Java/jakarta-tomcat-4.1.30/webapps/test/WEB-INF/web.xml ,其内容如下: <?xml version="1.0" encoding="ISO-8859-1"?> <!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> <display-name>My Struts</display-name> <servlet> <servlet-name>action</servlet-name> <servlet-class>org.apache.struts.action.ActionServlet</servlet-class> <init-param> <param-name>application</param-name> <param-value>MyMessage</param-value> </init-param> <init-param> <param-name>config</param-name> <param-value>/WEB-INF/struts-config.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>action</servlet-name> <url-pattern>/do/*</url-pattern> </servlet-mapping> </web-app> 2.主要设定值,说明如下: <?xml version="1.0" encoding="ISO-8859-1"?> <!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> <display-name>My Struts</display-name> <servlet> <servlet-name>action</servlet-name> <!--定义Action Servlet --> <servlet-class>org.apache.struts.action.ActionServlet</servlet-class> <init-param> <param-name>application</param-name> <param-value>MyMessage</param-value> </init-param> <init-param> <param-name>config</param-name> <!--定义Struts Config档--> <param-value>/WEB-INF/struts-config.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>action</servlet-name> <!--定义网页中action的使用--> <url-pattern>/do/*</url-pattern> <!--由于定义了/do/* ,因此不能自己使用一个名为do/的子目录--> </servlet-mapping> </web-app> 建立struts-config.xml档 1.用文书编辑软体,建立C:/Java/jakarta-tomcat-4.1.30/webapps/test/WEB-INF/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"> <struts-config> <action-mappings> <action path="/a_page1" forward="/page2.jsp"/> <action path="/a_page2" type="MyClass" name="MyForm" scope="request"> <forward name="proccess_finish" path="/page2.jsp"/> </action> </action-mappings> </struts-config> 2.主要设定值,说明如下: <?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"> <struts-config> <!--定义网页中所有使用的action --> <action-mappings> <action path="/a_page1" <!--对应到网页的连结动作,例如<a href="do/a_page1">或<form action="do/a_page1"> --> forward="/page2.jsp"/> <!-- forward要连结的地方--> <action path="/a_page2" <!--对应到网页的连结动作,例如<a href="do/a_page2">或<form action="do/a_page2"> --> type="MyClass" <!--对应bean档,例如WEB-INF/classes/MyClass.class --> name="MyForm" <!--网页上Form的名称,例如<form name="MyForm"> --> scope="request"> <!--网页上Form的各Field,送到那个物件,例如常用的request,或session, application, page --> <forward name="proccess_finish" <!-- forward动作的名称,一般是由bean的forward物件送来,例如 mapping.findForward("proccess_finish") --> path="/page2.jsp"/> <!-- forward要连结的地方--> </action> </action-mappings> </struts-config> 建立Bean档 1.用文书编辑软体,建立C:/Java/jakarta-tomcat-4.1.30/webapps/test/WEB-INF/src/MyClass.java ,其内容如下: import org.apache.struts.action.Action; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionForward; import org.apache.struts.action.ActionMapping; import org.apache.commons.beanutils.BeanUtils; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public final class MyClass extends Action { public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { /*-- forward的名称,对应到struts-config.xml中名为forward name="proccess_finish"的设定*/ return (mapping.findForward("proccess_finish")); } } 2.使用javac MyClass.java得到MyClass.class,并放置于C:/Java/jakarta-tomcat-4.1.30/webapps/test/WEB-INF/classes/ 建立JSP档 1.用文书编辑软体,建立C:/Java/jakarta-tomcat-4.1.30/webapps/page1.jsp ,其内容如下: <html> <body> <h1>My Struts: page1.jsp</h1> <a href="do/a_page1">do/a_page1</a><br> <a href="do/a_page2">do/a_page2</a><br> </body> </html> 2.用文书编辑软体,建立C:/Java/jakarta-tomcat-4.1.30/webapps/page2.jsp ,其内容如下: <html> <body> <h1>My Struts: page2.jsp</h1> </body> </html> 测试 1.点击C:/Java/Tomcat.bat以启动Tomcat,此时会蹦出一个Tomcat服务视窗。 2.开启浏览器,并输入http://localhost:8080/test/page1.jsp进行网址测试。 3.点击page1.jsp上的两个url,若都顺利连结page2.jsp ,即表示测试成功。 4.若有异动WEB-INF/目录下的档案,包含*.xml, *.class等档案,则必须关闭Tomcat服务视窗,再点击C:/Java/Tomcat.bat重启Tomcat 。 测试程式的Action流向图 1.以下图案表示page1.jsp中,Action: /a_page1的流向: 表示page1.jsp中,Action: /a_page1的流向 2.以下图案表示page1.jsp中,Action: /a_page2的流向: 表示page1.jsp中,Action: /a_page2的流向 下载范例程式tset.zip 1.本test.zip含上述*.jsp, *.class, *.xml,等档案,并已收录成一个名为test/目录。 2.因jar档众多且档案大,因此本test.zip不含test/WEB-INF/lib/目录下的library,请自行从jakarta-struts-1.1.zip中取得。 3. Download: test.zip 相关网站 http://www.matrix.org.cn/subject/struts/website_forum.htm http://www.huihoo.com/java/struts/7.html http://www.cn-java.com/target/news.php?news_id=2840 http://www.hot.net.tw/book/014/NE20191.htm http://jakarta.apache.org/struts/index.html http://jakarta.apache.org/struts/userGuide/index.html
www.kingofcoders.com 编程王网站