Java浠g爜
- @Override聽聽
- protected聽ModelAndView聽onSubmit(HttpServletRequest聽request,聽HttpServletResponse聽response,聽Object聽cmd, 聽聽
- 聽聽聽聽聽聽聽聽BindException聽ex)聽{ 聽聽
- 聽聽聽聽String聽userId=request.getParamater("userId"); 聽聽
- 聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽Map聽userInfoMap=userDao.getUserBaseInfo(userId); 聽聽
- 聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽JSONObject聽object聽=聽new聽JSONObject(); 聽聽
- 聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽object.put("userInfoMap",userInfoMap); 聽聽
- 聽聽聽聽response.setContentType("text/Xml;charset=gbk"); 聽聽
- 聽聽聽聽PrintWriter聽out聽=聽null; 聽聽
- 聽聽聽聽try聽{ 聽聽
- 聽聽聽聽聽聽聽聽out聽=聽response.getWriter(); 聽聽
- 聽聽聽聽聽聽聽聽聽聽聽聽聽out.println(object.toString()); 聽聽
- 聽聽聽聽聽聽聽聽聽聽聽聽聽 聽聽
- 聽聽聽聽} 聽聽
- 聽聽聽聽catch聽(IOException聽ex1)聽{ 聽聽
- 聽聽聽聽聽聽聽聽ex1.printStackTrace(); 聽聽
- 聽聽聽聽}finally{ 聽聽
- 聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽out.close(); 聽聽
- 聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽} 聽聽
- 聽聽聽聽return聽null; 聽聽
- }聽聽
@Override
protected ModelAndView onSubmit(HttpServletRequest request, HttpServletResponse response, Object cmd,
BindException ex) {
String userId=request.getParamater("userId");
Map userInfoMap=userDao.getUserBaseInfo(userId);
JSONObject object = new JSONObject();
object.put("userInfoMap",userInfoMap);
response.setContentType("text/Xml;charset=gbk");
PrintWriter out = null;
try {
out = response.getWriter();
out.println(object.toString());
}
catch (IOException ex1) {
ex1.printStackTrace();
}finally{
out.close();
}
return null;
}
璇存槑涓€涓嬫垜鍚戝鎴風椤甸潰response鐨勬槸涓€涓狫Son瀵矽薄,閫夋嫨JSon杩欑鏁版嵁鏍煎紡鐨勪袱涓師鍥犳槸:
- 浣撶Н灏忓彲闄嶄綆娴侀噺.
- Js绔В鐮佸崄鍒嗘柟渚?Js瀵笿Son鏍煎紡鏁版嵁鏈夊師鐢熺殑鏀寔.
浣跨敤Spring Mvc鍘熸湁鐨凷impleFormController,浠庝笂杈圭殑渚嬪瓙涓婄湅鏄彲浠ュ疄鐜扮殑,浣嗘槸姣忔閮借鍐?灏咼SonObject鍐欏叆娴?鍏蟲祦鐨勪唬鐮?寰堢瘡,寰堥夯绾?"
鎵€浠?鎵╁睍浜嗕袱涓柊鐨凜ontroller,浠ョ畝鍖栧Ajax璇鋒眰鐨勫鐞?
JSONObjectAbstractController 鐢ㄤ簬绠€鍗曠殑浠巖equest.getParamater鍙傛暟鐨勬儏鍐?
JSONObjectAbstractController 鐨勫師浠g爜:
Java浠g爜
- package聽com.javaest.ext.spring.mvc.controller; 聽聽
- 聽聽
- import聽java.io.IOException; 聽聽
- import聽java.io.PrintWriter; 聽聽
- 聽聽
- import聽javax.servlet.http.HttpServletRequest; 聽聽
- import聽javax.servlet.http.HttpServletResponse; 聽聽
- 聽聽
- import聽net.sf.json.JSONObject; 聽聽
- 聽聽
- import聽org.springframework.web.servlet.ModelAndView; 聽聽
- import聽org.springframework.web.servlet.mvc.AbstractController; 聽聽
- 聽聽
- public聽abstract聽class聽JSONObjectAbstractController聽extends聽AbstractController聽{ 聽聽
- 聽聽
- 聽聽聽聽@Override聽聽
- 聽聽聽聽protected聽ModelAndView聽handleRequestInternal(HttpServletRequest聽request,聽HttpServletResponse聽response) 聽聽
- 聽聽聽聽聽聽聽聽聽聽聽聽throws聽Exception聽{ 聽聽
- 聽聽聽聽聽聽聽聽JSONObject聽jsonObject聽=聽handleAjaxRequestInternal(request,聽response); 聽聽
- 聽聽聽聽聽聽聽聽response.setContentType("text/Xml;charset=gbk"); 聽聽
- 聽聽聽聽聽聽聽聽PrintWriter聽out聽=聽null; 聽聽
- 聽聽聽聽聽聽聽聽try聽{ 聽聽
- 聽聽聽聽聽聽聽聽聽聽聽聽out聽=聽response.getWriter(); 聽聽
- 聽聽聽聽聽聽聽聽聽聽聽聽out.println(jsonObject.toString()); 聽聽
- 聽聽聽聽聽聽聽聽} 聽聽
- 聽聽聽聽聽聽聽聽catch聽(IOException聽ex1)聽{ 聽聽
- 聽聽聽聽聽聽聽聽聽聽聽聽ex1.printStackTrace(); 聽聽
- 聽聽聽聽聽聽聽聽} 聽聽
- 聽聽聽聽聽聽聽聽finally聽{ 聽聽
- 聽聽聽聽聽聽聽聽聽聽聽聽out.close(); 聽聽
- 聽聽聽聽聽聽聽聽} 聽聽
- 聽聽
- 聽聽聽聽聽聽聽聽return聽null; 聽聽
- 聽聽聽聽} 聽聽
- 聽聽
- 聽聽聽聽protected聽abstract聽JSONObject聽handleAjaxRequestInternal(HttpServletRequest聽httpServletRequest, 聽聽
- 聽聽聽聽聽聽聽聽聽聽聽聽HttpServletResponse聽httpServletResponse)聽throws聽Exception; 聽聽
- 聽聽
- }聽聽
package com.javaest.ext.spring.mvc.controller;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import net.sf.json.JSONObject;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.AbstractController;
public abstract class JSONObjectAbstractController extends AbstractController {
@Override
protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response)
throws Exception {
JSONObject jsonObject = handleAjaxRequestInternal(request, response);
response.setContentType("text/Xml;charset=gbk");
PrintWriter out = null;
try {
out = response.getWriter();
out.println(jsonObject.toString());
}
catch (IOException ex1) {
ex1.printStackTrace();
}
finally {
out.close();
}
return null;
}
protected abstract JSONObject handleAjaxRequestInternal(HttpServletRequest httpServletRequest,
HttpServletResponse httpServletResponse) throws Exception;
}
JSONObjectSimpleFormController 鐢ㄤ簬鑷姩灏嗚姹傚弬鏁扮粦瀹氬埌Command瀵矽薄鐨勬儏鍐?
JSONObjectSimpleFormController 鐨勪唬鐮?
Java浠g爜
- package聽com.javaest.ext.spring.mvc.controller; 聽聽
- 聽聽
- import聽java.io.IOException; 聽聽
- import聽java.io.PrintWriter; 聽聽
- 聽聽
- import聽javax.servlet.http.HttpServletRequest; 聽聽
- import聽javax.servlet.http.HttpServletResponse; 聽聽
- 聽聽
- import聽net.sf.json.JSONObject; 聽聽
- 聽聽
- import聽org.springframework.validation.BindException; 聽聽
- import聽org.springframework.web.servlet.ModelAndView; 聽聽
- import聽org.springframework.web.servlet.mvc.SimpleFormController; 聽聽
- 聽聽
- public聽abstract聽class聽JSONObjectSimpleFormController聽extends聽SimpleFormController聽{ 聽聽
- 聽聽
- 聽聽聽聽@Override聽聽
- 聽聽聽聽protected聽ModelAndView聽onSubmit(HttpServletRequest聽request,聽HttpServletResponse聽response,聽Object聽cmd, 聽聽
- 聽聽聽聽聽聽聽聽聽聽聽聽BindException聽ex)聽{ 聽聽
- 聽聽聽聽聽聽聽聽JSONObject聽object聽=聽onAjaxSubmit(request,聽response,聽cmd,聽ex); 聽聽
- 聽聽
- 聽聽聽聽聽聽聽聽response.setContentType("text/Xml;charset=gbk"); 聽聽
- 聽聽聽聽聽聽聽聽PrintWriter聽out聽=聽null; 聽聽
- 聽聽聽聽聽聽聽聽try聽{ 聽聽
- 聽聽聽聽聽聽聽聽聽聽聽聽out聽=聽response.getWriter(); 聽聽
- 聽聽聽聽聽聽聽聽聽聽聽聽out.println(object.toString()); 聽聽
- 聽聽聽聽聽聽聽聽} 聽聽
- 聽聽聽聽聽聽聽聽catch聽(IOException聽ex1)聽{ 聽聽
- 聽聽聽聽聽聽聽聽聽聽聽聽ex1.printStackTrace(); 聽聽
- 聽聽聽聽聽聽聽聽} 聽聽
- 聽聽聽聽聽聽聽聽finally聽{ 聽聽
- 聽聽聽聽聽聽聽聽聽聽聽聽out.close(); 聽聽
- 聽聽聽聽聽聽聽聽} 聽聽
- 聽聽
- 聽聽聽聽聽聽聽聽return聽null; 聽聽
- 聽聽聽聽} 聽聽
- 聽聽
- 聽聽聽聽public聽abstract聽JSONObject聽onAjaxSubmit(HttpServletRequest聽request,聽HttpServletResponse聽response,聽Object聽cmd, 聽聽
- 聽聽聽聽聽聽聽聽聽聽聽聽BindException聽ex); 聽聽
- 聽聽
- }聽聽
娉細JSONObject聽鏄痡son-lib-2.3-jdk15.jar涓殑锛岃鑷繁涓嬭澆瀵煎叆
聽聽聽 鏈枃鏄漿杞絟ttp://www.javaeye.com/topic/187504