根据el和jstl完成增删改查

1、ServletContext

ServletContext官方叫servlet上下文。服务器会为每一个工程创建一个对象,这个对象就是ServletContext对象。这个对象全局唯一,而且工程内部的所有servlet都共享这个对象。所以叫全局应用程序共享对象。

一个web应用对应一个ServletContext实例,这个实例是应用部署启动后,servlet容器为应用创建的。ServletContext实例包含了所有 servlet共享的资源信息。通过提供一组方法给servlet使用,用来和servlet容器通讯。

Session默认的生存时间是1800秒。

2、作用域对象

2、1 pageContext

ageContext对象:它的生命周期即page域,指存储在pageContext对象的数据只在当前页面有效,当发生页面跳转时,则在pageContext域的数据进行销毁。

2、2 request

request对象主要用于处理客户端请求,同时request对象也是作用域对象,它的作用域范围是同一个请求。

request对象常用方法

方法说明

void setAttribute(String name,Object value)把name属性储存到request对象

Object getAttribute(String name)返回name属性的值

void removeAttribute(String name)从request对象中移除name属性

String getParameter(String name)返回指定name的参数值

Enumeration getParameterNames()以枚举类型返回所有的参数名称

String getParameterValues(String name)以字符数组类型返回所有指定name参数值

Map getParameterMap()以java.util.Map类型返回请求参数

2、3 session

session对象用来存储有关用户会话的所有信息,它的作用域范围是同一个会话

session对象常用方法:

void setAttribute(String key,Object value):以键/值的方式,将一个对象的值存放到session中

session.setAttribute("name","admin");

Object getAttribute(String key):根据名称去获取session中存放对象的值

String name =(string) session.getAttribute("name");

2、4 application

application类似于系统的“全局变量”,用于实现用户之间的数据共享,它的作用域范围是在服务器一开始执行服务,到服务器关闭为止。

application 对象实现了javax.servlet.ServletContext接口

application对象的常用方法:

void setAttribute(String key,Object value):以键/值的方式,将一个对象的值存放到application中

void getAttribute(String key)通过键的方式,把对应的值取出来。

1.创建数据库,输入需要的内容

create table t_goods
(
    gid int primary key auto_increment,
    gname varchar(20),
    price double,
    mark varchar(100)
);
 
insert into t_goods(gname,price,mark) values('泡面',4.5,'够香够辣就是这个味!');
insert into t_goods(gname,price,mark) values('火腿',8.5,'肉质细腻Q弹!');
insert into t_goods(gname,price,mark) values('雪碧',3.5,'清爽冰凉随心爽!');
 
select * from t_goods;
 
2.设置成功页面
<%@ page import="com.fu.bean.Goods" %>
<%@ page import="java.util.List" %>
<%@ page import="com.fu.bean.User"  %>
<%--
  Created by IntelliJ IDEA.
  User: 86135
  Date: 2023/2/17
  Time: 18:48
  To change this template use File | Settings | File Templates.
--%>
<html>
<head>
    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
    <title>成功</title>
</head>
<body>
 
<h3>欢迎来自${login.address}的${login.username}来到成功页面</h3>
<table>
    <tr>
        <th>商品编号</th>
        <th>商品名称</th>
        <th>商品价格</th>
        <th>商品编说明</th>
    </tr>
 
    <c:forEach items="${goodsList}" var="goods">
        <tr>
            <td>${goods.gid}</td>
            <td>${goods.gname}</td>
            <td>${goods.price}</td>
            <td>${goods.mark}</td>
 
        </tr>
    </c:forEach>
 
 
</table>
 
</body>
</html>
3.创建goods类
package com.fu.bean;
 
public class Goods {
    private Integer gid;
    private String gname;
    private String price;
    private String mark;
 
    public Integer getGid() {
        return gid;
    }
 
    public void setGid(Integer gid) {
        this.gid = gid;
    }
 
    public String getGname() {
        return gname;
    }
 
    public void setGname(String gname) {
        this.gname = gname;
    }
 
    public String getPrice() {
        return price;
    }
 
    public void setPrice(String price) {
        this.price = price;
    }
 
    public String getMark() {
        return mark;
    }
 
    public void setMark(String mark) {
        this.mark = mark;
    }
 
    @Override
    public String toString() {
        return "Goods{" +
                "gid=" + gid +
                ", gname='" + gname + '\'' +
                ", price='" + price + '\'' +
                ", mark='" + mark + '\'' +
                '}';
    }
}
4.创建接口
package com.fu.dao;

