struts2框架struts2快速入门 用户请求 --> web.xml--struts.xml(通过strutsprepareandexecute过滤器过滤)--> action类
· index.jsp——>HelloServlet——–>hello.jsp web开发流程. index.jsp——>HelloAction———>hello.jsp struts2流程 struts2的目录结构: o apps: 该文件夹包含了基于struts2 的示例应用,这些示例应用对于学习者是非常有用的;例子程序war后缀表示web压缩文件 o docs : 该文件夹下包含了struts2 相关文档,包括struts2 快速入门、struts2的文档以及API文档等 o lib : 该文件夹下包含了Struts2框架和核心类库,以及struts2第三方插件类库 § 开发时没必要将lib目录下jar文件全部复制到项目中 o src : 该文件夹下包含了Struts2框架的全部源代码 § core 它是struts2的源代码 § xwork-core struts2底层使用了xwork,xwork的源代码 1.导入jar包 o 下载struts2的jar包 struts-2.3.15.1-all 版本. · Struts运行必要jar包 o struts2-core-2.3.1.1.jar:Struts 2框架的核心类库 o xwork-core-2.3.1.1.jar:Command模式框架,WebWork和Struts2都基于xwork o ognl-3.0.3.jar:对象图导航语言(Object Graph Navigation Language),struts2框架通过其读写对象的属性 o freemarker-2.3.18.jar:Struts 2的UI标签的模板使用FreeMarker编写 o commons-logging-1.1.x.jar:ASF出品的日志包,Struts 2框架使用这个日志,包来支持Log4J和JDK 1.4+的日志记录。 o commons-fileupload-1.2.2.jar: 文件上传组件,2.1.6版本后需要加入此文件 o commons-io-2.0.1.jar:传文件依赖的jar包 o commons-lang-2.5.jar:对java.lang包的增强 o 开发中为了方便导入,可以使用app/struts2-blank.war 携带jar包 注意:在struts2开发,一般情况下最少导入的jar包,去apps下的struts2-blank示例程序中copy。将war后缀改为rar后解压。 2.创建index.jsp,hello.jsp页面 o 在index.jsp (发起请求页面) § <a href="${pageContext.request.contextPath}/hello">第一次使用struts2</a> o hello.jsp (结果页面) § <h1>你好,Struts2<h1> o 结果页面显示 struts2框架访问成功 3.对struts2框架进行配置 o 1.web.xml文件中配置前端控制器(核心控制器)—–就是一个Filter § 目的:是为了让struts2框架可以运行。 § 过滤器配置/* , 但是struts2 默认处理.action结尾请求,分发到相应Action类 <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> </filter>
<filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> * 2.创建一个struts.xml配置文件 ,这个是struts2框架配置文件。 * 目的:是为了struts2框架流程可以执行。 * 名称:struts.xml * 位置:src下(classes下) 4.创建一个HelloAction类 要求,在HelloAction类中创建一个返回值是String类型的方法,注意,无参数。 public class HelloAction { public String say(){ System.out.println("hello world"); return "good"; // 结果页面命名 } } struts2 的Action类似以前编写的Servlet程序,可以处理用户提交请求,但是Struts2的Action可以POJO对象 5.在struts.xml文件中配置HelloAction <package name="default" namespace="/" extends="struts-default"> <action name="hello" class="cn.itcast.action.HelloAction" method="say"> <result name="good">/hello.jsp</result> </action> </package> 6.在index.jsp中添加连接,测试 <a href="${pageContext.request.contextPath}/hello">第一次使用struts2</a> HelloAction类中的say方法执行了,也跳转到了hello.jsp.
|