package com.jiangjiayan.util;
public class Result {
private int code;
private String msg;
private T data;
public static Result SUCCESS = new Result<>(200,"操作成功");
public static Result ok(T data) {
return new Result(data);
}
public int getCode() {
return code;
}
public void setCode(int code) {
this.code = code;
}
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
public T getData() {
return data;
}
public void setData(T data) {
this.data = data;
}
private Result() {
super();
}
private Result(int code, String msg) {
super();
this.code = code;
this.msg = msg;
}
private Result(T data) {
super();
this.data = data;
}
}
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
新增界面
$(function(){
var ctx = $("#ctx").val();
$('#dg').datagrid({
url:ctx+'/book.action?methodName=datagrid',
//分页
pagination:true,
toolbar: '#tb',
columns:[[
{field:'id',title:'id',width:100},
{field:'name',title:'名称',width:200},
{field:'pinyin',title:'拼音',width:200,align:'right'},
{field:'cid',title:'书籍类别',width:100},
{field:'author',title:'作者',width:100},
{field:'price',title:'价格',width:100},
{field:'image',title:'图片路径',width:320},
{field:'publishing',title:'出版社',width:100},
{field:'description',title:'描述',width:200},
{field:'state',title:'书籍状态',width:100},
{field:'deployTime',title:'上架时间',width:150},
{field:'sales',title:'销量',width:100}
]]
});
// 点击搜索按钮按名字进行书籍查询
$("#btn-search").click(function(){
$('#dg').datagrid('load', {
name: $("#name").val()
});
});
// 给新增按钮添加点击事件
$("#btn-add").click(function(){
// 打开dialog窗体,查看该组件的方法api
$('#bookEdit').dialog('open');
});
$("#btn-save").click(function(){
$("#ff").form('submit',{
url:ctx+'/book.action?methodName=save',
onSubmit:function(){
console.log('onsubmit....');
},
success:function(data){
data = eval('('+data+')');
// debugger;
if(data.code == 200){
alert(data.msg);
// 刷新数据
$('#ff').form('clear');
$('#bookEdit').dialog('close');
$('#dg').datagrid('reload');
}
}
});
});
// $('#ff').submit();
})
function edit(){
// alert(1);
// 做数据回显,将选中datagrid行的值回填到form表单
var row = $('#dg').datagrid('getSelected');
if(row){
$('#ff').form('load',row);
}
// 让用户看到form表单
$('#bookEdit').dialog('open');
}
function del(){
var row = $('#dg').datagrid('getSelected');
if(row){
$.ajax({
url:ctx+'/book.action?methodName=del&&id='+row.id,
success:function(data){
data = eval('('+data+')');
// debugger;
if(data.code == 200){
alert(data.msg);
// 刷新datagrid的数据
$('#dg').datagrid('reload');
}
}
});
}
}
dao:
public int add(Book book) throws NoSuchFieldException, SecurityException, IllegalArgumentException, IllegalAccessException, SQLException {
// pinyin的属性值不是从jsp传递过来的
book.setPinyin(PinYinUtil.getAllPingYin(book.getName()));
// 从前端jsp传到后端的deployTime属性值是String类型的,而数据库需要的是date/Timestamp
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-DD ");
String sql="insert into t_easyui_book values(null,?,?,?,?,?,?,?,?,?,?,?)";
return super.executeUpdate(sql, book, new String[] {"name","pinyin","cid","author","price","image","publishing","description","state","deployTime","sales"});
}
BookAction:
public String add(HttpServletRequest req,HttpServletResponse resp) {
try {
int add =this.bookDao.add(book);
ResponseUtil.writeJson(resp, Result.SUCCESS);
} catch (NoSuchFieldException e) {
e.printStackTrace();
} catch (SecurityException e) {
e.printStackTrace();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
dao:
public int del(Book book) throws NoSuchFieldException, SecurityException, IllegalArgumentException, IllegalAccessException, SQLException {
String sql="delete from t_easyui_book where id=?";
return super.executeUpdate(sql, book, new String[] {"id"});
}
BookAction:
public String del(HttpServletRequest req,HttpServletResponse resp) {
try {
this.bookDao.del(book);
ResponseUtil.writeJson(resp, Result.SUCCESS);
} catch (NoSuchFieldException e) {
e.printStackTrace();
} catch (SecurityException e) {
e.printStackTrace();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
dao:
public int edit(Book book) throws NoSuchFieldException, SecurityException, IllegalArgumentException, IllegalAccessException, SQLException {
book.setPinyin(PinYinUtil.getAllPingYin(book.getName()));
String sql="update t_easyui_book set name=?,pinyin=?,cid=?,author=?,price=?,image=?,publishing=?,description=?,state=?,deployTime=?,sales=? where id=?)";
return super.executeUpdate(sql, book, new String[] {"name","pinyin","cid","author","price","image","publishing","description","state","deployTime","sales","id"});
}
BookAction:
public String edit(HttpServletRequest req,HttpServletResponse resp) {
try {
this.bookDao.edit(book);
ResponseUtil.writeJson(resp, Result.SUCCESS);
} catch (NoSuchFieldException e) {
e.printStackTrace();
} catch (SecurityException e) {
e.printStackTrace();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}