EasyUI(DataGrid修改删除)
目录
一、项目结构
二、前台代码
三、后台代码
四、运行效果:
一、项目结构
二、前台代码
editBook.jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%> <div><form id="bookForm" method="post"> <input type="hidden" name="id" id="id"/><div style="margin: 15px;"> <label for="name">书名:</label> <input class="easyui-textbox" name="bookname" style="width:300px" data-options="required:true"> </div> <div style="margin: 15px;"> <label for="price">价格:</label> <input class="easyui-textbox" name="price" style="width:300px" data-options="required:true"> </div><div style="margin: 15px;"> <label for="booktype">类型:</label> <input class="easyui-textbox" name="booktype" style="width:300px" data-options="required:true"> </div> </form> </div>
bookList.jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <%@ include file="../../common/head.jsp"%> <title>Insert title here</title> <script> $(function(){$('#bookTable').datagrid({ url: ctx+'/BookServlet', pagination:true,singleSelect:true,queryParams: {"bookName": $("#bookName").val()},columns:[[ {field:'id',title:'书本ID',width:100}, {field:'bookname',title:'名称',width:100}, {field:'price',title:'价格',width:100,align:'right'},{field:'booktype',title:'类型',width:100,align:'right'}]],toolbar: '#bookTableToolbar'});$("#bookQry").click(function() {qryBook();});qryBook();function qryBook() {$('#bookTable').datagrid("load", {"bookName": $("#bookName").val()})};$("#addBookBtn").click(function() {openDialog();});$("#editBootBtn").click(function() {let row = $("#bookTable").datagrid("getSelected");openDialog(row);})$("#delBootBtn").click(function() {let row = $("#bookTable").datagrid("getSelected");if(!row) {$.messager.alert('消息','请选择要删除的记录');return;}$.ajax({url: ctx + '/bookDelServlet',type: 'post',data:{id: row.id},dataType: 'json',success: function(resp) {if(resp.success) {$.messager.alert('消息','操作成功');qryBook();}else{$.messager.alert('消息','操作不成功');}}})})function openDialog(row) {let title = "增加书本信息";let action = "/bookAddServlet"if(row) {title = "修改书本信息";action = "/bookUpdateServlet"}$('#bookDiglog').dialog({ title: title, width: 400, height: 250, closed: false, cache: false, href: 'editBook.jsp', modal: true,buttons:[{text:'保存',handler:function(){$.ajax({url:ctx + action,data: $("#bookForm").serialize(),type: 'post',dataType: 'JSON',success: function(resp) {if(resp.success) {$.messager.alert('消息','操作成功');$('#bookDiglog').dialog('close');qryBook();} else {$.messager.alert('警告','操作失败'); }}});}},{text:'关闭',handler:function(){$('#bookDiglog').dialog('close');}}],onLoad: function() {if(row) {$("#bookForm").form("reset");$("#bookForm").form("load", row);}}});} }); </script> </head> <body><!-- 查询条件 --><div style="margin-top: 15px; margin-left:10px;"><input class="easyui-textbox" id="bookName" style="width:300px"><a id="bookQry" class="easyui-linkbutton" data-options="iconCls:'icon-search'">查询</a> </div> <div id="p" class="easyui-panel" style="padding:10px" data-options="fit:true, border:false"><table id="bookTable" class="easyui-datagrid" style="width:100%;height:90%;"> </table></div><!-- 列表上方的工具条 --><div id="bookTableToolbar" style="text-align: right;"><a href="#" id="addBookBtn" class="easyui-linkbutton" data-options="iconCls:'icon-add',plain:true"/a><a href="#" id="editBootBtn" class="easyui-linkbutton" data-options="iconCls:'icon-edit',plain:true"/a><a href="#" id="delBootBtn" class="easyui-linkbutton" data-options="iconCls:'icon-remove',plain:true"/a></div><!-- 给弹出窗口定义一个容器,并默认为隐藏,在点击后再显示 --><div id="bookDiglog" style="display:none;"></div></body> </html>
三、后台代码
BookDao:
package com.zking.demo.dao;import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.util.ArrayList; import java.util.List;import com.zking.demo.model.Book; import com.zking.demo.util.DBHelper;public class BookDao implements IBookDao {@Overridepublic List<Book> getBooks(String name, int pageIndex, int pageSize) {Connection con = null;PreparedStatement ps = null;ResultSet rs = null;List<Book> list = new ArrayList<>();try {String sql = "select id,bookname,price,booktype,rownum as rid from t_book";if(name != null && !"".equals(name)) {sql += " where bookname like ?";}sql = "select * from (" + sql + ")b where b.rid between ? and ?";con = DBHelper.getsCon();ps = con.prepareStatement(sql);int start =(pageIndex-1)*pageSize+1;int end = pageIndex*pageSize;if(name != null && !"".equals(name)) {ps.setString(1, "%"+name+"%");ps.setInt(2, start);ps.setInt(3, end);} else {ps.setInt(1, start);ps.setInt(2, end);}rs = ps.executeQuery();while(rs.next()) {Book m = new Book();m.setId(rs.getInt("id"));m.setBookname(rs.getString("bookname"));m.setPrice(rs.getBigDecimal("price"));m.setBooktype(rs.getString("booktype"));list.add(m);}} catch (Exception e) {e.printStackTrace();} finally {DBHelper.Close(con, ps, rs);}return list;}@Overridepublic int getTotalPage() {Connection con = null;PreparedStatement ps = null;ResultSet rs = null;int n = 0;try {con= DBHelper.getsCon();String sql = "select count(*) from t_book";ps = con.prepareStatement(sql);rs= ps.executeQuery();if(rs.next()) {n = rs.getInt(1);}} catch (Exception e) {e.printStackTrace();}finally {DBHelper.Close(con, ps, rs);}return n;}@Overridepublic void addBook(Book book) {Connection con = null;PreparedStatement ps = null;String sql = "insert into t_book value (id,bookname,price, booktype) "+ "select max(id)+1,'"+ book.getBookname()+"','" + book.getPrice()+"','" + book.getBooktype()+"' from t_book";try {con = DBHelper.getsCon();ps = con.prepareStatement(sql);ps.executeUpdate();} catch (Exception e) {e.printStackTrace();} finally {DBHelper.Close(con, ps, null);}}@Overridepublic void updateBook(Book book) {Connection con = null;PreparedStatement ps = null;String sql = "update t_book set bookname=?, price=?,booktype=? where id=?" ;try {con = DBHelper.getsCon();ps = con.prepareStatement(sql);ps.setString(1, book.getBookname());ps.setBigDecimal(2, book.getPrice());ps.setString(3, book.getBooktype());ps.setInt(4, book.getId());ps.executeUpdate();} catch (Exception e) {e.printStackTrace();} finally {DBHelper.Close(con, ps,null);}}@Overridepublic int delBook(int id) {Connection con = null;PreparedStatement ps = null;int n = 0;String sql = "delete t_book where id=?" ;try {con = DBHelper.getsCon();ps = con.prepareStatement(sql);ps.setInt(1, id);n = ps.executeUpdate();} catch (Exception e) {e.printStackTrace();} finally {DBHelper.Close(con, ps,null);}return n;}public static void main(String[] args) {BookDao dao = new BookDao();List<Book> books = dao.getBooks("货", 1, 5);books.forEach(t -> System.out.println(t));}}
BookService:
package com.zking.demo.service;import java.util.List;import com.zking.demo.dao.BookDao; import com.zking.demo.dao.IBookDao; import com.zking.demo.model.Book;public class BookService implements IBookService {private IBookDao dao = new BookDao();@Overridepublic List<Book> getBooks(String name, int pageIndex, int pageSize) {return dao.getBooks(name, pageIndex, pageSize);}@Overridepublic int getTotalPage() {return dao.getTotalPage();}@Overridepublic void addBook(Book book) {dao.addBook(book);}@Overridepublic void updateBook(Book book) {dao.updateBook(book);}@Overridepublic int delBook(int id) {// TODO Auto-generated method stubreturn dao.delBook(id);}}
BookUpdateServlet:
package com.zking.demo.servlet;import java.io.IOException; import java.io.PrintWriter; import java.math.BigDecimal; import java.util.HashMap; import java.util.Map;import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;import com.alibaba.fastjson.JSON; import com.zking.demo.model.Book; import com.zking.demo.service.BookService; import com.zking.demo.service.IBookService;@WebServlet("/bookUpdateServlet") public class BookUpdateServlet extends HttpServlet {private IBookService service = new BookService();public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {doPost(req, resp);}public void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException {req.setCharacterEncoding("utf-8");resp.setContentType("application/json; charset=utf-8"); Map<String,Object> map = new HashMap<>();try {Book book = new Book();book.setId(Integer.parseInt(req.getParameter("id")));book.setBookname(req.getParameter("bookname"));book.setPrice(BigDecimal.valueOf(Double.parseDouble(req.getParameter("price"))));book.setBooktype(req.getParameter("booktype"));service.updateBook(book);map.put("success", true);} catch (Exception e) {e.printStackTrace();map.put("success", false);}PrintWriter out = resp.getWriter();out.write(JSON.toJSONString(map));out.flush();out.close();}}
BookDelServlet:
package com.zking.demo.servlet;import java.io.IOException; import java.io.PrintWriter; import java.util.HashMap; import java.util.Map;import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;import com.alibaba.fastjson.JSON; import com.zking.demo.service.BookService; import com.zking.demo.service.IBookService;@WebServlet("/bookDelServlet") public class BookDelServlet extends HttpServlet {private IBookService service = new BookService();public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {doPost(req, resp);}public void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException {req.setCharacterEncoding("utf-8");resp.setContentType("application/json; charset=utf-8"); Map<String,Object> map = new HashMap<>();int id = Integer.parseInt(req.getParameter("id"));int n = service.delBook(id);if(n > 0) {map.put("success", true);}else {map.put("success", false);}PrintWriter out = resp.getWriter();out.write(JSON.toJSONString(map));out.flush();out.close();}}
四、运行效果:
EasyUI(DataGrid修改删除)相关推荐
- 使用EasyUI实现修改删除功能
目录 前言: 这次的功能是基于上一次的项目做的,如果有不懂的可以看上一节使用EasyUI实现增加功能 一:前台开发 二:后台开发 三:效果图 距离使用EasyUI完成整个后台.书本管理项目只剩这最后一 ...
- easyui 修改单元格内容_jquery easyui datagrid实现增加,修改,删除方法总结
本文实例讲述了jquery easyui datagrid实现增加,修改,删除的方法.分享给大家供大家参考,具体如下: 页面: 引用的JS: JS: $(function(){ $('#tt').da ...
- EasyUI(修改删除)
目录 一.创建数据库 二.创建包结构 三.更改主页结构 四.页面搭建 五.dao层开发 六.Service层开发 七.Servlet开发 八.运行效果 一.创建数据库 二.创建包结构 三.更改主页结构 ...
- easyui datagrid编辑时修改其它列的数值.
easyui datagrid编辑时修改其它列的数值. { field: 'converter', title: '转化器', align: 'left', width: 250,editor: {t ...
- 【EasyUi DataGrid】批量删除
DataGrid是我们做网页常用到的组件之一,对它的操作也无非是增删改查操作.单条数据的增删改相对来说比较简单,增加.修改可以直接在DataGrid中进行,也可以用弹出框的形式把数据装载在文本框等各种 ...
- easyui datagrid单独修改某列的值
此时心中毫无波澜,只觉得好饿 废话不多说,先看效果图: 代码: <th field="departmentId" width="150px" sortab ...
- easyui datagrid 表格 属性和方法
使用方法(Usage Example) 从现有的表单元素创建数据表格,定义在html中的行,列和数据. <table class="easyui-datagrid"> ...
- easyui datagrid plunges 扩展 插件
项目使用 springmvc4.x spring4.x hibernate4.x easyui 为了便于开发,扩展了easyui 的 datagrid 功能,下面直接贴上扩展代码: /** * c ...
- EasyUI datagrid detailview
全部展开: var me = this; setTimeout(function () { //延时触发easyui datagrid detailviewclick事件, 不用计时器无法展开,不 ...
- jquery easyui dataGrid动态改变排序字段名
2019独角兽企业重金招聘Python工程师标准>>> jquery easyui dataGrid 动态改变排序字段名,一般情况下,在使用的时候,我们会点击相应字段进行排序, 这里 ...
最新文章
- 经典排序算法之直接选择排序
- cnpm与npm指定有什么区别?
- 【Thymeleaf】获取绝对路径
- Java 并发编程必须知道的七种锁类型以及应用
- python卷积函数_python – 理解Scipy卷积
- struts2:数据标签
- Latex:利用BibTeX批量导入参考文献
- java12安装和配置_JDK12 安装和环境变量配置
- Element-UI学习笔记-安装
- 做了一款股票复盘工具
- MTK camera tuning学习中遇到的一些问题(调试前)
- 【FFmpeg4.1.4】音视频分离器
- 【问题解决】seckill-秒杀项目 -- 服务端异常
- 金桔蓝牙LoRa主被动一体定位系统原理
- google paly发布app设备兼容性的识别
- win11系统输入法增加小鹤双排
- Win10系统电脑玩地平线4闪退解决方法教学
- 手把手教你扩展个人微信号(2)
- 【职场管理】如果公司要你轮岗,怎么办?
- 使用vue-qr生成带中间带图片的二维码
热门文章
- 多声道音频指南(二)—— 前世与今生
- Rational Team Concert 2
- ERR_PNPM_PEER_DEP_ISSUES Unmet peer dependencies
- canvas画出闪瞎眼的简单图形
- 【BZOJ2037】Sue的小球(动态规划)
- P1359 租用游艇 dfs/dp/floyd/dijk/spfa DAG(有向无环图)
- layui实现后台管理系统界面:对示例代码改动几处即可轻松实现(转载)
- python写网络爬虫的环境搭建(windows完整版)
- Science Robotics | 美国造“自我意识”机器人?还能自我复制?
- 基于cesium和mars3d海洋三维管线信息系统开发完工总结