import com.fu.bean.Goods;

import java.util.List;

public interface GoodsDao {
    List<Goods> selectAll();
    int addgoods(Goods goods);
    int deletegoods(int gid);
    Goods selectAll01(int gid);
    int updategoods(Goods goods);
}
5.完善接口
package com.fu.dao.impl;

import com.fu.bean.Goods;
import com.fu.bean.User;
import com.fu.dao.UserDao;
import com.fu.util.JDBCUtil;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;

public class GoodsDaoImpl implements UserDao {
    private Connection connection = null;
    private PreparedStatement ps = null;
    private ResultSet rs = null;
    List<Goods> goodsList =new ArrayList<>();
    int row=0;
    @Override
    public User login(String username, String password) {
        return null;
    }

    @Override
    public int zhuce(User user) {
        return 0;
    }

    @Override
    public List<Goods> selectAll() {
        try {
            //调用jdbc工具类
            connection = JDBCUtil.connection();
            //定义sql语句
            String sql = "select * from t_goods";
            //获取预处理
            ps = connection.prepareStatement(sql);
            //执行添加
            rs = ps.executeQuery();
            //遍历结果集
            while (rs.next()){
                Goods goods=new Goods();
                goods.setGid(rs.getInt("gid"));
                goods.setGname(rs.getString("gname"));
                goods.setPrice(rs.getDouble("price"));
                goods.setMark(rs.getString("mark"));
                goodsList.add(goods);
            }

        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            //释放资源
            JDBCUtil.colse(ps, connection);
        }
        return goodsList;
    }

    @Override
    public int addgoods(Goods goods) {
        try {
            //调用jdbc工具类
            connection = JDBCUtil.connection();

            //定义sql语句
            String sql = "insert into t_goods(gname,price,mark) values (?,?,?)";
            //获取预处理
            ps = connection.prepareStatement(sql);
            ps.setObject(1,goods.getGname());
            ps.setObject(2,goods.getPrice());
            ps.setObject(3,goods.getMark());
            //执行添加
            row= ps.executeUpdate();
            System.out.println(row);


        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            //释放资源
            JDBCUtil.colse(ps, connection);
        }
        return row;
    }

    @Override
    public int deletegoods(int gid) {
        try {
            //调用jdbc工具类
            connection = JDBCUtil.connection();

            //定义sql语句
            String sql = "delete from t_goods where gid=?";

            //获取预处理
            ps = connection.prepareStatement(sql);

            ps.setObject(1,gid);

            //执行添加
            row= ps.executeUpdate();
            System.out.println(row);


        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            //释放资源
            JDBCUtil.colse(ps, connection);
        }
        return row;
    }


    public List<Goods> selectAll01(int gid) {
        try {
            //调用jdbc工具类
            connection = JDBCUtil.connection();
            //定义sql语句
            String sql = "select * from t_goods where gid=?";
            //获取预处理
            ps = connection.prepareStatement(sql);
            ps.setObject(1,gid);
            //执行添加
            rs = ps.executeQuery();
            //遍历结果集
            while (rs.next()){
                Goods goods=new Goods();
                goods.setGid(rs.getInt("gid"));
                goods.setGname(rs.getString("gname"));
                goods.setPrice(rs.getDouble("price"));
                goods.setMark(rs.getString("mark"));
                goodsList.add(goods);
            }

        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            //释放资源
            JDBCUtil.colse(ps, connection);
        }
        return goodsList;
    }

    public int updategoods(int gid) {
        try {
            //调用jdbc工具类
            connection = JDBCUtil.connection();

            //定义sql语句
            String sql = "update t_goods set gname=?,price=?,mark=? where gid=?";

            //获取预处理
            ps = connection.prepareStatement(sql);
            Goods goods =new Goods();
            ps.setObject(1,goods.getGname());
            ps.setObject(2,goods.getPrice());
            ps.setObject(3,goods.getMark());
            ps.setObject(4,gid);

            ps.setObject(1,gid);

            //执行添加
            row= ps.executeUpdate();
            System.out.println(row);


        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            //释放资源
            JDBCUtil.colse(ps, connection);
        }
        return row;
    }
}
6.创建servlet类
package com.fu.servlet;

