您的位置:首页 > Web前端 > JQuery

对jquery的ajax的一个封装

2012-01-11 09:49 549 查看
package com.aegon_cnooc.oa.admin.action;

import java.io.PrintWriter;
import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import net.sf.json.JSONArray;
import net.sf.json.JSONSerializer;
import net.sf.json.util.JSONUtils;

import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

import com.aegon_cnooc.framework.base.action.BaseAction;
import com.aegon_cnooc.framework.log.Log;
import com.aegon_cnooc.oa.admin.service.LoginService;
import com.aegon_cnooc.util.LogPathUtil;
/**
*
* @Despcrition:
* @Author: liuxinghui
* @Version: 1.0
* @CreateDate: Jul 12, 2011
*/
public class OnloadEmployeeAction extends BaseAction{
private LoginService loginService;
Log logWrite=new Log();
/**
* 组织架构定义中点击单选按钮获得相应的员工
*/
public ActionForward executeAction(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
logWrite.writeLog(LogPathUtil.getPath(), "start OnloadEmployeeAction...", "info");
String employeeType=request.getParameter("employee_type");
if("all".equals(employeeType)){
//Employees all of company
List employeesAllOfCompany=loginService.getEmployeesAllOfCompany();
logWrite.writeLog(LogPathUtil.getPath(), "Load employeesAllOfCompany  employeesAllOfCompany.size():"+employeesAllOfCompany.size(), "info");
JSONArray json = (JSONArray)JSONSerializer.toJSON(employeesAllOfCompany);
response.setContentType("application/json;charset=gbk");
response.setCharacterEncoding("gbk");
PrintWriter pw = response.getWriter();
pw.write(JSONUtils.valueToString(json));
pw.flush();
}else{
//Employees not belong to any groupp
List employeeNotBelongToAnyGroup=loginService.getEmployeesNotBelongToAnyGroup();
logWrite.writeLog(LogPathUtil.getPath(), "Load employeeNotBelongToAnyGroup  employeeNotBelongToAnyGroup.size():"+employeeNotBelongToAnyGroup.size(), "info");
JSONArray json = (JSONArray)JSONSerializer.toJSON(employeeNotBelongToAnyGroup);
response.setContentType("application/json;charset=gbk");
response.setCharacterEncoding("gbk");
PrintWriter pw = response.getWriter();
pw.write(JSONUtils.valueToString(json));
pw.flush();
}
return null;
}
public void setLoginService(LoginService loginService) {
this.loginService = loginService;
}
public static void main(String[] args) {
String testStr =
"{ \"employees\":[{\"user_id\": 841 , \"user_name\":\"EnidChen\"},{\"user_id\": \"1445\" , \"user_name\":\"JulieZhu\"},{\"user_id\": \"1447\" , \"user_name\":\"JasonMa\"}]}";

System.out.println(testStr);
Map json = (Map) JSONSerializer.toJSON(testStr);
List employees = (List) json.get("employees");
System.out.println(employees.size());
Map json2 = (Map) JSONSerializer.toJSON(employees.get(0));

System.out.println(json2.get("user_id"));
System.out.println(json2.get("user_name"));

}
}


function load_allemployees(employee_type){
var url = "onLoadEmployee.do";
var p_data = "employee_type=" + employee_type;
doAjaxSubmit(url, p_data, filSelect);
}
function filSelect(data){
$("#left_").empty();
var employeeArr = document.getElementById('left_');
for(var i=0;i<data.length;i++)
{
var op = document.createElement("OPTION");
op.value = data[i].user_id;
op.innerHTML =data[i].user_name;
employeeArr.appendChild(op);

}
}
function doAjaxSubmit(p_url, p_data, p_callback) {
$.ajax({
type:"POST",
url: p_url,
data: p_data,
dataType:"json",
success: function(data){
p_callback(data);
}
});
}

[/code]



                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: