首先,我这个程序的框架是spring+struts2+hibernate。
后端的action的需要接受从前端传进来的参数,由spring的注入,可知,如果前端用的是form的话,只需要在每个input的name中,使用action中定义的
注入对象的属性,那么提交时,Spring可以识别,并将其内容注入到action中定义的对象中。
例如:在后台的action有下面这个变量
private user user;
在前端的form中 有如下定义:
<input name="user.username"/>
那么,在表单提交后,Spring会自动注入前端的值。即user对象由Spring实例化。后台直接使用。
这种情况还是比较简单的。
如果前端不采用form,而是使用jquery,来提交。(当然不能用jquery提交表单)
这里我采用了ajax的方法提交对象给后台的action。采用json数据格式,传递过去,再由Spring自动注入。
其实需要做的事很简单,就是将数据包装成一个json数据,其中里面的内容和form的name的格式差不多。
具体见下面的代码
$("#submitButton").click(function(){ var username=$("#username").val(); var password=$("#password").val(); var user={"user.username":username,"user.password":password};//这里,就是将数据封装成json $.ajax({
type: "POST",
cache: false,
dataType:"json",
url: "user/user_validateUser" ,
data:user
});
action中的定义:
private user user;
public String validateUser()
{ System.out.print("user checking!!!"+user.getUsername());
return "list";
}