阜阳学网站建设,python 网站开发 prf,重庆药师网,wordpress 插件翻译一#xff0e;下载struts2.0.1 http://struts.apache.org/downloads.html#xff0c;下载struts-2.0.1-all.zip#xff0c;这个压缩包中包括了开发struts2所需的struts2-core.jar核心包以及其他struts2所依赖的JAR文件#xff0c;另外另一些struts2的演示样例程序以及一些H…一下载struts2.0.1 http://struts.apache.org/downloads.html下载struts-2.0.1-all.zip这个压缩包中包括了开发struts2所需的struts2-core.jar核心包以及其他struts2所依赖的JAR文件另外另一些struts2的演示样例程序以及一些HTML的API文档。 二试用struts2.0.1 1. 新建一个WEBproject将struts-2.0.1-all.zip压缩包中的lib文件夹下的全部jar文件复制到WEBproject的/WEB-INF/lib文件夹下。 改动WEB-INF下的web.xml文件增加例如以下内容 filter filter-namestruts2/filter-name filter-class org.apache.struts2.dispatcher.FilterDispatcher /filter-class /filter filter-mapping filter-namestruts2/filter-name url-pattern/*/url-pattern /filter-mapping !-- 这里是设置struts2标签也能够不用设置由于在struts-core.jar的META-INF文件夹下已经包括了 这个tld文件J2EE容器会自己主动地载入它 -- jsp-config taglib taglib-uri/s/taglib-uri taglib-location /WEB-INF/tlds/struts-tags.tld /taglib-location /taglib /jsp-config 在web.xml中定义了一个struts2的FilterDispathcer的filter这个FilterDispatcher用来初始化struts2而且处理全部的WEB请求。 2. 新建一个登录页面login.jsp %... page languagejava contentTypetext/html; charsetUTF-8 pageEncodingUTF-8%%...taglib prefixs uri/struts-tags%htmlheadtitle登录页面/title/headbodys:form actionlogin table aligncenter captionh3用户登录/h3/caption tr tds:textfield label用户名 nameusername //td /tr tr tds:password label密 码 namepassword //td /tr tr aligncenter tdinput typesubmit value登录//tdtdinput typereset value重填 //td /tr /table/s:form/body/html 3.编写Action login package org.rainlife.struts2.action;import com.opensymphony.xwork2.ActionSupport;public class LoginAction extends ActionSupport ...{ private String username; private String password; Override public String execute() throws Exception ...{ if (!(getUsername().equals(rainlife)) !(getPassword().equals(rainlife))) ...{ return ERROR; } else ...{ return SUCCESS; } } public String getPassword() ...{ return password; } public void setPassword(String password) ...{ this.password password; } public String getUsername() ...{ return username; } public void setUsername(String username) ...{ this.username username; }} 在这个LoginAction类中继承了ActionSupport。ActionSupport 是xwork2这个开源框架中的一个让action可以更加高速地工作的基类它包括了action中很多可选服务的默认实现可以让我们更加easy地自己定义一个action。 在这里我们定义了username和password两个属性并提供了对应的get/set方法。而且定义了一个execute()方法该方法覆盖ActionSupport类中的execute()方法能够看到它仅仅是简单地返回一个字符串(”SUCCESS”或”INPUT”而不像是在struts1中的返回一个ActionForward这两个字符串也是在ActionSupport中定义的在ActionSupport中定义了四个String属性分别为SUCCESS,INPUT,ERROR,LOGIN。 这样我们的action就已经完毕了但还存在一个问题怎么样让struts2知道我们这个自己定义的action而且能够在HTMLJSP页面中将动作提交给action呢答案是须要配置struts.xml文件。 4.配置struts.xml ?xml version1.0 encodingUTF-8?!DOCTYPE struts PUBLIC -//Apache Software Foundation//DTD Struts Configuration 2.0//EN http://struts.apache.org/dtds/struts-2.0.dtdstruts package namestruts2 extendsstruts-default action namelogin classorg.rainlife.struts2.action.LoginAction result nameerror/error.jsp/result result namesuccess/success.jsp/result /action /package/struts 在这个struts.xml配置文件里能够发现和曾经的struts-config.xml已经全然不一样了而在webwork的配置文件很类似。在这里我们定义一个名name”login”的action通过class属性指向了刚才我们创建的LoginAction类这样就将我们定义的action告诉给了struts2。而在HTMLJSP页面中能够通过这个”login”这个name来将动作提交给对应的Action。 假设在package中设置了namespace属性如namespace”/struts2”则在JSP页面中应该将Form的action设置为”/struts2/login.action”。 5.创建error.jsp和success.jsp error.jsp %... page languagejava importjava.util.* pageEncodingUTF-8%html head title错误页面/title /head body 您不能登录! /body/html success.jsp %... page languagejava importjava.util.* pageEncodingUTF-8%html head title成功页面/title /head body 您已经登录! /body/html Struts2会依据在LoginAction中返回的字符串(ERROR或SUCCESS)来和在struts.xml中result中的name属性所定义的字符串匹配并跳转到对应页面。 转载于:https://www.cnblogs.com/mengfanrong/p/3854150.html