注:基于上个文章代码
页面
增加了添加修改和删除的连接
页面布局代码
<html>
<head>
<title>主页</title>
</head>
<body>
<!--EL表达式是通过$ {}从作用域对象中自动获取数据,如果是对象可以通过.访问其属性-->
<h1>欢迎来自${user.address}的${user.username}来到主页</h1>
<table>
<a href="addGoods.jsp">添加商品</a>
<tr>
<th>商品编号</th>
<th>商品名称</th>
<th>商品价格</th>
<th>商品说明</th>
</tr>
<!--items:要遍历的集合元素 var:临时变量-->
<c:forEach items="${goodsList}" var="goods">
<tr>
<td>${goods.gid}</td>
<td>${goods.gname}</td>
<td>${goods.price}</td>
<td>${goods.mark}</td>
<td>
<a href="">修改</a>
<a href="del?gid=${goods.gid}">删除</a>
</td>
</tr>
</c:forEach>
</table>
</body>
</html>
点击添加跳转到添加页面
布局代码
<html>
<head>
<title>商品信息添加</title>
</head>
<body>
<h2>商品信息录入</h2>
<form action="addGoods" method="post">
商品名称:<input type="text" value="" name="gname" placeholder="商品名称"></br>
商品价格:<input type="number" step="0.01" value="" name="price" placeholder="商品价格"></br>
商品说明:<input type="text" value="" name="mark" placeholder="商品说明"></br>
<input type="submit" value="提交"></br>
</form>
</body>
</html>
删除为即时命令,会直接发送请求
请求代码
添加页面提交后,会到addGoods地址发送请求
@WebServlet("/addGoods")
public class AddGoods extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doPost(request,response);
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");
Goods goods=new Goods();
goods.setGname(request.getParameter("gname"));
goods.setPrice(Double.parseDouble(request.getParameter("price")));
goods.setMark(request.getParameter("mark"));
GoodsDao goodsDao=new GoodsDao();
int row=goodsDao.add(goods);
if(row>0){
request.getRequestDispatcher("ServletA