demo 结构图
核心代码
从数据库查询数据
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="js/jquery-1.7.2.min.js"></script>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<table border="1" width="500" cellspacing="0">
<thead>
<tr>
<th>编号</th>
<th>名称</th>
<th>类别</th>
<th>价格</th>
<th>库存</th>
<th>描述</th>
<th>操作</th>
</tr>
</thead>
<tbody>
</tbody>
<a href="${pageContext.request.contextPath}/add.jsp">添加 </a>>
</table>
</body>
<script type="text/javascript">
if("${msg}"){
alert("${msg}")
}
//异步读取数据
$.getJSON ("${pageContext.request.contextPath}/findGoods.do",function(date){
for(var i=0;i<date.length;i++){
// var test=date[i];
var id=date[i].id;
var goodsPrice=date[i].goodsPrice;
var goodsNumber=date[i].goodsNumber;
var goodsName=date[i].goodsName;
var goodsDesc=date[i].goodsDesc;
var goodsType=date[i].goodsType;
$("tbody").append("<tr> "
+" <td>" + id + "</td>"
+" <td>" + goodsName + "</td>"
+" <td>" + goodsType + "</td>"
+" <td>" + goodsPrice + "</td>"
+" <td>" + goodsNumber + "</td>"
+" <td>" + goodsDesc + "</td>"
+" <td>" + "<a href=\"${pageContext.request.contextPath}/edit.jsp?id="+id+"\">修改</a>"
+" "+
"<a href='${pageContext.request.contextPath}/deleteByid.do?id="+id+"'>删除</a>"+"</td>"
+"</tr>")
}
});
</script>
</html>
添加页面
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="js/jquery-1.7.2.min.js"></script>
<script type="text/javascript" src="js/jquery.form.min.js"></script>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<form id="productForm" enctype="multipart/form-data">
商品姓名:<input id="name" name="goodsName" value=""type="text" />
<br />
商品类别:<select id="select" name="goodsType"><option value="">请选择</option></select>
<br />
<!-- 商品类别<input id="type" name="type" value="" type="text" /> -->
<br />
价格<input id="price" name="goodsPrice" value="" type="text" />
<br />
库存<input id="number" name="goodsNumber" value="" type="text" />
<br />
描述<textarea id="desc" name="goodsDesc"></textarea>
<br />
<input type="submit" value="保存"/> </from>
<!--查询商品类型 -->
<script type="text/javascript">
$.getJSON("${pageContext.request.contextPath}/findGoodsType.do", function(
date) {
//alert("11");
for (i = 0; i < date.length; i++) {
$("select").append(
"<option value='" + date[i].typeName + "'>" + date[i].typeName
+ "</option>")
}
//alert("11");
}); </script>
</body>
</html>
修改页面
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<script type="text/javascript" src="js/jquery-1.7.2.min.js"></script>
<script type="text/javascript" src="js/jquery.form.min.js"></script>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<form id="productForm" enctype="multipart/form-data">
商品姓名:<input id="name" name="goodsName" value=""type="text" />
<br />
商品类别:<select id="select" name="goodsType"><option value="">请选择</option></select>
<br />
<!-- 商品类别<input id="type" name="type" value="" type="text" /> -->
<br />
价格<input id="price" name="goodsPrice" value="" type="text" />
<br />
库存<input id="number" name="goodsNumber" value="" type="text" />
<br />
描述<textarea id="desc" name="goodsDesc"></textarea>
<br />
<input type="hidden" name="id" value="${param.id}" />
<input type="submit" value="保存"/> </from>
${param.id}
</body>
//查询商品类型
<script type="text/javascript">
$.getJSON("${pageContext.request.contextPath}/findGoodsType.do", function(
date) {
//alert("11");
for (i = 0; i < date.length; i++) {
$("select").append(
"<option value='" + date[i].typeName + "'>" + date[i].typeName
+ "</option>")
}
//alert("11");
});
//将修改前表的信息填入表单中
$.getJSON(
"${pageContext.request.contextPath}/${param.id}/findGoodsByid.do",
function(date) {
//alert("11");
$("#name").attr("value", date.goodsName);
//$("#type").attr("value", date.goodsType);
$("#price").attr("value", date.goodsPrice);
$("#number").attr("value", date.goodsNumber);
$("#desc").val(date.goodsDesc);
});
/*
$("#fromAjax").ajaxForm({
url: 'updateGoodsByid.do',
type: 'post',
dataType: 'json',
async: true,
success: function(responseJson){
alert("修改成功")
}
}); */
//获取获取表单
$("#productForm").ajaxForm({
url: "${pageContext.request.contextPath}/updateGoodsByid.do",
type: 'post',
dataType: 'json',
async: true,
success: function(responseJson){ // 请求成功
/* var st = responseJson.status;
var msg = responseJson.msg;
// 添加成功后,跳转到查询查询页面
if (st == 'success') {
location.href = 'listProduct.html';
} */
alert("数据更新成功!");
location.href="list.jsp";
//location.href = 'listProduct.html'
},
error: function(){ // 请求失败
alert("数据加载失败!");
}
});
</script>
</html>
controller层
package com.chinasofiti.controller;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import com.chinasofiti.beans.Goods;
import com.chinasofiti.service.IUserSevice;
@Controller
public class GoodsController {
@Autowired
IUserSevice userService;
@RequestMapping(path="/findGoods.do",produces={"application/json;charset=utf-8"})
@ResponseBody
public List<Goods> findGoods() {
// List<Goods> userList = new ArrayList<Goods>();
// userList.add(new Goods(110, 10, 110,"asda","asdas","sdss"));
// userList.add(new Goods(1101, 102, 110,"asda","asdas","sdss"));
// userList.add(new Goods(1101, 120, 1130,"assssda","aghhsdas","sdss"));
return userService.findGoods();
//return userList;
}
@RequestMapping(path="/{id}/findGoodsByid.do" ,produces= {"application/json;charset=utf-8"})
@ResponseBody
public Goods findGoodsByid(@PathVariable("id")int id) {
System.out.println(id);
return userService.findGoodsByid(id);
}
@RequestMapping(path="/updateGoodsByid.do",produces= {"application/json;charset=utf-8"})
@ResponseBody
public Map<String, String> updateGoodsByid(Goods goods) {
System.out.println(goods.getGoodsName());
System.out.println(goods.getGoodsType());
Map<String, String> responseMap = new HashMap<String, String>();
responseMap.put("suceess", "1");
userService.updateGoodsByid(goods);
return responseMap;
}
@RequestMapping(path="/deleteByid.do",produces= {"application/json;charset=utf-8"})
//
//HttpServletRequest request
public String deleteByid(@RequestParam("id") int id,Model mo) {
//String id = request.getParameter("id");
System.out.println(id);
userService.deleteByid(id);
mo.addAttribute("msg", "删除成功");
return "list";
}
}