import com.fu.bean.Goods;
import com.fu.dao.UserDao;
import com.fu.dao.impl.GoodsDaoImpl;

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("/add")
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");
        response.setContentType("text/html;charset=UTF-8");

        //获取请求参数
        Goods goods =new Goods();
        goods.setGname(request.getParameter("gname"));
        goods.setPrice(Double.parseDouble(request.getParameter("price")));
        goods.setMark(request.getParameter("mark"));

        UserDao goodsDao=new GoodsDaoImpl();
        int row = goodsDao.addgoods(goods);
        if(row>0){
            request.getRequestDispatcher("selectGoodsAll").forward(request,response);
        }else{
            response.sendRedirect( "sb.jsp");
        }
    }
}
package com.fu.servlet;

import com.fu.dao.UserDao;
import com.fu.dao.impl.GoodsDaoImpl;

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 DeleteGoods 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");
        response.setContentType("text/html;charset=UTF-8");

   int gid= Integer.parseInt(request.getParameter("gid"));

        UserDao goodsDao = new GoodsDaoImpl();
        int row=goodsDao.deletegoods(gid);
        if (row > 0) {
            request.getRequestDispatcher("selectGoodsAll").forward(request, response);
        } else {
            response.sendRedirect("sb.jsp");
        }
    }
}
package com.fu.servlet;

import com.fu.bean.Goods;
import com.fu.dao.UserDao;
import com.fu.dao.impl.GoodsDaoImpl;
import com.fu.dao.impl.UserDaoImpl;

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 javax.servlet.http.HttpSession;
import java.io.IOException;
import java.util.List;

@WebServlet("/selectGoodsAll")
public class SelectGoodsAll 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");
        response.setContentType("text/html;charset=UTF-8");

        UserDao goodsDao=new GoodsDaoImpl();
        List<Goods> goodsList = goodsDao.selectAll();
        System.out.println(goodsList);

        HttpSession session = request.getSession();
        session.setAttribute("goodsList",goodsList);
        response.sendRedirect("cg.jsp");
    }
}
package com.fu.servlet;

import com.fu.bean.Goods;
import com.fu.dao.impl.GoodsDaoImpl;

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("/upd")
public class UpdateGoods 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");
        response.setContentType("text/html;charset=UTF-8");


        int gid = Integer.parseInt(request.getParameter("gid"));

        GoodsDaoImpl goodsDao = new GoodsDaoImpl();
        Goods goods = goodsDao.selectAll01(gid);
        System.out.println(goods);
        //判断用户信息是否为空
        if (goods != null) {

            request.setAttribute("goods", goods);
            request.getRequestDispatcher("update.jsp").forward(request, response);
        } else {
            response.sendRedirect("sb.jsp");

        }

    }
}
package com.fu.servlet;

import com.fu.bean.Goods;
import com.fu.dao.impl.GoodsDaoImpl;

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 javax.servlet.http.HttpSession;
import java.io.IOException;

@WebServlet("/update")
public class UpdateGoods01 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");
        response.setContentType("text/html;charset=UTF-8");


        Goods goods=new Goods();
        goods.setGid(Integer.parseInt(request.getParameter("gid")));
        goods.setGname(request.getParameter("gname"));
        goods.setPrice(Double.parseDouble(request.getParameter("price")));
        goods.setMark(request.getParameter("mark"));
        System.out.println(goods);
        GoodsDaoImpl goodsDao=new GoodsDaoImpl();
        int row = goodsDao.updategoods(goods);
      //  判断用户信息是否为空
        if (row >0) {

            request.getRequestDispatcher("selectGoodsAll").forward(request,response);
        } else {
            response.sendRedirect( "sb.jsp");

        }
    }
}
package com.fu.servlet;

import com.fu.bean.Goods;
import com.fu.dao.GoodsDao;
import com.fu.dao.UserDao;
import com.fu.dao.impl.GoodsDaoImpl;
import com.fu.dao.impl.UserDaoImpl;

import javax.servlet.RequestDispatcher;
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 javax.servlet.http.HttpSession;
import java.io.IOException;
import java.util.List;

@WebServlet("/seach")
public class Seach extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        request.setCharacterEncoding("utf-8");
        response.setCharacterEncoding("utf-8");

        String keyword = request.getParameter("keyword");

        GoodsDao goodsDao=new GoodsDaoImpl();
        List<Goods> goodsList = goodsDao.seach(keyword);

        HttpSession session = request.getSession();
        session.setAttribute("goodsList",goodsList);
        response.sendRedirect("cg.jsp");

    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doPost(request, response);
    }
}
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值