easyui与ssh(struts1)的整合实现增删改查、分页
整理了下easyui与ssh(struts1)的整合实现增删改查、分页,现在将部分源码附上,struts、hibernate、spring配置及实现省略。
1.页面部分
package com.demo.action;import java.io.PrintWriter;import java.util.HashMap;import java.util.List;import java.util.Map;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import net.sf.json.JSONArray;import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;import org.apache.struts.action.ActionForm;import org.apache.struts.action.ActionForward;import org.apache.struts.action.ActionMapping;import com.demo.domain.Demo;import com.demo.domain.NewsBean;import com.demo.domain.Topics;import com.demo.service.DemoService;import com.demo.service.ServiceFacade;public class NewsAction extends BaseAction {//private Log logger = LogFactory.getLog(this.getClass());private ServiceFacade serviceFacade;public void setServiceFacade(ServiceFacade serviceFacade) {this.serviceFacade = serviceFacade;}public ActionForward create(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response)throws Exception {NewsBean obj = new NewsBean();obj.setTitle(request.getParameter("title"));obj.setURL(request.getParameter("URL"));obj.setPubTime(request.getParameter("pubTime"));obj.setTopicid(Long.valueOf("4"));//System.out.println(obj.getTitle()+obj.getURL()+obj.getPubTime());serviceFacade.create(obj);//用ajaxForm,必须以html格式返回json数据. 也就是 response.setContentType("text/html; charset=utf-8"); 这样返回的数据才能被设置到回调函数里面response.setContentType("text/html;charset=UTF-8");response.setHeader("Cache-Control", "no-cache");PrintWriter out = response.getWriter();Map<String, Object> m = new HashMap<String, Object>();m.put("success", "true");//m.put("success", "true");//m.put("msg", "Some errors occured")JSONArray jsonArray = JSONArray.fromObject(m);int start =jsonArray.toString().indexOf("[");int end = jsonArray.toString().lastIndexOf("}");out.print(jsonArray.toString().substring(start+1, end+1));out.flush();out.close();return null;}public ActionForward delete(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response)throws Exception {NewsBean obj = serviceFacade.findNewsBeanById(Long.valueOf(request.getParameter("id")));serviceFacade.delete(obj);response.setContentType("text/html;charset=UTF-8");response.setHeader("Cache-Control", "no-cache");PrintWriter out = response.getWriter();Map<String, Object> m = new HashMap<String, Object>();m.put("success", "true");//m.put("success", "true");//m.put("msg", "Some errors occured")JSONArray jsonArray = JSONArray.fromObject(m);int start =jsonArray.toString().indexOf("[");int end = jsonArray.toString().lastIndexOf("}");out.print(jsonArray.toString().substring(start+1, end+1));out.flush();out.close();return null;}public ActionForward update(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response)throws Exception {NewsBean obj = serviceFacade.findNewsBeanById(Long.valueOf(request.getParameter("id")));obj.setTitle(request.getParameter("title"));obj.setURL(request.getParameter("URL"));obj.setPubTime(request.getParameter("pubTime"));serviceFacade.update(obj);response.setContentType("text/html;charset=UTF-8");response.setHeader("Cache-Control", "no-cache");PrintWriter out = response.getWriter();Map<String, Object> m = new HashMap<String, Object>();m.put("success", "true");//m.put("success", "true");//m.put("msg", "Some errors occured")JSONArray jsonArray = JSONArray.fromObject(m);int start =jsonArray.toString().indexOf("[");int end = jsonArray.toString().lastIndexOf("}");out.print(jsonArray.toString().substring(start+1, end+1));out.flush();out.close();return null;}public ActionForward toFindByTopic(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response)throws Exception {return mapping.findForward("list1");}public ActionForward findByTopic(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response)throws Exception {String page = request.getParameter("page");String rows = request.getParameter("rows");String sort = request.getParameter("sort");String order = request.getParameter("order");//分页int intPage = Integer.parseInt((page == null || page == "0") ? "1":page); int number = Integer.parseInt((rows == null || rows == "0") ? "10":rows); //排序 sort = (sort == null || "".equals(sort)) ? "id":sort; //排序字段 order = (order == null || "".equals(order)) ? "DESC":order; //排序默认DESC //查询(可用)// String key = request.getParameter("key");// String starttime = request.getParameter("starttime");// String endtime = request.getParameter("endtime");// if(key!=null) System.out.println("key"+key);// if(starttime!=null) System.out.println("starttime"+starttime);// if(endtime!=null) System.out.println("endtime"+endtime); //修改 //删除 //每页显示条数 // System.out.println(serviceFacade.getNewsCounts());List<NewsBean> newslist = serviceFacade.findNews(intPage, number,sort,order);//转换为json数据Map<String, Object> m = new HashMap<String, Object>();m.put("total", serviceFacade.getNewsCounts());m.put("rows", newslist);JSONArray jsonArray = JSONArray.fromObject(m);int start =jsonArray.toString().indexOf("[");int end = jsonArray.toString().lastIndexOf("}");response.setContentType("application/json;charset=UTF-8");response.setHeader("Cache-Control", "no-cache");PrintWriter out = response.getWriter();out.print(jsonArray.toString().substring(start+1, end+1));out.flush();out.close();newslist = null;newslist = null;jsonArray = null;return null;}}