Struts1+JQuery的例子
Struts1+JQuery的例子
2014年2月10日
11:25
Struts1+JQuery+JSON/XML的例子
1.Struts+JQuery+XML
struts-config.xml如下:
[xhtml] view plaincopy
TestxmlAction.java如下:
[java] view plaincopy
/*
- Generated by MyEclipse Struts
- Template path: templates/java/JavaClass.vtl
*/
package action;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import form.TestForm;
/**
-
MyEclipse Struts
-
Creation date: 03-05-2010
-
XDoclet definition:
-
@struts.action path="/test" name="testForm" input="index.jsp" scope="request"
/
public class TestXmlAction extends Action {
/- Generated Methods
*/
/**
-
Method execute
-
@param mapping
-
@param form
-
@param request
-
@param response
-
@return ActionForward
-
@throws IOException
/
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws IOException {
TestForm testForm = (TestForm) form;// TODO Auto-generated method stub
response.setContentType("text/xml; charset=utf-8");//传输xml时要用html
response.setCharacterEncoding("utf-8");
System.out.println(testForm.getTestvalue());
PrintWriter pw=response.getWriter();
//1.传递单个参数,注意应将text/xml改为text/html
/int i=9;
pw.print(i);
pw.flush();/
//2.生成xml文件返回给html页面,此时list里面为单个String
/ StringBuilder xml = new StringBuilder();
Listlist=new ArrayList ();
list.add("aaa");
list.add("bbb");
list.add("ccc");
xml.append(""); ");
for (Object o : list) {
xml.append("- ").append(o).append("
");
}
xml.append("
System.out.println(xml);
pw.print(xml.toString());
pw.flush();/
//3.生成xml文件返回给html页面,此时list里面为对象类型
/response.setContentType("text/xml;charset=utf-8");
StringBuilder xml = new StringBuilder();
Listlist=new ArrayList ();
User user1=new User();
User user2=new User();
User user3=new User();
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(""); ");
for (int i=0;i<list.size();i++) {
xml.append(""); ");
xml.append("").append(list.get(i).getUsername()).append(" ");
xml.append("").append(list.get(i).getPassword()).append(" ");
xml.append("
}
xml.append("
System.out.println(xml);
pw.print(xml.toString());*/
return null;
}
- Generated Methods
}
辅助类User:
[java] view plaincopy
package action;
public class User {
private String username;
private int password;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public int getPassword() {
return password;
}
public void setPassword(int password) {
this.password = password;
}
}
indexxml.jsp如下:
[java] view plaincopy
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"😕/"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
2.Struts+JQuery+JSON
TestAction如下:
[java] view plaincopy
/*
- Generated by MyEclipse Struts
- Template path: templates/java/JavaClass.vtl
*/
package action;
import java.io.IOException;
import java.io.PrintWriter;
import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import net.sf.json.JSONArray;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import form.TestForm;
/**
-
MyEclipse Struts
-
Creation date: 03-05-2010
-
XDoclet definition:
-
@struts.action path="/test" name="testForm" input="index.jsp" scope="request"
/
public class TestAction extends Action {
/- Generated Methods
*/
/**
- Method execute
- @param mapping
- @param form
- @param request
- @param response
- @return ActionForward
- @throws UnsupportedEncodingException
/
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws UnsupportedEncodingException {
TestForm testForm = (TestForm) form;// TODO Auto-generated method stub
response.setContentType("text/json; charset=utf-8"); //注意设置为json,如果为xml,则设为xml
/ response.setContentType("text/xml; charset=utf-8");传输xml时要用xml
- Generated Methods
-
response.setCharacterEncoding("utf-8");
-
/
System.out.println(testForm.getTestvalue());
//1.struts1.2+JQuery+Json传递list参数,此时list的类型为String
/Listlist=new ArrayList ();
list.add("string1");
list.add("string2");
list.add("string3");
JSONArray json=JSONArray.fromObject(list);
try {
PrintWriter out=response.getWriter();
System.out.println(json);
out.print(json);out.flush();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}/
//2.struts1.2+JQuery+Json传递Map参数
/Map<String,String> map=new HashMap<String,String>();
map.put("name1","string1");
map.put("name2","string2");
map.put("name3","string3");
JSONArray json=JSONArray.fromObject(map);
try {
PrintWriter out=response.getWriter();
System.out.println(json);
out.print(json);
out.flush();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}/
//3.传递单个String值
/String singlepara="{/"name/":'中国'}";//要注意格式
JSONObject json=JSONObject.fromObject(test);
try {
PrintWriter out=response.getWriter();
System.out.println(json);
out.print(json);
out.flush();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}*/
//4.struts1.2+JQuery+Json传递User参数/*User user1=new User();
user1.setPassword(1);
String username = "你好";
user1.setUsername(username);
//user1.setUsername(new String(username.getBytes("utf-8"), "iso8859-1"));
JSONObject json=JSONObject.fromObject(user1);
try {
PrintWriter out=response.getWriter();
System.out.println(json);
out.print(json);out.flush();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}*/
//5.struts1.2+JQuery+Json传递list参数,此时list的类型为String
Listlist=new ArrayList (); User user1=new User();
user1.setPassword(1);
user1.setUsername("u1");
User user2=new User();
user2.setPassword(2);
user2.setUsername("u2");
User user3=new User();
user3.setPassword(3);
user3.setUsername("u3");list.add(user1);
list.add(user2);
list.add(user3);
JSONArray json=JSONArray.fromObject(list);
try {
PrintWriter out=response.getWriter();
System.out.println(json);
out.print(json);out.flush();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
}
struts-config.xml如下:
[c-sharp] view plaincopy
index.jsp如下:
[java] view plaincopy
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"😕/"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
</head> 测试输入框:

浙公网安备 33010602011771号