关于struts2中action请求会执行两次的问题     在struts2中发现,调用action中的方法,方法会被执行两次,后来发现调用的方法是get开头的,把它改为其他名称开头的后,就不会执行两次了.继续查找,发现调用的是返回json数据格式的action,如果是调用返回页面的action就不会有这种问题.     结合网上的搜索,总结了一下:         1.  json格式下, firefox中的yslow插件会发送第二个 HTTP GET 请求得到页面的信息..        …
Struts2中Action接收参数的方法主要有以下三种: 1.使用Action的属性接收参数(最原始的方式):     a.定义:在Action类中定义属性,创建get和set方法:     b.接收:通过属性接收参数,如:userName:     c.发送:使用属性名传递参数,如:user1!add?userName=jim: 2.使用DomainModel接收参数:     a.定义:定义Model类,在Action中定义Model类的对象(不需要new),创建该对象的get和set方法…
本文主要介绍Struts2中validate数据校验的两种方法及Struts2常用校验器.  1.Action中的validate()方法 Struts2提供了一个Validateable接口,这个接口只有一个valudate()方法,只要类实现此接口name可以直接被Struts2调用,ActionSupport类就实现了Validateable接口,但是它并没有重新validate()方法. validate()方法会在execute方法执行前执行,去进行一些数据检验,当且仅当数据校验正确的…
在struts2中action的分类有:继承 ActionSupport 实现 Action,模型驱动(ModelDriven)的 Action,多方法的 Action三种方式. 1.继承 ActionSupport 实现 Action 通过继承 ActionSupport 来实现 Action 是我们的推荐做法,因为 ActionSupport 中提供了输入验证.国际化.execute 等常用方法,使得编写 Action 时代码很简单. 1.1 UserAction.java package…
struts2中Action到底是什么,怎么理解 1.配置完web.xml2.创建视图页面login.jsp3.创建业务控制器LoginAction类(解释说:创建业务控制器LoginAction类,该类为程序的Action类)4.配置LoginAction类(解释说:当Action处理完客户端请求后返回一个字符串,没个字符串对应一个视图) 那么这个Action到底是什么,是一个类吗?怎么理解它,它和用于标签的有什么区别. 解决方案 首先,你了解Servlet么?Servlet是运行在java服…
struts2中action手动获取Session,jsp页面參数 1. ActionContext 在Struts2开发中,除了将请求參数自己主动设置到Action的字段中,我们往往也须要在Action里直接获取请求(Request)或会话(Session)的一些信息, 甚至须要直接对JavaServlet Http的请求(HttpServletRequest),响应(HttpServletResponse)操作. 我们须要在Action中取得request请求參数"username"…
Struts2中Action取得表单数据的几种方法   Struts2中Action获得表单数据的几种方法struts2 Action获取表单传值 1.通过属性驱动式JSP: <form action="sys/login.action" method="post"> <input type="text" name="username"> <input type="submit"…
在jsp页面中可以通过ONGL表达式获取struts2中action处理后的变量的值,这是因为每一个action在初始化后都会放到strackcontext中,可以通过ONGL表达式取到值. 注意要在action中有变量相对应的get方法才行,不然依然是取不到值的. jsp页面中可以用js代码取值…
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt112 Struts2中Action接收参数的方法主要有以下三种: 1.使用Action的属性接收参数:     a.定义:在Action类中定义属性,创建get和set方法:     b.接收:通过属性接收参数,如:userName:     c.发送:使用属性名传递参数,如:user1!add?userName=Magci: 2.使用DomainModel接收参数:   …
Struts2中Action接收參数的方法主要有下面三种: 1.使用Action的属性接收參数:(通过属性驱动式)     a.定义:在Action类中定义属性,创建get和set方法.     b.接收:通过属性接收參数,如:userName.     c.发送:使用属性名传递參数,如:user1!add?userName=Magci: JSP: <form action="sys/login.action" method="post">  <i…
Struts2中Action接收参数的方法主要有以下三种: Struts2中Action接收参数的方法主要有以下三种: 1.使用Action的属性接收参数:     a.定义:在Action类中定义属性,创建get和set方法:     b.接收:通过属性接收参数,如:userName:     c.发送:使用属性名传递参数,如:user1!add?userName=Magci: 2.使用DomainModel接收参数:     a.定义:定义Model类,在Action中定义Model类的对象…
一.IoC方式                在struts2框架中,能够通过IoC方式将servlet对象注入到Action中.通常须要Action实现下面接口: a. ServletRequestAware:        实现该接口的Action能够直接訪问Request对象,该接口中提供void setServletRequest(HttpServletRequest request) 方法,实现此接口的Action控制类通过setServletRequestHttpServlet(Ht…
资源路径为空时也会导致重复请求.< span style="background-image:url('');" >相关推荐< /span >,此时就会出现两次请求,改成< span style="background-image:none;" > 1.js中有路径重复,并在返回页面时执行了请求方法.   2.提交的事件编码绑定的input的type是submit:   3.使用nginx作为反向代理服务器(或者负载均衡)时,后端…
Struts的Action是采用的是多实例多线程设计,而不是像Servlet那样采用单实例多线程设计,因此在struts中,一个请求就对应一个Action对象,个对象之间的数据相互之间互不干扰.没接到一个新的请求,就产生一个新的Action对象,并对Action对象的各属性赋予默认初始值.之后再根据一定的规则调用set方法给各属性赋值,并根据一定规则调用get方法.也就是说,Action对象不是一开始就必须调用set方法的.本文重点讲Action对象调用set和get方法的规则: 1.get方法…
精帖1:http://blog.csdn.net/lfsf802/article/details/7277013 精帖1:http://blog.csdn.net/wmj2003/article/details/5018927 struts2.x的action是有状态的,因此的scope需要是prototype,防止并发数据异常.struts1.x的action是无状态的,因此的scope要设为singleton或默认,效率高. struts1.x默认是单实例(singleton),就是你每次请…
[toc] 前面介绍了 Action 方法执行过程中的一些主要的组件以及方法执行过程中需要的参数的源数据的提供以及参数的绑定,那些都可以看作是 Action 方法执行前的一些必要的准备工作,接下来便将这些串起来看一下 Action 方法执行的整体的流程. Action 执行的整体流程 在接受到客户端的 Http 请求后,Asp.net 的路由系统会对请求信息进行解析得到路由数据,其中包括请求的 Controller 和 Action 的名称以及当前请求上下文的信息,然后根据这些信息创建对应的Co…
[toc] 在 Aps.net mvc 应用中对请求的处理最终都是转换为对某个 Controller 中的某个 Action 方法的调用,因此,要对一个请求进行处理,第一步,需要根据请求解析出对应的 Controller 和 Action 的名称,这是 Asp.net mvc 中的路由 的职责所在,第二步,需要根据第一步解析出来的内容定位对请求进行处理的 Action 方法所属的 Controller 类型,定位的过程称为 Asp.net mvc 中 Controller 的激活,第三步,就是根…
为Action配置method属性: 将Action类中的每一个处理方法都定义成一个逻辑Action方法. <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> <struts> <package name="…
struts2单独使用时action由struts2自己负责创建:与spring集成时,action实例由spring负责创建. 这导致在两种情况下struts.xml配置文件的略微差异.   假如:LoginAction在包cn.edu.jlu.cs.action中.   1. struts2单独使用时,action的class属性为LoginAction的全路径名,如下: ... <action name="login" class="cn.edu.jlu.cs.a…
一.Action名称的搜索顺序 1.获得请求路径的URI,比如url是:http://server/struts2/path1/path2/path3/test.action 2.首先寻找namespace为/path1/path2/path3的package,假设不存在这个package则运行步骤3:假设存在这个package,则在这个package中寻找名字为test的action.当在该package下寻找不到action 时就会直接跑到默认namaspace的package里面去寻找ac…
1.Struts2的Action接收参数的三种形式.      a. 使用Action的属性接收(直接在action中利用get方法来接收参数):                   login.jsp < form action= "LoginAction" method = "post"> < input type= "text" name = "username">< br /> &l…
当禁用了jqueryMobile的ajax后,初始化函数如pageinit和pageshow等函数,都会执行两次.document.ready函数也会执行两次. 当然我们可以用一个变量记录是否已经执行,如果已经执行就不再执行第二次,但终究这不是最终办法. var loaded = false;//防止执行重复 $(document).ready(function () { if (!loaded) { //do something loaded = true; } }); $(document)…
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 -----------------------------------------------------------------------------------------------------------------…
struts中一个正常的最普通不过的action是这样子的 <package name="default1" namespace="/gys" extends="struts-default"> <action name="registAction" class="com.b.Regist" method="test"> <result name="…
题记:写这篇博客要主是加深自己对参数对象的认识和总结实现算法时的一些验经和训教,如果有错误请指出,万分感谢. Action中三种传递并接受参数: 1.  在Action添加成员属性接受参数 例如请求的URL地址: http://localhost:8080/Struts2_0700_ActionAttrParamInput/user/user!add?name=a&age=8 其中传递了两个参数:name和age,其值分别为:a.8,此Action执行的是add()方法. 那我们只要在user这…
[toc] 前面介绍了 Action 执行过程中的几个基本的组件,这里介绍 Action 方法的参数绑定. 数据来源 为 Action 方法提供参数绑定的原始数据来源于当前的 Http 请求,可能包含在请求的 Http 报文头部或报文体中,亦可能包含在当前请求的 Url 中.在 Asp.net mvc 中使用一个 IValueProvider 类型的对象来为 Action 方法的输入参数绑定提供原始的数据源.该接口定义如下: public interface IValueProvider{ //…
我们在struts-defalut.xml文件中可以看到如下图所示: 这些类型是配置文件所带的.接下来我们主要讲解我标注出来的这个,其他的我就不做详解了,有兴趣的可以去试试. web.xml文件我在这里就不配置了.直接从action开始 1.0当type取值为chain时: chain:转发到action 创建LoginAction继承ActionSupport类定义方法 package cn.struts2.action; import com.opensymphony.xwork2.Acti…
Struts2:Action中result的各种转发类型: 内部请求转发dispatcher(默认值) redirect.redirectAction.plainText1.redirect是重定向到某个路径.视图<action name="redirect">/***重定向   <result type="redirect">/employeeAdd.jsp?username=${username}</result></a…
搜索顺序 获得请求路径的URI,例如URL为:http://localhost:8080/struts2/path1/path2/path3/student.action 首先寻找namespace为/path1/path2/path3的package, 如果不存在这个包,则执行步骤3: 如果存在这个 package,则在这个 package 中寻找名字为 student 的 action,当在该 package下寻找不到 action 时就会直接跑到默认 namespace 的 package…
例如从你的login.action到register.action  有两种实现方式 1. 设置type="redirect" <package  name="struts" extends="struts-default">             <action name="login" class="com.aihua.example.LoginAction">        …