备份:书籍表添加作者,代码修改之前

pull/1/head
you 5 years ago
parent e1da768113
commit 7a249e7d1b

@ -1,3 +1,5 @@
<%@page import="java.sql.ResultSet"%>
<%@page import="javabean.JDBCBean"%>
<%@ page language="java" contentType="text/html; charset=UTF-8" <%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%> pageEncoding="UTF-8"%>
<!DOCTYPE html> <!DOCTYPE html>
@ -11,69 +13,79 @@
<style> <style>
.layui-form{ .layui-form{
margin-top: 10px; margin: 10px 20px;
margin-right: 10px;
} }
</style> </style>
</style>
</head> </head>
<body> <body>
<form class="layui-form" action=""> <%
ResultSet librarySet = null;
ResultSet bookSortSet = null;
// 获取图书馆列表
JDBCBean db2 = new JDBCBean();
String librarySql = "select * from library";
librarySet = db2.executeQuery( librarySql );
// 获取书籍分类
JDBCBean db3 = new JDBCBean();
String bookSortSql = "select * from book_sort";
bookSortSet = db3.executeQuery( bookSortSql );
%>
<form class="layui-form layui-form-pane" action="">
<input type="id" name="id" value="3" class="layui-hide">
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">输入框</label> <label class="layui-form-label">书名</label>
<div class="layui-input-block"> <div class="layui-input-block">
<input type="text" name="title" required lay-verify="required" placeholder="请输入标题" autocomplete="off" class="layui-input"> <input type="text" name="name" required="" lay-verify="required" placeholder="请输入书名" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">密码框</label>
<div class="layui-input-inline">
<input type="password" name="password" required lay-verify="required" placeholder="请输入密码" autocomplete="off" class="layui-input">
</div> </div>
<div class="layui-form-mid layui-word-aux">辅助文字</div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">选择框</label> <label class="layui-form-label">图书馆</label>
<div class="layui-input-block"> <div class="layui-input-block">
<select name="city" lay-verify="required"> <select name="library_id" lay-verify="required">
<option value=""></option> <option value=""></option>
<option value="0">北京</option> <% while( librarySet.next() ){ %>
<option value="1">上海</option> <option value=<%=librarySet.getString("id") %> ><%=librarySet.getString("name") %></option>
<option value="2">广州</option> <%} %>
<option value="3">深圳</option>
<option value="4">杭州</option>
</select> </select>
</div> </div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">复选框</label> <label class="layui-form-label">分类</label>
<div class="layui-input-block"> <div class="layui-input-block">
<input type="checkbox" name="like[write]" title="写作"> <select name="sort_id" lay-verify="required">
<input type="checkbox" name="like[read]" title="阅读" checked> <option value=""></option>
<input type="checkbox" name="like[dai]" title="发呆"> <% while(bookSortSet.next()){ %>
<option value=<%=bookSortSet.getInt("id") %> ><%=bookSortSet.getString("name") %></option>
<%} %>
</select>
</div> </div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">开关</label> <label class="layui-form-label">位置</label>
<div class="layui-input-block"> <div class="layui-input-block">
<input type="checkbox" name="switch" lay-skin="switch"> <input type="text" name="position" required="" lay-verify="required" placeholder="请输入位置编号" autocomplete="off" class="layui-input">
</div> </div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">单选框</label> <label class="layui-form-label">状态</label>
<div class="layui-input-block"> <div class="layui-input-block">
<input type="radio" name="sex" value="男" title="男"> <input type="radio" name="status" value="1" title="可借" checked="checked"><div class="layui-unselect layui-form-radio layui-form-radioed"><i class="layui-anim layui-icon"></i><div>可借</div></div>
<input type="radio" name="sex" value="女" title="女" checked> <input type="radio" name="status" value="0" title="不可借"><div class="layui-unselect layui-form-radio"><i class="layui-anim layui-icon"></i><div>不可借</div></div>
</div> </div>
</div> </div>
<div class="layui-form-item layui-form-text"> <div class="layui-form-item layui-form-text">
<label class="layui-form-label">文本域</label> <label class="layui-form-label">书籍简介</label>
<div class="layui-input-block"> <div class="layui-input-block">
<textarea name="desc" placeholder="请输入内容" class="layui-textarea"></textarea> <textarea class="layui-textarea layui-hide" name="description" lay-verify="content" id="LAY_demo_editor"></textarea>
</div> </div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item">
<div class="layui-input-block"> <div class="layui-input-block">
<button class="layui-btn" lay-submit lay-filter="formDemo">立即提交</button> <button class="layui-btn" lay-submit="" lay-filter="bookForm">立即提交</button>
<button type="reset" class="layui-btn layui-btn-primary">重置</button> <button type="reset" class="layui-btn layui-btn-primary">重置</button>
</div> </div>
</div> </div>
@ -81,15 +93,45 @@
<script> <script>
layui.use('form', function(){ layui.use(['form', 'layedit', 'jquery'], function(){
var form = layui.form; //layer.closeAll();
$ = layui.jquery;
//监听提交 var form = layui.form
form.on('submit(formDemo)', function(data){ ,layer = layui.layer
layer.msg(JSON.stringify(data.field)); ,layedit = layui.layedit;
return false; var editIndex = layedit.build('LAY_demo_editor');
}); // 自定义验证规则
}); form.verify({
// 解决异步传输问题
content: function(value){
return layedit.sync(editIndex);
}
})
//监听提交
form.on('submit(bookForm)', function(data){
$.ajax({
url: './bookAdd',
method: 'post',
data: data.field, //JSON.stringify(data.field),
dataType: 'JSON',
success: function(data){
if(data.code == "0"){
parent.layer.msg("添加成功");
var index = parent.layer.getFrameIndex(window.name);
parent.layer.close(index);
}else{
leyer.msg("添加失败");
}
//parent.layer.msg('您将标记 [ sdf ] 成功传送给了父窗口');
}
})
return false;
});
});
</script> </script>

@ -50,6 +50,7 @@
%> %>
<form class="layui-form layui-form-pane" action=""> <form class="layui-form layui-form-pane" action="">
<input type="id" name="id" value=<%=id %> class="layui-hide">
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">书名</label> <label class="layui-form-label">书名</label>
<div class="layui-input-block"> <div class="layui-input-block">
@ -72,7 +73,7 @@
<label class="layui-form-label">分类</label> <label class="layui-form-label">分类</label>
<div class="layui-input-block"> <div class="layui-input-block">
<select name="sort_id" lay-verify="required"> <select name="sort_id" lay-verify="required">
<option value=""></option> <option value=""></option>
<% while(bookSortSet.next()){ %> <% while(bookSortSet.next()){ %>
<option value=<%=bookSortSet.getInt("id") %> <% if(bookSortSet.getInt("id") == sort_id) out.print("selected"); %>><%=bookSortSet.getString("name") %></option> <option value=<%=bookSortSet.getInt("id") %> <% if(bookSortSet.getInt("id") == sort_id) out.print("selected"); %>><%=bookSortSet.getString("name") %></option>
<%} %> <%} %>
@ -103,7 +104,7 @@
<div class="layui-form-item layui-form-text"> <div class="layui-form-item layui-form-text">
<label class="layui-form-label">书籍简介</label> <label class="layui-form-label">书籍简介</label>
<div class="layui-input-block"> <div class="layui-input-block">
<textarea class="layui-textarea layui-hide" name="content" lay-verify="content" id="LAY_demo_editor"><%=description %></textarea> <textarea class="layui-textarea layui-hide" name="description" lay-verify="content" id="LAY_demo_editor"><%=description %></textarea>
</div> </div>
</div> </div>
@ -116,20 +117,43 @@
</form> </form>
<script> <script>
layui.use(['form', 'layedit'], function(){ layui.use(['form', 'layedit', 'jquery'], function(){
//layer.closeAll(); //layer.closeAll();
$ = layui.jquery;
var form = layui.form var form = layui.form
,layer = layui.layer ,layer = layui.layer
,layedit = layui.layedit; ,layedit = layui.layedit;
var editIndex = layedit.build('LAY_demo_editor'); var editIndex = layedit.build('LAY_demo_editor');
// 自定义验证规则
form.verify({
// 解决异步传输问题
content: function(value){
return layedit.sync(editIndex);
}
})
//监听提交 //监听提交
form.on('submit(formDemo)', function(data){ form.on('submit(formDemo)', function(data){
layer.msg(JSON.stringify(data.field)); $.ajax({
var index = parent.layer.getFrameIndex(window.name); url: './bookEdit',
parent.layer.msg('您将标记 [ sdf ] 成功传送给了父窗口'); method: 'post',
parent.layer.close(index); data: data.field, //JSON.stringify(data.field),
dataType: 'JSON',
success: function(data){
if(data.code == "0"){
parent.layer.msg("修改成功");
var index = parent.layer.getFrameIndex(window.name);
parent.layer.close(index);
}else{
leyer.msg("修改失败");
}
//parent.layer.msg('您将标记 [ sdf ] 成功传送给了父窗口');
}
})
//return false;
return false;
}); });
}); });

@ -32,9 +32,10 @@
</select> </select>
</div> </div>
<div class="layui-inline"> <div class="layui-inline">
<input class="layui-input" name="conditionValue" id="conditionValue" autocomplete="off"> <input class="layui-input" name="conditionValue" id="conditionValue" autocomplete="off" placeholder="请输入搜索内容">
</div> </div>
<button class="layui-btn" data-type="reload" lay-event="search">搜索</button> <button class="layui-btn" data-type="reload" lay-event="search">搜索</button>
<button type="button" class="layui-btn layui-btn-sm" lay-event="add"><i class="layui-icon"></i></button>
</div> </div>
</script> </script>
@ -50,7 +51,8 @@
</script> </script>
<script> <script>
layui.use('table',function(){ layui.use(['table', 'jquery'],function(){
$ = layui.jquery;
var table = layui.table; var table = layui.table;
var tableIns = table.render({ var tableIns = table.render({
elem: '#demo' elem: '#demo'
@ -67,9 +69,9 @@
,{field: 'name', title: '书名', width:180} ,{field: 'name', title: '书名', width:180}
,{field: 'library_id', title: '图书馆†', width:80, edit: true} ,{field: 'library_id', title: '图书馆†', width:80, edit: true}
,{field: 'sort_id', title: '分类', width: 100} ,{field: 'sort_id', title: '分类', width: 100}
,{field: 'position', title: '位置', width: 80, sort: true} ,{field: 'position', title: '位置', width: 120, sort: true}
,{field: 'status', title: '状态', width: 80, sort: true} ,{field: 'status', title: '状态', width: 80, sort: true}
,{field: 'description', title: '描述', width: 280} ,{field: 'description', title: '描述', width: 380}
//,{field: 'operate', title: '操作', width: 200, templet: '#operate'} //,{field: 'operate', title: '操作', width: 200, templet: '#operate'}
,{fixed: 'right', title:'操作', width:150, align:'center', toolbar: '#barDemo'} //这里的toolbar值是模板元素的选择器 ,{fixed: 'right', title:'操作', width:150, align:'center', toolbar: '#barDemo'} //这里的toolbar值是模板元素的选择器
]] ]]
@ -92,10 +94,19 @@
var id = data.id; var id = data.id;
if(layEvent === 'del'){ //删除 if(layEvent === 'del'){ //删除
layer.confirm('真的删除行么', function(index){ layer.confirm('真的删除行么', function(index){
obj.del(); //删除对应行tr的DOM结构并更新缓存 //obj.del(); //删除对应行tr的DOM结构并更新缓存
layer.close(index); layer.close(index);
//向服务端发送删除指令 //向服务端发送删除指令
$.ajax({
url: './bookdel',
method: 'get',
dataType: 'JSON',
data: "id=" +id,
success: function(data){
layer.msg("success");
}
})
//location.reload();
}); });
} else if(layEvent === 'edit'){ //编辑 } else if(layEvent === 'edit'){ //编辑
//do something //do something
@ -110,7 +121,7 @@
content: "bookedit.jsp?id="+ id, content: "bookedit.jsp?id="+ id,
end: function () { end: function () {
console.log("finish edit"); console.log("finish edit");
//location.reload(); location.reload();
} }
}); });
@ -132,19 +143,34 @@
var data = obj.data; var data = obj.data;
switch(obj.event){ switch(obj.event){
case 'search': case 'search':
var conditionValue = $('#conditionValue'); var conditionValue = $('#conditionValue');
var condition = $('#condition'); var condition = $('#condition');
//这里以搜索为例 //这里以搜索为例
tableIns.reload({ tableIns.reload({
where: { //设定异步数据接口的额外参数,任意设 where: { //设定异步数据接口的额外参数,任意设
"condition": condition.val(), "condition": condition.val(),
"conditionValue": conditionValue.val() "conditionValue": conditionValue.val()
} }
,page: { ,page: {
curr: 1 //重新从第 1 页开始 curr: 1 //重新从第 1 页开始
} }
}); });
break; break;
case 'add':
var addBookLayer = layer.open({
type: 2,
title: "添加书籍",
area: ['800px', '600px'],
maxmin: true, //开启最大化最小化按钮
shadeClose: true,
content: "bookadd.jsp",
end: function () {
console.log("finish add");
//location.reload();
}
});
layer.full(addBookLayer);
break;
}; };
}); });

