- 浏览: 9362 次
- 性别:
- 来自: 天津
文章分类
最新评论
struts1+ajax+json/xml
Struts1+JQuery+JSON/XML的例子
1.Struts+JQuery+XML
struts-config.xml如下:
[xhtml]
view plaincopy
- <action
- attribute="testForm"
- input="/indexxml.jsp"
- name="testForm"
- path="/testxml"
- scope="request"
- type="action.TestXmlAction"
- validate="false"/>
TestxmlAction.java如下:
[java]
view plaincopy
- /*
- *GeneratedbyMyEclipseStruts
- *Templatepath:templates/java/JavaClass.vtl
- */
- packageaction;
- importjava.io.IOException;
- importjava.io.PrintWriter;
- importjava.util.ArrayList;
- importjava.util.List;
- importjavax.servlet.http.HttpServletRequest;
- importjavax.servlet.http.HttpServletResponse;
- importorg.apache.struts.action.Action;
- importorg.apache.struts.action.ActionForm;
- importorg.apache.struts.action.ActionForward;
- importorg.apache.struts.action.ActionMapping;
- importform.TestForm;
- /**
- *MyEclipseStruts
- *Creationdate:03-05-2010
- *
- *XDocletdefinition:
- *@struts.actionpath="/test"name="testForm"input="index.jsp"scope="request"
- */
- publicclassTestXmlActionextendsAction{
- /*
- *GeneratedMethods
- */
- /**
- *Methodexecute
- *@parammapping
- *@paramform
- *@paramrequest
- *@paramresponse
- *@returnActionForward
- *@throwsIOException
- */
- publicActionForwardexecute(ActionMappingmapping,ActionFormform,
- HttpServletRequestrequest,HttpServletResponseresponse)throwsIOException{
- TestFormtestForm=(TestForm)form;//TODOAuto-generatedmethodstub
- response.setContentType("text/xml;charset=utf-8");//传输xml时要用html
- response.setCharacterEncoding("utf-8");
- System.out.println(testForm.getTestvalue());
- PrintWriterpw=response.getWriter();
- //1.传递单个参数,注意应将text/xml改为text/html
- /*inti=9;
- pw.print(i);
- pw.flush();*/
- //2.生成xml文件返回给html页面,此时list里面为单个String
- /*StringBuilderxml=newStringBuilder();
- List<String>list=newArrayList<String>();
- list.add("aaa");
- list.add("bbb");
- list.add("ccc");
- xml.append("<items>");
- for(Objecto:list){
- xml.append("<item>").append(o).append("</item>");
- }
- xml.append("</items>");
- System.out.println(xml);
- pw.print(xml.toString());
- pw.flush();*/
- //3.生成xml文件返回给html页面,此时list里面为对象类型
- /*response.setContentType("text/xml;charset=utf-8");
- StringBuilderxml=newStringBuilder();
- List<User>list=newArrayList<User>();
- Useruser1=newUser();
- Useruser2=newUser();
- Useruser3=newUser();
- user1.setUsername("username1");
- user1.setPassword(1);
- user2.setUsername("username2");
- user2.setPassword(2);
- user3.setUsername("username3");
- user3.setPassword(3);
- list.add(user1);
- list.add(user2);
- list.add(user3);
- xml.append("<items>");
- for(inti=0;i<list.size();i++){
- xml.append("<itemslist>");
- xml.append("<username>").append(list.get(i).getUsername()).append("</username>");
- xml.append("<password>").append(list.get(i).getPassword()).append("</password>");
- xml.append("</itemslist>");
- }
- xml.append("</items>");
- System.out.println(xml);
- pw.print(xml.toString());*/
- returnnull;
- }
- }
辅助类User:
[java]
view plaincopy
- packageaction;
- publicclassUser{
- privateStringusername;
- privateintpassword;
- publicStringgetUsername(){
- returnusername;
- }
- publicvoidsetUsername(Stringusername){
- this.username=username;
- }
- publicintgetPassword(){
- returnpassword;
- }
- publicvoidsetPassword(intpassword){
- this.password=password;
- }
- }
indexxml.jsp如下:
[java]
view plaincopy
- <%@pagelanguage="java"import="java.util.*"pageEncoding="UTF-8"%>
- <%
- Stringpath=request.getContextPath();
- StringbasePath=request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
- %>
- <!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN">
- <html>
- <head>
- <basehref="<%=basePath%>">
- <title>MyStrutsJQueryJson</title>
- <metahttp-equiv="pragma"content="no-cache">
- <metahttp-equiv="cache-control"content="no-cache">
- <metahttp-equiv="expires"content="0">
- <metahttp-equiv="keywords"content="keyword1,keyword2,keyword3">
- <metahttp-equiv="description"content="Thisismypage">
- <!--
- <linkrel="stylesheet"type="text/css"href="styles.css">
- -->
- <scripttype="text/javascript"src="/S1.2SHJQuery/js/jquery-1.4.2.js"></script>
- <scripttype="text/javascript">
- //1.jquery单独传递单个参数
- /*$(function(){
- alert("start");
- $.post("testxml.do",{testvalue:$('#test').val()},function(data){
- alert(data);
- })
- })*/
- //2.jquery单独传递含单个参数的list,采用的是xml形式
- $(function(){
- $.post("testxml.do",{testvalue:$('#test').val()},function(data){
- varitems=data.getElementsByTagName("item");
- alert(items.length);
- for(vari=0;i<items.length;i++){
- alert(items[i].childNodes[0].nodeValue);
- }
- })
- })
- //3.jquery单独传递含对象类型的list,,采用的是xml形式
- /*$(function(){
- $.post("testxml.do",{testvalue:$('#test').val()},function(data){
- varitems=data.getElementsByTagName("itemslist");
- //循环输出username和password
- for(vari=0;i<items.length;i++){
- varchilds=items[i].childNodes;
- for(varj=0;j<childs.length;j++){
- alert(childs[j].firstChild.nodeValue);
- }
- }
- })
- })
- */
- </script>
- </head>
- <body>
- <formaction="/testxml.do">
- <inputtype="button"value="JQuery"id="jquerytest"><br>
- <inputtype="text"value="JQuerytest"name="test"id="test">
- <fontid="userlogin">登陆</font><spanid="loading"></span>
- <pid="result"></p>
- </form>
- </body>
- </html>
2.Struts+JQuery+JSON
TestAction如下:
[java]
view plaincopy
- /*
- *GeneratedbyMyEclipseStruts
- *Templatepath:templates/java/JavaClass.vtl
- */
- packageaction;
- importjava.io.IOException;
- importjava.io.PrintWriter;
- importjava.io.UnsupportedEncodingException;
- importjava.util.ArrayList;
- importjava.util.List;
- importjavax.servlet.http.HttpServletRequest;
- importjavax.servlet.http.HttpServletResponse;
- importnet.sf.json.JSONArray;
- importorg.apache.struts.action.Action;
- importorg.apache.struts.action.ActionForm;
- importorg.apache.struts.action.ActionForward;
- importorg.apache.struts.action.ActionMapping;
- importform.TestForm;
- /**
- *MyEclipseStruts
- *Creationdate:03-05-2010
- *
- *XDocletdefinition:
- *@struts.actionpath="/test"name="testForm"input="index.jsp"scope="request"
- */
- publicclassTestActionextendsAction{
- /*
- *GeneratedMethods
- */
- /**
- *Methodexecute
- *@parammapping
- *@paramform
- *@paramrequest
- *@paramresponse
- *@returnActionForward
- *@throwsUnsupportedEncodingException
- */
- publicActionForwardexecute(ActionMappingmapping,ActionFormform,
- HttpServletRequestrequest,HttpServletResponseresponse)throwsUnsupportedEncodingException{
- TestFormtestForm=(TestForm)form;//TODOAuto-generatedmethodstub
- response.setContentType("text/json;charset=utf-8");//注意设置为json,如果为xml,则设为xml
- /*response.setContentType("text/xml;charset=utf-8");传输xml时要用xml
- *response.setCharacterEncoding("utf-8");
- **/
- System.out.println(testForm.getTestvalue());
- //1.struts1.2+JQuery+Json传递list参数,此时list的类型为String
- /*List<String>list=newArrayList<String>();
- list.add("string1");
- list.add("string2");
- list.add("string3");
- JSONArrayjson=JSONArray.fromObject(list);
- try{
- PrintWriterout=response.getWriter();
- System.out.println(json);
- out.print(json);
- out.flush();
- }catch(IOExceptione){
- //TODOAuto-generatedcatchblock
- e.printStackTrace();
- }*/
- //2.struts1.2+JQuery+Json传递Map参数
- /*Map<String,String>map=newHashMap<String,String>();
- map.put("name1","string1");
- map.put("name2","string2");
- map.put("name3","string3");
- JSONArrayjson=JSONArray.fromObject(map);
- try{
- PrintWriterout=response.getWriter();
- System.out.println(json);
- out.print(json);
- out.flush();
- }catch(IOExceptione){
- //TODOAuto-generatedcatchblock
- e.printStackTrace();
- }*/
- //3.传递单个String值
- /*Stringsinglepara="{/"name/":'中国'}";//要注意格式
- JSONObjectjson=JSONObject.fromObject(test);
- try{
- PrintWriterout=response.getWriter();
- System.out.println(json);
- out.print(json);
- out.flush();
- }catch(IOExceptione){
- //TODOAuto-generatedcatchblock
- e.printStackTrace();
- }*/
- //4.struts1.2+JQuery+Json传递User参数
- /*Useruser1=newUser();
- user1.setPassword(1);
- Stringusername="你好";
- user1.setUsername(username);
- //user1.setUsername(newString(username.getBytes("utf-8"),"iso8859-1"));
- JSONObjectjson=JSONObject.fromObject(user1);
- try{
- PrintWriterout=response.getWriter();
- System.out.println(json);
- out.print(json);
- out.flush();
- }catch(IOExceptione){
- //TODOAuto-generatedcatchblock
- e.printStackTrace();
- }*/
- //5.struts1.2+JQuery+Json传递list参数,此时list的类型为String
- List<User>list=newArrayList<User>();
- Useruser1=newUser();
- user1.setPassword(1);
- user1.setUsername("u1");
- Useruser2=newUser();
- user2.setPassword(2);
- user2.setUsername("u2");
- Useruser3=newUser();
- user3.setPassword(3);
- user3.setUsername("u3");
- list.add(user1);
- list.add(user2);
- list.add(user3);
- JSONArrayjson=JSONArray.fromObject(list);
- try{
- PrintWriterout=response.getWriter();
- System.out.println(json);
- out.print(json);
- out.flush();
- }catch(IOExceptione){
- //TODOAuto-generatedcatchblock
- e.printStackTrace();
- }
- returnnull;
- }
- }
struts-config.xml如下:
[c-sharp]
view plaincopy
- <action
- attribute="testForm"
- input="/index.jsp"
- name="testForm"
- path="/test"
- scope="request"
- type="action.TestAction"
- validate="false"/>
index.jsp如下:
[java]
view plaincopy
- <%@pagelanguage="java"import="java.util.*"pageEncoding="UTF-8"%>
- <%
- Stringpath=request.getContextPath();
- StringbasePath=request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
- %>
- <!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN">
- <html>
- <head>
- <basehref="<%=basePath%>">
- <title>struts+jquery+json</title>
- <metahttp-equiv="pragma"content="no-cache">
- <metahttp-equiv="cache-control"content="no-cache">
- <metahttp-equiv="expires"content="0">
- <metahttp-equiv="keywords"content="keyword1,keyword2,keyword3">
- <metahttp-equiv="description"content="Thisismypage">
- <!--
- <linkrel="stylesheet"type="text/css"href="styles.css">
- -->
- <scripttype="text/javascript"src="/MyStrutsJQueryJson/js/jquery-1.4.2.js"></script>
- <scripttype="text/javascript">
- /*1.struts1.2+JQuery+Json传递list参数,此时list的类型为String
- $(function(){
- $("#submitbutton").click(function(){
- varparams={testvalue:$('#test').val()};
- $.ajax({
- url:"test.do",
- data:params,
- type:'post',
- dataType:'json',
- success:function(data){
- //data值:["string1","string2","string3"]
- alert("成功");
- alert(data.length);
- for(varj=0;j<data.length;j++)
- {
- alert(data[j]);
- }
- },
- error:function(){
- alert("失败");
- }
- })
- })
- })*/
- //2.struts1.2+JQuery+Json传递Map参数
- /*$(function(){
- $("#submitbutton").click(function(){
- alert("start");
- varparams={testvalue:$('#test').val()};
- $.ajax({
- url:"test.do",
- data:params,
- type:'post',
- dataType:'json',
- success:function(data){
- //alert(data.name1);//缺点是须知道属性名,在JSONArray下
- //迭代循环输出
- //data值为:[{"name3":"string3","name1":"string1","name2":"string2"}]
- $.each(data[0],function(key,value){
- alert(key+""+value);
- })
- },
- error:function(){
- alert("失败");
- }
- })
- })
- })*/
- //3.struts1.2+JQuery+Json传递String参数
- /*
- $(function(){
- $("#submitbutton").click(function(){
- varparams={testvalue:$('#test').val()};
- alert("start");
- $.ajax({
- url:"test.do",
- data:params,
- type:'post',
- dataType:'json',
- success:function(data){
- alert("成功");
- alert(data.name);
- },
- error:function(){
- alert("失败");
- }
- })
- })
- })*/
- //4.struts1.2+JQuery+Json传递User参数
- /*$(function(){
- $("#submitbutton").click(function(){
- varparams={testvalue:$('#test').val()};
- $.ajax({
- url:"test.do",
- data:params,
- type:'post',
- dataType:'json',
- success:function(data){
- //data值为:{"password":1,"username":"你好"}
- alert("成功");
- alert(data.username);
- alert(data.password);
- },
- error:function(){
- alert("失败");
- }
- })
- })
- })*/
- //5.struts1.2+JQuery+Json传递list参数,此时list的类型为User
- $(function(){
- $("#submitbutton").click(function(){
- varparams={testvalue:$('#test').val()};
- $.ajax({
- url:"test.do",
- data:params,
- type:'post',
- dataType:'json',
- success:function(data){
- alert("成功");
- //data值:[{"password":1,"username":"u1"},{"password":2,"username":"u2"},{"password":3,"username":"u3"}]
- /*for(varj=0;j<data.length;j++)
- {
- alert(data[j].username);
- alert(data[j].password);
- }*/
- $.each(data,function(i){
- $.each(data[i],function(key,value){
- alert(key+""+value);
- })
- })
- },
- error:function(){
- alert("失败");
- }
- })
- })
- })
- </script>
- </head>
- <body>
- 测试输入框:<inputtype="text"id="test"name="hello"><br>
- <inputtype="button"name="submitbutton"id="submitbutton"value="提交">
- </body>
- </html>
Struts1+JQuery+JSON/XML的例子
1.Struts+JQuery+XML
struts-config.xml如下:
[xhtml]
view plaincopy
- <action
- attribute="testForm"
- input="/indexxml.jsp"
- name="testForm"
- path="/testxml"
- scope="request"
- type="action.TestXmlAction"
- validate="false"/>
TestxmlAction.java如下:
[java]
view plaincopy
- /*
- *GeneratedbyMyEclipseStruts
- *Templatepath:templates/java/JavaClass.vtl
- */
- packageaction;
- importjava.io.IOException;
- importjava.io.PrintWriter;
- importjava.util.ArrayList;
- importjava.util.List;
- importjavax.servlet.http.HttpServletRequest;
- importjavax.servlet.http.HttpServletResponse;
- importorg.apache.struts.action.Action;
- importorg.apache.struts.action.ActionForm;
- importorg.apache.struts.action.ActionForward;
- importorg.apache.struts.action.ActionMapping;
- importform.TestForm;
- /**
- *MyEclipseStruts
- *Creationdate:03-05-2010
- *
- *XDocletdefinition:
- *@struts.actionpath="/test"name="testForm"input="index.jsp"scope="request"
- */
- publicclassTestXmlActionextendsAction{
- /*
- *GeneratedMethods
- */
- /**
- *Methodexecute
- *@parammapping
- *@paramform
- *@paramrequest
- *@paramresponse
- *@returnActionForward
- *@throwsIOException
- */
- publicActionForwardexecute(ActionMappingmapping,ActionFormform,
- HttpServletRequestrequest,HttpServletResponseresponse)throwsIOException{
- TestFormtestForm=(TestForm)form;//TODOAuto-generatedmethodstub
- response.setContentType("text/xml;charset=utf-8");//传输xml时要用html
- response.setCharacterEncoding("utf-8");
- System.out.println(testForm.getTestvalue());
- PrintWriterpw=response.getWriter();
- //1.传递单个参数,注意应将text/xml改为text/html
- /*inti=9;
- pw.print(i);
- pw.flush();*/
- //2.生成xml文件返回给html页面,此时list里面为单个String
- /*StringBuilderxml=newStringBuilder();
- List<String>list=newArrayList<String>();
- list.add("aaa");
- list.add("bbb");
- list.add("ccc");
- xml.append("<items>");
- for(Objecto:list){
- xml.append("<item>").append(o).append("</item>");
- }
- xml.append("</items>");
- System.out.println(xml);
- pw.print(xml.toString());
- pw.flush();*/
- //3.生成xml文件返回给html页面,此时list里面为对象类型
- /*response.setContentType("text/xml;charset=utf-8");
- StringBuilderxml=newStringBuilder();
- List<User>list=newArrayList<User>();
- Useruser1=newUser();
- Useruser2=newUser();
- Useruser3=newUser();
- user1.setUsername("username1");
- user1.setPassword(1);
- user2.setUsername("username2");
- user2.setPassword(2);
- user3.setUsername("username3");
- user3.setPassword(3);
- list.add(user1);
- list.add(user2);
- list.add(user3);
- xml.append("<items>");
- for(inti=0;i<list.size();i++){
- xml.append("<itemslist>");
- xml.append("<username>").append(list.get(i).getUsername()).append("</username>");
- xml.append("<password>").append(list.get(i).getPassword()).append("</password>");
- xml.append("</itemslist>");
- }
- xml.append("</items>");
- System.out.println(xml);
- pw.print(xml.toString());*/
- returnnull;
- }
- }
辅助类User:
[java]
view plaincopy
- packageaction;
- publicclassUser{
- privateStringusername;
- privateintpassword;
- publicStringgetUsername(){
- returnusername;
- }
- publicvoidsetUsername(Stringusername){
- this.username=username;
- }
- publicintgetPassword(){
- returnpassword;
- }
- publicvoidsetPassword(intpassword){
- this.password=password;
- }
- }
indexxml.jsp如下:
[java]
view plaincopy
- <%@pagelanguage="java"import="java.util.*"pageEncoding="UTF-8"%>
- <%
- Stringpath=request.getContextPath();
- StringbasePath=request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
- %>
- <!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN">
- <html>
- <head>
- <basehref="<%=basePath%>">
- <title>MyStrutsJQueryJson</title>
- <metahttp-equiv="pragma"content="no-cache">
- <metahttp-equiv="cache-control"content="no-cache">
- <metahttp-equiv="expires"content="0">
- <metahttp-equiv="keywords"content="keyword1,keyword2,keyword3">
- <metahttp-equiv="description"content="Thisismypage">
- <!--
- <linkrel="stylesheet"type="text/css"href="styles.css">
- -->
- <scripttype="text/javascript"src="/S1.2SHJQuery/js/jquery-1.4.2.js"></script>
- <scripttype="text/javascript">
- //1.jquery单独传递单个参数
- /*$(function(){
- alert("start");
- $.post("testxml.do",{testvalue:$('#test').val()},function(data){
- alert(data);
- })
- })*/
- //2.jquery单独传递含单个参数的list,采用的是xml形式
- $(function(){
- $.post("testxml.do",{testvalue:$('#test').val()},function(data){
- varitems=data.getElementsByTagName("item");
- alert(items.length);
- for(vari=0;i<items.length;i++){
- alert(items[i].childNodes[0].nodeValue);
- }
- })
- })
- //3.jquery单独传递含对象类型的list,,采用的是xml形式
- /*$(function(){
- $.post("testxml.do",{testvalue:$('#test').val()},function(data){
- varitems=data.getElementsByTagName("itemslist");
- //循环输出username和password
- for(vari=0;i<items.length;i++){
- varchilds=items[i].childNodes;
- for(varj=0;j<childs.length;j++){
- alert(childs[j].firstChild.nodeValue);
- }
- }
- })
- })
- */
- </script>
- </head>
- <body>
- <formaction="/testxml.do">
- <inputtype="button"value="JQuery"id="jquerytest"><br>
- <inputtype="text"value="JQuerytest"name="test"id="test">
- <fontid="userlogin">登陆</font><spanid="loading"></span>
- <pid="result"></p>
- </form>
- </body>
- </html>
2.Struts+JQuery+JSON
TestAction如下:
[java]
view plaincopy
- /*
- *GeneratedbyMyEclipseStruts
- *Templatepath:templates/java/JavaClass.vtl
- */
- packageaction;
- importjava.io.IOException;
- importjava.io.PrintWriter;
- importjava.io.UnsupportedEncodingException;
- importjava.util.ArrayList;
- importjava.util.List;
- importjavax.servlet.http.HttpServletRequest;
- importjavax.servlet.http.HttpServletResponse;
- importnet.sf.json.JSONArray;
- importorg.apache.struts.action.Action;
- importorg.apache.struts.action.ActionForm;
- importorg.apache.struts.action.ActionForward;
- importorg.apache.struts.action.ActionMapping;
- importform.TestForm;
- /**
- *MyEclipseStruts
- *Creationdate:03-05-2010
- *
- *XDocletdefinition:
- *@struts.actionpath="/test"name="testForm"input="index.jsp"scope="request"
- */
- publicclassTestActionextendsAction{
- /*
- *GeneratedMethods
- */
- /**
- *Methodexecute
- *@parammapping
- *@paramform
- *@paramrequest
- *@paramresponse
- *@returnActionForward
- *@throwsUnsupportedEncodingException
- */
- publicActionForwardexecute(ActionMappingmapping,ActionFormform,
- HttpServletRequestrequest,HttpServletResponseresponse)throwsUnsupportedEncodingException{
- TestFormtestForm=(TestForm)form;//TODOAuto-generatedmethodstub
- response.setContentType("text/json;charset=utf-8");//注意设置为json,如果为xml,则设为xml
- /*response.setContentType("text/xml;charset=utf-8");传输xml时要用xml
- *response.setCharacterEncoding("utf-8");
- **/
- System.out.println(testForm.getTestvalue());
- //1.struts1.2+JQuery+Json传递list参数,此时list的类型为String
- /*List<String>list=newArrayList<String>();
- list.add("string1");
- list.add("string2");
- list.add("string3");
- JSONArrayjson=JSONArray.fromObject(list);
- try{
- PrintWriterout=response.getWriter();
- System.out.println(json);
- out.print(json);
- out.flush();
- }catch(IOExceptione){
- //TODOAuto-generatedcatchblock
- e.printStackTrace();
- }*/
- //2.struts1.2+JQuery+Json传递Map参数
- /*Map<String,String>map=newHashMap<String,String>();
- map.put("name1","string1");
- map.put("name2","string2");
- map.put("name3","string3");
- JSONArrayjson=JSONArray.fromObject(map);
- try{
- PrintWriterout=response.getWriter();
- System.out.println(json);
- out.print(json);
- out.flush();
- }catch(IOExceptione){
- //TODOAuto-generatedcatchblock
- e.printStackTrace();
- }*/
- //3.传递单个String值
- /*Stringsinglepara="{/"name/":'中国'}";//要注意格式
- JSONObjectjson=JSONObject.fromObject(test);
- try{
- PrintWriterout=response.getWriter();
- System.out.println(json);
- out.print(json);
- out.flush();
- }catch(IOExceptione){
- //TODOAuto-generatedcatchblock
- e.printStackTrace();
- }*/
- //4.struts1.2+JQuery+Json传递User参数
- /*Useruser1=newUser();
- user1.setPassword(1);
- Stringusername="你好";
- user1.setUsername(username);
- //user1.setUsername(newString(username.getBytes("utf-8"),"iso8859-1"));
- JSONObjectjson=JSONObject.fromObject(user1);
- try{
- PrintWriterout=response.getWriter();
- System.out.println(json);
- out.print(json);
- out.flush();
- }catch(IOExceptione){
- //TODOAuto-generatedcatchblock
- e.printStackTrace();
- }*/
- //5.struts1.2+JQuery+Json传递list参数,此时list的类型为String
- List<User>list=newArrayList<User>();
- Useruser1=newUser();
- user1.setPassword(1);
- user1.setUsername("u1");
- Useruser2=newUser();
- user2.setPassword(2);
- user2.setUsername("u2");
- Useruser3=newUser();
- user3.setPassword(3);
- user3.setUsername("u3");
- list.add(user1);
- list.add(user2);
- list.add(user3);
- JSONArrayjson=JSONArray.fromObject(list);
- try{
- PrintWriterout=response.getWriter();
- System.out.println(json);
- out.print(json);
- out.flush();
- }catch(IOExceptione){
- //TODOAuto-generatedcatchblock
- e.printStackTrace();
- }
- returnnull;
- }
- }
struts-config.xml如下:
[c-sharp]
view plaincopy
- <action
- attribute="testForm"
- input="/index.jsp"
- name="testForm"
- path="/test"
- scope="request"
- type="action.TestAction"
- validate="false"/>
index.jsp如下:
[java]
view plaincopy
- <%@pagelanguage="java"import="java.util.*"pageEncoding="UTF-8"%>
- <%
- Stringpath=request.getContextPath();
- StringbasePath=request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
- %>
- <!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN">
- <html>
- <head>
- <basehref="<%=basePath%>">
- <title>struts+jquery+json</title>
- <metahttp-equiv="pragma"content="no-cache">
- <metahttp-equiv="cache-control"content="no-cache">
- <metahttp-equiv="expires"content="0">
- <metahttp-equiv="keywords"content="keyword1,keyword2,keyword3">
- <metahttp-equiv="description"content="Thisismypage">
- <!--
- <linkrel="stylesheet"type="text/css"href="styles.css">
- -->
- <scripttype="text/javascript"src="/MyStrutsJQueryJson/js/jquery-1.4.2.js"></script>
- <scripttype="text/javascript">
- /*1.struts1.2+JQuery+Json传递list参数,此时list的类型为String
- $(function(){
- $("#submitbutton").click(function(){
- varparams={testvalue:$('#test').val()};
- $.ajax({
- url:"test.do",
- data:params,
- type:'post',
- dataType:'json',
- success:function(data){
- //data值:["string1","string2","string3"]
- alert("成功");
- alert(data.length);
- for(varj=0;j<data.length;j++)
- {
- alert(data[j]);
- }
- },
- error:function(){
- alert("失败");
- }
- })
- })
- })*/
- //2.struts1.2+JQuery+Json传递Map参数
- /*$(function(){
- $("#submitbutton").click(function(){
- alert("start");
- varparams={testvalue:$('#test').val()};
- $.ajax({
- url:"test.do",
- data:params,
- type:'post',
- dataType:'json',
- success:function(data){
- //alert(data.name1);//缺点是须知道属性名,在JSONArray下
- //迭代循环输出
- //data值为:[{"name3":"string3","name1":"string1","name2":"string2"}]
- $.each(data[0],function(key,value){
- alert(key+""+value);
- })
- },
- error:function(){
- alert("失败");
- }
- })
- })
- })*/
- //3.struts1.2+JQuery+Json传递String参数
- /*
- $(function(){
- $("#submitbutton").click(function(){
- varparams={testvalue:$('#test').val()};
- alert("start");
- $.ajax({
- url:"test.do",
- data:params,
- type:'post',
- dataType:'json',
- success:function(data){
- alert("成功");
- alert(data.name);
- },
- error:function(){
- alert("失败");
- }
- })
- })
- })*/
- //4.struts1.2+JQuery+Json传递User参数
- /*$(function(){
- $("#submitbutton").click(function(){
- varparams={testvalue:$('#test').val()};
- $.ajax({
- url:"test.do",
- data:params,
- type:'post',
- dataType:'json',
- success:function(data){
- //data值为:{"password":1,"username":"你好"}
- alert("成功");
- alert(data.username);
- alert(data.password);
- },
- error:function(){
- alert("失败");
- }
- })
- })
- })*/
- //5.struts1.2+JQuery+Json传递list参数,此时list的类型为User
- $(function(){
- $("#submitbutton").click(function(){
- varparams={testvalue:$('#test').val()};
- $.ajax({
- url:"test.do",
- data:params,
- type:'post',
- dataType:'json',
- success:function(data){
- alert("成功");
- //data值:[{"password":1,"username":"u1"},{"password":2,"username":"u2"},{"password":3,"username":"u3"}]
- /*for(varj=0;j<data.length;j++)
- {
- alert(data[j].username);
- alert(data[j].password);
- }*/
- $.each(data,function(i){
- $.each(data[i],function(key,value){
- alert(key+""+value);
- })
- })
- },
- error:function(){
- alert("失败");
- }
- })
- })
- })
- </script>
- </head>
- <body>
- 测试输入框:<inputtype="text"id="test"name="hello"><br>
- <inputtype="button"name="submitbutton"id="submitbutton"value="提交">
- </body>
- </html>
相关推荐
最新Struts2.3.8 + jquery + ajax + json 学会struts+jq+ajax+json只要4步‵‵经过作者的总结超级简单 1. 导入struts2 及json包 asm-3.3.jar asm-commons-3.3.jar asm-tree-3.3.jar commons-fileupload-1.2.2.jar...
3.Ajax无刷新异步调用Struts2,返回Json数据,以用户注册为例。 4.在服务端分页查询功能,优点:实时性:跳页才查询。数据量小:只加载当前页的记录进行显示。 5.单数据源配置(兼容Tomcat和Weblogic)。 6.Hibernate...
主要实现步骤如下: 1、JSP页面使用脚本代码执行ajax请求 2、Action中查询出需要返回的数据,并转换为json类型模式数据 3、配置struts.xml文件 4、页面脚本接受并处理数据!
a 加入支持 : 添加struts2.3.15 必需包 以及 struts json包(ajax要用到),spring整合struts2包,spring web 包,在src目录下建立struts.xml,复制头文件进去。将applicationContext.xml移到WEB-INF目录下。web容器...
演示功能包括: ...使用Struts2的JSON插件完成与Ajax的交互 实现校验用户名功能 压缩包中包括sql文件 修改reg_login\WEB-INF路径下的applicationContext.xml文件,将其中的数据库密码修改为你的数据库密码
用EXT+struts2+spring+hibernate做的一个增删改查实例,主要用到了EXTjs里面的部分组件,用JSON与服务端交互,实现一个增删改查的功能!本地MYsql数据库,sql文件在根目录下面,建好库既可以运行!当然,还是需要在...
Struts2.1.8 AJAX 读取XML,GSON,jQuery JSON的案例.
将jsonplugin-0.30.jar放到工程的lib下面,然后struts2在struts.xml的配置文件中可以指定返回的结果集的类型为:json,把返回的结果封装为json字符串JSON插件是Struts2的Ajax插件,通过利用JSON插件,允许开发者以...
struts2+jquery+ajaxfileupload 需要正确配置struts2文件struts-xml文件中需要配置extends="json-default"。如果返回json结果需要在前台js中解析json数据,要用jquery的jQuery.parseJSON(json)。
在WEB开发中,一般,仅仅使用JSP+ajax+SEVLET或者jsp+struts2的其中某种方式进行,各自的缺点也非常明显。这里,给出了ajax直接调用ACTION并给前台进行list或者JSON的数据回传。很不错的哦!
在Struts2使用Json 在Web services中,XML是用于表示客户端与服务器端数据交换有效负载的格式。但是由于Ajax和REST技术的出现,人们开始寻找XML的替代品。
struts.xml HelloWorld.jsp LangSelector.js 转换器: ConvertHWorld.java LocaleConverter.java xwork-conversion.properties struts.xml ConverHWorld.jsp Product.java ProductConfirm.java AddProducts.jsp ...
第1章 Struts 2:现代Web框架 2 1.1 Web应用程序:快速学习 2 1.1.1 构建Web应用程序 2 1.1.2 基础技术简介 3 1.1.3 深入研究 6 1.2 Web应用程序框架 7 1.2.1 什么是框架 7 1.2.2 为什么使用框架 8 1.3 Struts 2框架...
Java版水果管理系统源码 ...7、传统项目三层框架Struts1/2.x+Spring+Hibernate spring官网: 8、安全框架SpringSecurity/Shiro 跟我学shiro w3cschool: 9、新项目三层框架SpringMVC+Spring+MyBatis #####
针对初学者,学习Ajax验证用户的唯一性实战是为了巩固Ajax,Jquery,Json与Struts2基础知识,具体内容如下 浏览效果图: 那我们就开始了,操作步骤如下 1.首先我们先导入所需要的包及文件 Json 包: struts2 包:...
这个样例是用JQuery ajax和struts来做的一个小样例,在这个样例中采用两种方式将java Util中的list转换成支json的格式,第一种是用json-lib.jar这个jar包来转换,第二种是采用goole的gson-2.1.jar来转换,大家可以...
与使用传统的XML格式或者JSON格式相比,新的树结构信息表示法将占用更少的存储空间,获得更高的解析效率。新框架的请求处理流程借鉴了JSF的请求生命周期,但对它进行了改造,从而简化了流程。本文还将Java反射机制与...
XML and JSON for Ajax Chapter 5. Getting Useful Data Chapter 6. Ajax Libraries and Toolkits Chapter 7. Ajax Tags Chapter 8. Ajax on Struts Chapter 9. JavaServer Faces and Ajax Chapter 10. Google ...
使用jquery ajax处理struts2 返回json类型的时候,ajax执行成功返回结果为object XMLDocument,解决方法如下
Struts2、JDBC+连接池(dbcp)、jQuery+Ajax、javamail、log4j、junit、MySQL 系统架构: 表现层:jQuery+Ajax、Struts2标签+OGNL 控制层:Struts2控制器,Action组件 业务层:JavaBean组件、javamail 数据访问层...