dhtmlxScheduler数据库增删改ssh+jsp+ajax
来源:互联网 发布:用java编写简单计算器 编辑:程序博客网 时间:2024/04/29 18:48
1.今天用了dhmtl做了一个增删改查的功能。
之前都只是做了一个展示的功能。对于这个东西的运用也不算特别的熟悉,在网上找的例子我也不是看的特别的懂。所以现在的话记录一下
2.java action 代码
public class ScheduleinfoAction extends BaseAction {private BaseDao baseDao;private ScheduleinfoDao scheduleinfoDao;private Scheduleinfo scheduleinfo;private String str;public void delete() throws IOException {scheduleinfo=baseDao.getPoById(Scheduleinfo.class, id, true);scheduleinfo.setIsDelete(1);baseDao.updatePo(scheduleinfo);}public void saveOrUpdate() {if(scheduleinfo==null){scheduleinfo=new Scheduleinfo();}String strs[]=str.split("#");if(str!=null && !str.equals("")){//3个参数是做保存操作if(strs.length==3){scheduleinfo.setStartTime(strs[0]);scheduleinfo.setEndTime(strs[1]);scheduleinfo.setText(strs[2]);}//4个参数是做修改操作else if(strs.length==4){scheduleinfo.setStartTime(strs[0]);scheduleinfo.setEndTime(strs[1]);scheduleinfo.setText(strs[2]);scheduleinfo.setId(strs[3]);}}if(scheduleinfo!=null && scheduleinfo.getId()!=null && !scheduleinfo.getId().equals("")){Scheduleinfo notice1=baseDao.getPoById(Scheduleinfo.class, scheduleinfo.getId(), false);TTBeanUtils.copyProperties(scheduleinfo, notice1);notice1.setUpdateDate(new Date());notice1.setUpdater(this.getUserId());baseDao.updatePo(notice1);}else{scheduleinfo.setPublishDate(new Date());Employee e=new Employee();e.setId(this.getUserId());scheduleinfo.setEmployee(e);scheduleinfo.setCode(this.getEmployeeCode());scheduleinfo.setSubmitDate(new Date());scheduleinfo.setIsDelete(0);scheduleinfo.setStatus(1);baseDao.savePo(scheduleinfo);}}<span style="white-space:pre"></span>//这里是做数据查询展示的public void showList() throws IOException {if(scheduleinfo==null){scheduleinfo=new Scheduleinfo();}HttpServletRequest request = ServletActionContext.getRequest();List<Scheduleinfo> list=baseDao.findPos(scheduleinfoDao.getHql(scheduleinfo, getEmployeeCode()));List<Map<String, String>> listjson = new ArrayList<Map<String, String>>();for(Scheduleinfo t : list){Map<String, String> map = new HashMap<String, String>();map.put("id", t.getId());map.put("start_date", t.getStartTime());map.put("end_date", t.getEndTime());map.put("text", t.getText());listjson.add(map);}HashMap<String, Object> map = new HashMap<String, Object>();map.put("data", listjson);JSONObject json = JSONObject.fromObject(map);HttpServletResponse response = ServletActionContext.getResponse();response.setCharacterEncoding("utf-8");response.getWriter().write(json.toString());}public String listCA(){return "listCA";}public BaseDao getBaseDao() {return baseDao;}public void setBaseDao(BaseDao baseDao) {this.baseDao = baseDao;}public void setScheduleinfoDao(ScheduleinfoDao scheduleinfoDao) {this.scheduleinfoDao = scheduleinfoDao;}public void setScheduleinfo(Scheduleinfo scheduleinfo) {this.scheduleinfo = scheduleinfo;}public String getStr() {return str;}public void setStr(String str) {this.str = str;}}
我这边的话。大概展示了一些方法。大概就是增加修改删除,数据查询然后返回jsonzif
showList()这个方法:里面返回的map名字,要跟那个Scheduler默认的名字一样。
我这里大概设置了id 开始时间 结束时间 展示的内容这四个 id的话。主要是做修改和删除功能的。
现在来展示页面的代码
<script type="text/javascript" charset="utf-8">function init() {scheduler.config.multi_day = true;scheduler.config.event_duration = 35;scheduler.config.xml_date = "%Y-%m-%d %H:%i";/**删除事件**/scheduler.attachEvent("onBeforeEventDelete", function(event_id,event_object) {var url = "${pageContext.request.contextPath}/manager/scheduleinfo/delete.action";var id = event_object.id;var text = event_object.text;var convert = scheduler.date.date_to_str("%Y-%m-%d %H:%i");$.ajax({type : "POST",url : url,dataType:"text",data:{"id":id},success : function(data) { location.href="${pageContext.request.contextPath}/manager/scheduleinfo/listCA.action";}});});/** 修改事件**/scheduler.attachEvent("onEventChanged",function(event_id, event_object) {var url = "${pageContext.request.contextPath}/manager/scheduleinfo/saveOrUpdate.action";var id = event_object.id;var text = event_object.text;// date 需要实现格式化var convert = scheduler.date.date_to_str("%Y-%m-%d %H:%i");var start_date = convert(event_object.start_date);var end_date = convert(event_object.end_date);var details = event_object.details;var pars = "id=" + id + "&start_date=" + start_date+ "&end_date=" + end_date + "&text=" + text+ "&details=" + details;var str=start_date+"#"+end_date+"#"+text+"#"+id;alert(str);$.ajax({type : "POST",url : url,dataType:"text",data:{"str":str},success : function(data) { location.href="${pageContext.request.contextPath}/manager/scheduleinfo/listCA.action";}//更新界面event}});});/** 保存事件**/scheduler.attachEvent("onEventAdded", function(event_id, event_object) {var url = "${pageContext.request.contextPath}/manager/scheduleinfo/saveOrUpdate.action";var id = event_object.id;var text = event_object.text;// date 需要实现格式化var convert = scheduler.date.date_to_str("%Y-%m-%d %H:%i");var start_date = convert(event_object.start_date);var end_date = convert(event_object.end_date);var details = event_object.details;var str=start_date+"#"+end_date+"#"+text;$.ajax({type : "POST",url : url,dataType:"text",data:{"str":str},success : function(data) { location.href="${pageContext.request.contextPath}/manager/scheduleinfo/listCA.action";}});});scheduler.config.lightbox.sections = [ {name : "description",height : 200,map_to : "text",type : "textarea",focus : true}, {name : "recurring",type : "recurring",map_to : "rec_type",button : "recurring"}, {name : "time",height : 72,type : "calendar_time",map_to : "auto"} ];scheduler.init('scheduler_here', new Date(), "week");scheduler.load("${pageContext.request.contextPath}/manager/scheduleinfo/showList.action","json");}</script></head><body onload="init();"><div id="scheduler_here" class="dhx_cal_container"style='width: 100%; height: 100%;'><div class="dhx_cal_navline"><div class="dhx_cal_prev_button"> </div><div class="dhx_cal_next_button"> </div><div class="dhx_cal_today_button"></div><div class="dhx_cal_date"></div><div class="dhx_cal_tab" name="day_tab" style="right: 204px;"></div><div class="dhx_cal_tab" name="week_tab" style="right: 140px;"></div><div class="dhx_cal_tab" name="month_tab" style="right: 76px;"></div></div><div class="dhx_cal_header"></div><div class="dhx_cal_data"></div></div></body>我引入了这些文件
<script src="<%=realpath%>/widget/dhtmlxscheduler/codebase/dhtmlxscheduler.js" type="text/javascript" charset="utf-8"></script><script src="<%=realpath%>/widget/dhtmlxscheduler/codebase/ext/dhtmlxscheduler_limit.js" type="text/javascript" charset="utf-8"></script><script src="<%=realpath%>/widget/dhtmlxscheduler/codebase/ext/dhtmlxscheduler_units.js" type="text/javascript" charset="utf-8"></script><script src="<%=realpath%>/widget/dhtmlxscheduler/codebase/ext/dhtmlxscheduler_recurring.js" type="text/javascript" charset="utf-8"></script><script src="<%=realpath%>/widget/dhtmlxscheduler/codebase/ext/dhtmlxscheduler_minical.js" type="text/javascript" charset="utf-8"></script><script src="<%=realpath%>/widget/dhtmlxscheduler/codebase/dhtmlxscheduler_timeline.js" type="text/javascript" charset="utf-8"></script><link rel="stylesheet" href="<%=realpath%>/widget/dhtmlxscheduler/codebase/dhtmlxscheduler.css" type="text/css" media="screen" title="no title" charset="utf-8"><script src="<%=realpath%>/widget/dhtmlxscheduler/codebase/locale/locale_cn.js"type="text/javascript" charset="utf-8"></script><script type="text/javascript" src="<%=realpath%>/widget/jquery-1.10.2.min.js"></script>
我这边有个问题。就是页面不能及时更新。我这边的话。也不知道要怎么做。
所以我是当修改增加删除成功以后。重新在请求了一下展示的页面。如果你们有更好的方法。记得评论哟
代码download地址:http://download.csdn.net/detail/rendeyishi/9540698
友情提示:代码不能运行,跟博客差不多。只是做参考。
页面效果
1 0
- dhtmlxScheduler数据库增删改ssh+jsp+ajax
- JSP与数据库的增删改查
- servlet+jsp数据库增删改查实例
- JSP数据库的封装,增删改查
- SSH的增删改查(通过AJAX查询显示)
- SSH增删改查
- ssh框架下 对数据库的增删改查
- ssh完成对oracle数据库的增删查改
- PHP+JQ+AJAX+json 数据库实时动态增删改查
- SQL server2012数据库增删改查(初学,JSP,MyEclipse)
- jsp+servlet+jdbc实现对数据库的增删改查
- JSP中链接MySQL数据库以及增删改查
- Jsp+Servlet对数据库的增删改查
- jsp+servlet+jdbc实现对数据库的增删改查
- 基于JSP的数据库增删改查实现
- jsp+servlet+jdbc实现对数据库的增删改查
- jsp+servlet+jdbc实现对数据库的增删改查
- SSH 增删改查综合
- 浅谈数据分析和数据建模
- 2016年第七届 蓝桥杯 全国总决赛B题(完全平方数)
- 第三方社会化评论系统体验报告
- 北航面试之离散数学
- redis方法
- dhtmlxScheduler数据库增删改ssh+jsp+ajax
- 用指向函数的指针作函数参数
- c++6.2
- 第十二周上机实践项目2:Time类中的运算符重载
- leetcode.44. Wildcard Matching
- 软件设计之 单一职责原则(SRP)
- SICP 练习1.31 product过程
- JZOJ4513. 【JSOI2016】独特的树叶
- 感悟:致在大学中感到迷茫或即将进入大学的你