一、pageContext(page域)
page域指当前页面
作用范围:作用范围是整个JSP页面,是四大作用域中最小的一个
二、request(request域)
request是指一次请求,即当用户访问web服务器的时候,web服务器会生成
requestresponse和对象,然后在 service法调用,完成用户的请求和对用户的响
应。
作用范围:请求间。
三、session(session域)
session是指一次会话,当用户首次访问服务器时,服务器会根据每一个浏览器的请求创建一个session对象,每个用户有且仅有一个session对象,相当于身份证,保存在服务器中,借助 cookie
技术来传递id属性,就可以在每次访问中找到自己的 session.
作用范围:作用范围是会话间
四、application(ServletContext域)
application即是 servlet的ServeltContext。
作用范围:整个Web应用。
作用:应用程序中
添加删除主页
<%@ page import="java.util.List" %>
<%@ page import="com.yang.bean.Goods" %><%--
Created by IntelliJ IDEA.
User: Dell
Date: 2023/2/17
Time: 19:55
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<html>
<head>
<title>Title</title>
</head>
<body>
<!--- el表达式是通过$ { } 从作用域对象中自动获取数据,如果是对象可以通过.访问其属性-->
<h2>欢迎来自${user.address}的${user.username}来到二次元的世界</h2>
<a href="addGoods.jsp">添加商品</a>
<table>
<thead>
<tr>
<th>商品编号</th>
<th>商品名称</th>
<th>商品价格</th>
<th>商品说明</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<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>
</tbody>
<%-- <%--%>
<%-- //获取session对象--%>
<%-- HttpSession session1=request.getSession();--%>
<%-- //从session对象中获得集合--%>
<%-- List<Goods> goodsList= (List<Goods>) session1.getAttribute("goodsList");--%>
<%-- for (Goods goods:goodsList){--%>
<%-- %>--%>
<%-- <tr>--%>
<%-- <td><%=goods.getGid()%></td>--%>
<%-- <td><%=goods.getGname()%></td>--%>
<%-- <td><%=goods.getPrice()%></td>--%>
<%-- <td><%=goods.getMark()%></td>--%>
<%-- </tr>--%>
<%-- <%--%>
<%-- }--%>
<%-- %>--%>
</table>
</body>
</html>
添加页面
<%--
Created by IntelliJ IDEA.
User: Dell
Date: 2023/2/23
Time: 12:06
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>添加商品</title>
</head>
<body>
<h2>商品信息录入</h2>
<form action="addGoods" method="post">
商品名称:<input type="text" name="gname" value="" placeholder="商品名称"></br>
商品价格:<input type="number" name="price" step="0.01" value="" placeholder="商品价格"><br>
商品说明:<input type="text"name="mark" placeholder="商品说明">
<input type="submit" value="提交">
</form>
</body>
</html>
添加Java代码
package com.yang.servlet;
import com.yang.bean.Goods;
import com.yang.dao.GoodsDao;
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 java.io.IOException;
@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){
System.out.println("添加成功");
request.getRequestDispatcher("SelectAllGoods").forward(request,response);
}else{
request.setAttribute("error_msg","添加商品失败");
request.getRequestDispatcher("error.jsp").forward(request,response);
}
}
}
删除Java代码
package com.yang.servlet;
import com.yang.bean.Goods;
import com.yang.dao.GoodsDao;
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 java.io.IOException;
@WebServlet("/del")
public class DelGoods 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 {
int gid=Integer.parseInt(request.getParameter("gid"));
GoodsDao goodsDao=new GoodsDao();
int row= goodsDao.del(gid);
if (row>0){
request.getRequestDispatcher("selectAllGoods").forward(request,response);
}else{
request.setAttribute("error_msg","删除出现了错误");
request.getRequestDispatcher("error.jsp").forward(request,response);
}
}
}