一.创建Action类. 创建工程Struts2Demo struts 2中的Action类并不需要继承struts 2中的某个父类,普遍的java类就可以. 在org.sunny.user.action包中创建名为UserAction的类. package org.sunny.user.action; import org.apache.struts2.ServletActionContext; import com.opensymphony.xwork2.ActionContext; pub…
一.分文件编写框架配置文件 1.不分文件开发可能产生的问题 就类似于我们在写java类时,所有代码都写在一个类里,甚至写在一个方法里. 当3个人都checkout了struts.xml文件时,第一个人提交了,后面的人在没有更新就提交时,第一个人写的可能就白写了. 2.分文件编写Struts2的配置文件 二.封装请求正文到对象中(非常重要) 1.静态参数封装 在struts.xml配置文件中,给动作类注入值.调用的是setter方法. 原因:是由一个staticParams的拦截器完成注入的. 2…
一.struts2概述 1.1 什么是struts2? 在介绍Struts2之前,先来认识一下Struts1.Struts1是最早的基于MVC模式的轻量级web框架,他能够合理的划分代码结构,并包含了验证框架.国际化框架等多种实用工具框架.但随着技术的进步,Struts1的局限性也越来越多的暴露出来.为了符合更加灵活.高效的开发需求,Struts2框架应用而生. Struts2是Struts1的下一代产品,是在Struts1和WebWork技术基础上进行合并后的全新框架.虽然Struts1和St…
Struts2执行流程 1.简单执行流程,如下所示: 在浏览器输入请求地址,首先会被过滤器处理,然后查找主配置文件,然后根据地址栏中输入的/hello去每个package中查找为/hello的namespace,然后在包下寻找名为HelloAction的action,反射创建控制器HelloAction对象,调用method指定的方法hello,拿到返回值“success”,去result的配置节找success对应的页面(hello.js),呈现给用户. 2.Struts的架构,具体参考这里…
一:创建项目,添加依赖包 二:在web.xml配置核心控制器 <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> </filter> <filter-mapping> <filter-n…
1.Struts2配置文件加载顺序: default.properties(默认常量配置) struts-default.xml(默认配置文件,主要配置bean和拦截器) struts-plugin.xml(配置插件) struts.xml(配置action或者常量等) struts.properties(常量配置) web.xml(配置JavaEE,如:监听器和过滤器) 2.Struts2配置文件详解 1)default.properties default.properties是Struts…
本文地址:http://blog.csdn.net/sushengmiyan/article/details/40298287 官方文档:http://struts.apache.org/release/2.3.x/docs/home.html 本文作者:sushengmiyan -------------------------------------------------------------------------------------------------------------…
一.配置文件的加载顺序 每次从客户端发送请求到服务器都要先经过Struts2的核心过滤器StrutsPrepareAndExecuteFilter,这个过滤器有两个功能:预处理和执行.在预处理中主要就是来加载配置文件的.对应的是过滤器中的init方法,而执行是用来执行一组拦截器完成部分功能的,对应的是过滤器的doFilter方法.所以我们如果要去了解Struts2的配置文件的加载顺序,那么我们需要查询过滤器的init方法. 在init方法中,调用了init的initDispatcher方法来加载…
如果在jsp中需要引用struts2 框架,需在前面加上以下内容 <%@taglib prefix="s" uri="/struts-tags" %> taglib代代表引入库,uri是库的位置,prefix代表会在下文中使用的时候,以什么的前序为开头,下面是一个例子 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEnc…
今天又学到了一个新的东西,就是struts2的类型转换. 为什么要类型转换? 今天我就要传一个点的坐标给你,保存时用一个自定义的Point类来保存. 因为在表单里面传过去的是字符串,如“12,23”,要把它存进Point类,就必须进行类型转换.将字符串用“,”截取,然后第一部分赋值给x,后一部分赋值给y. 首先设计输入页input.jsp <s:form action="converter"> <s:textfield name="point" l…