@ -0,0 +1,73 @@
package servlet.admin;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.mysql.jdbc.Connection;
import javabean.Base;
import net.sf.json.JSONObject;
/**
* Servlet implementation class BookAdd
*/
@WebServlet("/admin/bookAdd")
public class BookAdd extends HttpServlet {
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
resp.setContentType("application/json; charset=utf8");
String name = req.getParameter("name");
String library_id = req.getParameter("library_id");
String sort_id = req.getParameter("sort_id");
String position = req.getParameter("position");
String status = req.getParameter("status");
String description = req.getParameter("description");
System.out.println(description+"-------------"); //debug
JSONObject json = new JSONObject();
Connection connection = null;
PreparedStatement pstmt = null;
//ResultSet resultSet = null;
int result = 0;
String sql = "insert into books(name, library_id, sort_id, position, status, description) values(?,?,?,?,?,?)";
System.out.println(sql);
PrintWriter out = resp.getWriter();
try {
connection = (Connection) Base.getConnection();
pstmt = connection.prepareStatement(sql);
pstmt.setString(1, name);
pstmt.setString(2, library_id);
pstmt.setString(3, sort_id);
pstmt.setString(4, position);
pstmt.setString(5, status);
pstmt.setString(6, description);
result = pstmt.executeUpdate();
} catch (SQLException e) {
} catch (ClassNotFoundException e) {
e.printStackTrace();
}finally {
try {
Base.closeResource(connection, pstmt, null);
} catch (SQLException e) {
e.printStackTrace();
}
}
if(result==1) {
json.put("code", "0");
json.put("msg", "success");
}else {
json.put("code", "1");
json.put("msg", "error");
}
out.write(json.toString());
}
}

@ -0,0 +1,86 @@
package servlet.admin;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.mysql.jdbc.Connection;
import javabean.Base;
import net.sf.json.JSONObject;
@WebServlet("/admin/bookEdit")
public class BookEdit extends HttpServlet {
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
resp.setContentType("application/json; charset=utf8");
String id = req.getParameter("id");
String name = req.getParameter("name");
String library_id = req.getParameter("library_id");
String sort_id = req.getParameter("sort_id");
String position = req.getParameter("position");
String status = req.getParameter("status");
String description = req.getParameter("description");
System.out.println(description+"-------------");
JSONObject json = new JSONObject();
//if(id == null || id.equals(""))
Connection connection = null;
PreparedStatement pstmt = null;
//ResultSet resultSet = null;
int result = 0;
String sql = "update books set name=? ,library_id=? ,sort_id=? ,position=? ,status=?, description=? where id=?";
PrintWriter out = resp.getWriter();
try {
connection = (Connection) Base.getConnection();
pstmt = connection.prepareStatement(sql);
pstmt.setString(1, name);
pstmt.setString(2, library_id);
pstmt.setString(3, sort_id);
pstmt.setString(4, position);
pstmt.setString(5, status);
pstmt.setString(6, description);
pstmt.setString(7, id);
result = pstmt.executeUpdate();
} catch (SQLException e) {
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
try {
Base.closeResource(connection, pstmt, null);
} catch (SQLException e) {
e.printStackTrace();
}
}
if(result==1) {
json.put("code", "0");
json.put("msg", "success");
}else {
json.put("code", "1");
json.put("msg", "error");
}
out.write(json.toString());
//System.out.println(postData);
//JSONObject json = JSONObject.fromObject();
}
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doPost(req, resp);
}
}
Loading…
Cancel
Save