servlet-jdbc-jsp学生管理系统

1.创建数据库表

create  table t_student(
stu_id  int primary key auto_increment,
stu_name varchar(20),
stu_age int,
stu_address varchar(20)
);

2.创建项目,导入依赖包,完善项目结构

需要的依赖包:

javax.servlet-api   +  druid  +   mysql-connector-java   +   javax.servlet.jsp-api   +   jstl   + standard

项目结构

 3.创建javabean类

package com.weiwei.studentdemo.bean;

public class StudentBean {
    private int stuid;
    private  String stuname;
    private int stuage;
    private String stuaddress;

    public int getStuid() {
        return stuid;
    }

    public void setStuid(int stuid) {
        this.stuid = stuid;
    }

    public String getStuname() {
        return stuname;
    }

    public void setStuname(String stuname) {
        this.stuname = stuname;
    }

    public int getStuage() {
        return stuage;
    }

    public void setStuage(int stuage) {
        this.stuage = stuage;
    }

    public String getStuaddress() {
        return stuaddress;
    }

    public void setStuaddress(String stuaddress) {
        this.stuaddress = stuaddress;
    }
}

4.创建数据访问接口

package com.weiwei.studentdemo.db;

import com.weiwei.studentdemo.bean.StudentBean;

import java.util.List;

/**
 * 创建数据访问接口
 */
public interface StudentDao {
    //接口下的抽象方法
        //查询所有学生信息,返回一个学生信息集合供遍历显示
        List<StudentBean> getAllStudent();
        //添加学生信息,返回添加结果
        Boolean insertStudent(StudentBean studentBean);
        //根据学号查询单个学生信息
        StudentBean getOneStudent(int stuid);
        //修改学生信息
        Boolean updateStudent(StudentBean studentBean);
        //根据学号删除学生信息
        Boolean removeStudent(int stuid);


}

5.在resources中配置数据源【db.properties】

driverClassName=com.mysql.cj.jdbc.Driver
url=jdbc:mysql://127.0.0.1:3306/student_db?serverTimezone=UTC
username=root
password=123456
initialSize=100
maxActive=300
maxWait=60000

6.创建数据访问接口实现类

package com.weiwei.studentdemo.db;

import com.alibaba.druid.pool.DruidDataSourceFactory;
import com.weiwei.studentdemo.bean.StudentBean;

import javax.sql.DataSource;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import java.util.Properties;

/**
 * 创建数据访问接口实现类
 */
public class StudentDaoImpl implements StudentDao{
    /*
    和数据库创立连接
     */
    //定义保存Druid数据源对象
    private DataSource dataSource=null;
    //无参数构造方法初始化数据源
    private StudentDaoImpl(){
        if(dataSource==null){
            try {
                Properties pro = new Properties();
                InputStream inStream = this.getClass().getResourceAsStream("/db.properties");
                pro.load(inStream);
                dataSource = DruidDataSourceFactory.createDataSource(pro);
            }catch (Exception e){
                e.printStackTrace();
            }

        }
    }

    /**
     * 单例模式创建数据访问接口实现类
     * 保证只创建一个对象:构造方法私有、提供一个静态方法返回创建好的当前类对象
     */
    private static StudentDaoImpl studaoimp=null;
    public static  StudentDaoImpl getStudaoimp(){
        if(studaoimp==null){
            studaoimp=new StudentDaoImpl();
        }
        return studaoimp;
    }


    @Override
    /**
     * 从数据库查询所有学生信息返回集合中
     *
     */
    public List<StudentBean> getAllStudent() {
        List<StudentBean> studentlist=null;
        try {
            //数据库建立连接
            Connection conn = dataSource.getConnection();
            String sql="select * from t_student;";
            PreparedStatement ps = conn.prepareStatement(sql);
            ResultSet rs= ps.executeQuery();
            studentlist = new ArrayList<>();
            while (rs.next()){
                StudentBean stu = new StudentBean();
                stu.setStuid(rs.getInt("stu_id"));
                stu.setStuname(rs.getString("stu_name"));
                stu.setStuage(rs.getInt("stu_age"));
                stu.setStuaddress(rs.getString("stu_address"));
                studentlist.add(stu);
            }
            rs.close();
            ps.close();
            conn.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
        return studentlist;
    }

    @Override
    /**
     * 添加学生信息
     *
     */
    public Boolean insertStudent(StudentBean studentBean) {
        boolean flag=false;
        try {
            Connection conn = dataSource.getConnection();
            String sql="insert into t_student values(null,?,?,?);";
            PreparedStatement ps=conn.prepareStatement(sql);
            ps.setString(1,studentBean.getStuname());
            ps.setInt(2,studentBean.getStuage());
            ps.setString(3,studentBean.getStuaddress());
            if(ps.executeUpdate()>0){
                flag=true;
            }
            ps.close();
            conn.close();
        }catch (Exception e){
            e.printStackTrace();
        }
        return flag;
    }

    @Override
    /**
     * 查询单个学生信息
     *
     */
    public StudentBean getOneStudent(int stuid) {
        StudentBean student=null;
        try {
            Connection conn = dataSource.getConnection();
            String sql="select * from t_student where stu_id=?;";
            PreparedStatement ps = conn.prepareStatement(sql);
            ps.setInt(1,stuid);
            ResultSet rs = ps.executeQuery();

            if(rs.next()){
                student= new StudentBean();
                student.setStuid(rs.getInt("stu_id"));
                student.setStuname(rs.getString("stu_name"));
                student.setStuage(rs.getInt("stu_age"));
                student.setStuaddress(rs.getString("stu_address"));
            }
            rs.close();
            ps.close();
            conn.close();
        }catch (Exception e){
            e.printStackTrace();
        }
        return  student;
    }

    @Override
    /**
     * 修改学生信息
     */
    public Boolean updateStudent(StudentBean student) {
        boolean flag=false;
        try {
            Connection conn = dataSource.getConnection();
            String sql="update t_student set stu_name=?,stu_age=?,stu_address=? where stu_id=?;";
            PreparedStatement ps = conn.prepareStatement(sql);
            ps.setString(1,student.getStuname());
            ps.setInt(2,student.getStuage());
            ps.setString(3,student.getStuaddress());
            ps.setInt(4,student.getStuid());
            if(ps.executeUpdate()>0){
                flag=true;
            }
        }catch(Exception e){
            e.printStackTrace();
        }
        return flag;
    }

    @Override
    /**
     * 删除学生
     */
    public Boolean removeStudent(int stuid) {
        boolean flag=false;
        try {
            Connection conn = dataSource.getConnection();
            String sql="delete from t_student where stu_id=?;";
            PreparedStatement ps = conn.prepareStatement(sql);
            ps.setInt(1,stuid);
            if(ps.executeUpdate()>0){flag=true;}
            ps.close();
            conn.close();
        }catch (Exception e){
            e.printStackTrace();
        }
        return flag;
    }
}

7.创建业务访问接口

package com.weiwei.studentdemo.service;

import com.weiwei.studentdemo.bean.StudentBean;

import java.util.List;

public interface StudentService {
     List<StudentBean> queryAllStudent();
     boolean  addStudent(StudentBean studentBean);
     boolean deleteStudent(int stuid);
     boolean modifyStudent(StudentBean studentBean);
     StudentBean queryOneStudent(int stuid);
}

8.创建业务访问接口实现类

package com.weiwei.studentdemo.service;

import com.weiwei.studentdemo.bean.StudentBean;
import com.weiwei.studentdemo.db.StudentDao;

import java.util.List;

public class StudentServiceImpl implements StudentService{
    private StudentDao studentDao=null;
    public StudentServiceImpl(StudentDao studentDao){
        this.studentDao=studentDao;
    }
    @Override
    public List<StudentBean> queryAllStudent() {
        return studentDao.getAllStudent();
    }

    @Override
    public boolean addStudent(StudentBean studentBean) {
        return studentDao.insertStudent(studentBean);
    }

    @Override
    public boolean deleteStudent(int stuid) {
        return studentDao.removeStudent(stuid);
    }

    @Override
    public boolean modifyStudent(StudentBean studentBean) {
        return studentDao.updateStudent(studentBean);
    }

    @Override
    public StudentBean queryOneStudent(int stuid) {
        return studentDao.getOneStudent(stuid);
    }
}

9.创建Servlet

9.1 查询所有学生servlet

package com.weiwei.studentdemo.servlet;

import com.weiwei.studentdemo.bean.StudentBean;
import com.weiwei.studentdemo.db.StudentDaoImpl;
import com.weiwei.studentdemo.service.StudentServiceImpl;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;

public class StudentAllServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doPost(req, resp);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        StudentServiceImpl studentService = new StudentServiceImpl(StudentDaoImpl.getStudaoimp());
        List<StudentBean> studentBeanList = studentService.queryAllStudent();
        req.setAttribute("studentBeanList",studentBeanList);
        req.getRequestDispatcher("/main.jsp").forward(req,resp);
    }
}

9.2 添加学生servlet

package com.weiwei.studentdemo.servlet;

import com.weiwei.studentdemo.bean.StudentBean;
import com.weiwei.studentdemo.db.StudentDaoImpl;
import com.weiwei.studentdemo.service.StudentServiceImpl;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

public class addStudentServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doPost(req, resp);
    }


    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        String stuname = req.getParameter("stuname");
        int stuage = Integer.parseInt(req.getParameter("stuage"));
        String stuaddress = req.getParameter("stuaddress");
        StudentBean studentBean = new StudentBean();
        studentBean.setStuname(stuname);
        studentBean.setStuage(stuage);
        studentBean.setStuaddress(stuaddress);
        StudentServiceImpl studentService = new StudentServiceImpl(StudentDaoImpl.getStudaoimp());
        studentService.addStudent(studentBean);
        req.getRequestDispatcher("/getall").forward(req,resp);
    }
}

9.3 删除学生servlet

 

package com.weiwei.studentdemo.servlet;

import com.weiwei.studentdemo.db.StudentDaoImpl;
import com.weiwei.studentdemo.service.StudentServiceImpl;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

public class deleteStudentServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doPost(req, resp);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        int stuid = Integer.parseInt(req.getParameter("stuid"));
        StudentServiceImpl studentService = new StudentServiceImpl(StudentDaoImpl.getStudaoimp());
        studentService.deleteStudent(stuid);
        req.getRequestDispatcher("/getall").forward(req,resp);
    }
}

9.4 查询单个学生信息servlet

package com.weiwei.studentdemo.servlet;

import com.weiwei.studentdemo.bean.StudentBean;
import com.weiwei.studentdemo.db.StudentDaoImpl;
import com.weiwei.studentdemo.service.StudentServiceImpl;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;

public class OneStudentServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doPost(req, resp);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        int stuid = Integer.parseInt(req.getParameter("stuid"));
        StudentServiceImpl studentService = new StudentServiceImpl(StudentDaoImpl.getStudaoimp());
        StudentBean studentBean = studentService.queryOneStudent(stuid);
        req.setAttribute("studentBean",studentBean);
        req.getRequestDispatcher("/showone.jsp").forward(req,resp);
    }
}

9.5 修改学生servlet

package com.weiwei.studentdemo.servlet;

import com.weiwei.studentdemo.bean.StudentBean;
import com.weiwei.studentdemo.db.StudentDaoImpl;
import com.weiwei.studentdemo.service.StudentServiceImpl;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;

public class ModifyToServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doPost(req, resp);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        int stuid = Integer.parseInt(req.getParameter("stuid"));
        StudentServiceImpl studentService = new StudentServiceImpl(StudentDaoImpl.getStudaoimp());
        StudentBean student = studentService.queryOneStudent(stuid);
        req.setAttribute("student",student);
        req.getRequestDispatcher("/modify.jsp").forward(req,resp);
    }
}
package com.weiwei.studentdemo.servlet;

import com.weiwei.studentdemo.bean.StudentBean;
import com.weiwei.studentdemo.db.StudentDaoImpl;
import com.weiwei.studentdemo.service.StudentServiceImpl;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

public class modifyStudentServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doPost(req, resp);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        int stuid = Integer.parseInt(req.getParameter("stuid"));
        String stuname = req.getParameter("stuname");
        int stuage = Integer.parseInt(req.getParameter("stuage"));
        String stuaddress = req.getParameter("stuaddress");
        StudentBean studentBean = new StudentBean();
        studentBean.setStuid(stuid);
        studentBean.setStuname(stuname);
        studentBean.setStuage(stuage);
        studentBean.setStuaddress(stuaddress);
        StudentServiceImpl studentService = new StudentServiceImpl(StudentDaoImpl.getStudaoimp());
        studentService.modifyStudent(studentBean);
        req.getRequestDispatcher("/getall").forward(req,resp);
    }
}

9.6 字过滤器servlet

package com.weiwei.studentdemo.servlet;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletRequestWrapper;

    public class CharServlet extends HttpServletRequestWrapper {
        private HttpServletRequest request;
        private String encoding ;

        public CharServlet(HttpServletRequest request, String encoding) {
            super(request);
            this.request = request;
            this.encoding = encoding;
        }

        @Override
        public String getParameter(String name) {
        /*
        String  name=req.getParameter("name");
        byte  data[]=name.getBytes("utf-8");
        String newname=new String(data,""utf-8");
        */
            String value = request.getParameter(name);
            if (value == null) {
                return null;
            }
            //得到请求方式
            String method = request.getMethod();
            if ("get".equalsIgnoreCase(method)) {
                try {
                    value = new String(value.getBytes(this.encoding), this.encoding);
                } catch (Exception e) {
                    throw new RuntimeException(e);
                }
            }
            return value;
        }
    }

10.字符过滤器filter

package com.weiwei.studentdemo.filter;

import com.weiwei.studentdemo.servlet.CharServlet;

import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

public class CharFilter implements Filter {
    String code;
    @Override
    public void init(FilterConfig filterConfig) throws ServletException {
         code = filterConfig.getInitParameter("charcode");

    }

    @Override
    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
        HttpServletRequest req = (HttpServletRequest) servletRequest;
        HttpServletResponse resp= (HttpServletResponse) servletResponse;
        req.setCharacterEncoding(code);
        resp.setCharacterEncoding(code);
        //解决post请求的中文乱码
        resp.setContentType("text/html;charset"+code);
        //解决get请求的中文乱码----重写getParameter方法
        CharServlet charServlet = new CharServlet(req, code);
        filterChain.doFilter(charServlet,resp);
    }

    @Override
    public void destroy() {

    }
}

11.jsp页面代码

11.1 main.jsp---主页面(显示所有学生信息)

<%--
  Created by IntelliJ IDEA.
  User: Betty
  Date: 2022/2/21
  Time: 17:12
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" pageEncoding="UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
    <title>学生管理系统</title>
</head>
<body>
<center>
    <a href="addstudent.jsp">添加学生信息</a>
    <a href="queryone.jsp">查询学生信息</a>
    <table border="1px" width="500px" cellspacing="0px">
        <tr align="center">
            <td>学生编号</td>
            <td>学生姓名</td>
            <td>学生年龄</td>
            <td>学生地址</td>
            <td colspan="2">操作</td>
        </tr>
        <c:if test="${studentBeanList.size()>0}">
            <c:forEach items="${studentBeanList}" var="student">
                <tr align="center">
                    <td>${student.stuid}</td>
                    <td>${student.stuname}</td>
                    <td>${student.stuage}</td>
                    <td>${student.stuaddress}</td>
                    <td><a href="/studentdemo/delete?stuid=${student.stuid}">删除</a></td>
                    <td><a href="/studentdemo/modifyto?stuid=${student.stuid}">修改</a></td>
                </tr>
            </c:forEach>
        </c:if>
        <c:if test="${studentBeanList.size()<=0}">
            <tr align="center">
                <td colspan="6" style="color: red">没有记录</td>
            </tr>
        </c:if>
    </table>
</center>

</body>
</html>

11.2 addstudent.jsp---添加学生页面

<%--
  Created by IntelliJ IDEA.
  User: Betty
  Date: 2022/2/21
  Time: 17:17
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" pageEncoding="UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
    <title>添加学生信息</title>
</head>
<body>
    <center>
        <form action="add" method="post">
            <table border="1px">
                <tr>
                    <td>学生姓名:</td>
                    <td><input type="text" name="stuname"></td>
                </tr>
                <tr>
                    <td>学生年龄:</td>
                    <td><input type="text" name="stuage"></td>
                </tr>
                <tr>
                    <td>学生地址:</td>
                    <td><input type="text" name="stuaddress"></td>
                </tr>
                <tr>
                    <td colspan="2" align="center"><input type="submit" value="添加"></td>
                </tr>
            </table>
        </form>
        <a href="/studentdemo/getall">返回主页</a>
    </center>
</body>
</html>

11.3 showone.jsp---显示单个学生信息页面

<%--
  Created by IntelliJ IDEA.
  User: Betty
  Date: 2022/2/22
  Time: 10:56
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" pageEncoding="UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
    <title>搜索学生信息</title>
</head>
<body>
<center>
    <table border="1px" width="500px" cellspacing="0px">
        <tr align="center">
            <td>学生编号</td>
            <td>学生姓名</td>
            <td>学生年龄</td>
            <td>学生地址</td>
        </tr>
        <tr align="center">
            <td>${studentBean.stuid}</td>
            <td>${studentBean.stuname}</td>
            <td>${studentBean.stuage}</td>
            <td>${studentBean.stuaddress}</td>
        </tr>
        <c:if test="${studentBean==null}">
            <tr align="center">
                <td colspan="4" style="color: red">没有该学生信息</td>
            </tr>
        </c:if>
    </table>
    <a href="/studentdemo/getall">返回主页</a>
</center>
</body>
</html>

11.4  queryone.jsp---搜索学生信息页面

<%--
  Created by IntelliJ IDEA.
  User: Betty
  Date: 2022/2/22
  Time: 10:57
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" pageEncoding="UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
    <title>搜索学生信息</title>
</head>
<body>
<center>
    <form action="getone" method="post">
        <table>
            <tr>
                <td>学生编号:</td>
                <td><input type="text" name="stuid"></td>
            </tr>
            <tr>
                <td colspan="2" align="center"><input type="submit" value="查询"></td>
            </tr>
        </table>
    </form>
    <a href="/studentdemo/getall">返回主页</a>
</center>
</body>
</html>

11.5 modify.jsp---修改学生信息页面

<%--
  Created by IntelliJ IDEA.
  User: Betty
  Date: 2022/2/22
  Time: 11:22
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" pageEncoding="UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
    <title>修改学生信息</title>
</head>
<body>
    <center>
        <form action="renew" method="post">
            <table>
                <tr>
                    <td>学生编号</td>
                    <td><input type="text" name="stuid" value="${student.stuid}"></td>
                </tr>
                <tr>
                    <td>学生姓名</td>
                    <td><input type="text" name="stuname" value="${student.stuname}"></td>
                </tr>
                <tr>
                    <td>学生年龄</td>
                    <td><input type="text" name="stuage" value="${student.stuage}"></td>
                </tr>
                <tr>
                    <td>学生地址</td>
                    <td><input type="text" name="stuaddress" value="${student.stuaddress}"></td>
                </tr>
                <tr>
                    <td colspan="2"><input type="submit" value="修改"></td>
                </tr>
            </table>
        </form>

    </center>
</body>
</html>

12. web.xml配置

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
     http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
     version="4.0">
    <display-name>Archetype Created Web Application</display-name>
    <filter>
        <filter-name>charfilter</filter-name>
        <filter-class>com.weiwei.studentdemo.filter.CharFilter</filter-class>
        <init-param>
            <param-name>charcode</param-name>
            <param-value>utf-8</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>charfilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
    <servlet>
        <servlet-name>getall</servlet-name>
        <servlet-class>com.weiwei.studentdemo.servlet.StudentAllServlet</servlet-class>
    </servlet>
    <servlet>
        <servlet-name>add</servlet-name>
        <servlet-class>com.weiwei.studentdemo.servlet.addStudentServlet</servlet-class>
    </servlet>
    <servlet>
        <servlet-name>delete</servlet-name>
        <servlet-class>com.weiwei.studentdemo.servlet.deleteStudentServlet</servlet-class>
    </servlet>
    <servlet>
        <servlet-name>getone</servlet-name>
        <servlet-class>com.weiwei.studentdemo.servlet.OneStudentServlet</servlet-class>
    </servlet>
    <servlet>
        <servlet-name>renew</servlet-name>
        <servlet-class>com.weiwei.studentdemo.servlet.modifyStudentServlet</servlet-class>
    </servlet>
    <servlet>
        <servlet-name>modifyto</servlet-name>
        <servlet-class>com.weiwei.studentdemo.servlet.ModifyToServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>getall</servlet-name>
        <url-pattern>/getall</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>add</servlet-name>
        <url-pattern>/add</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>delete</servlet-name>
        <url-pattern>/delete</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>getone</servlet-name>
        <url-pattern>/getone</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>renew</servlet-name>
        <url-pattern>/renew</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>modifyto</servlet-name>
        <url-pattern>/modifyto</url-pattern>
    </servlet-mapping>
</web-app>

13.执行页面过程展示

 

 

 

 

 

 

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 8
    评论
### 回答1: 商品信息管理系统是一种基于JSPJavaServer Pages)、ServletJDBCJava Database Connectivity)的系统,用于管理商品的信息。 JSP是一种动态网页开发技术,它结合了HTML标记语言Java代码。在商品信息管理系统JSP用于呈现商品页面,例如显示商品列表、商品详细信息和修改商品等。 Servlet是一个运行在服务器上的Java程序,它可以接收客户端发出的请求并生成相应的响应。在商品信息管理系统Servlet用于处理用户的请求,例如向数据库添加新的商品、删除商品、查询商品等。 JDBCJava语言用于与数据库进行交互的API(Application Programming Interface)。商品信息管理系统使用JDBC连接数据库,通过执行SQL语句与数据库进行交互,例如查询商品信息、更新商品信息等。 商品信息管理系统的实现主要分为三个模块:前端页面展示、业务逻辑处理和数据存取。 前端页面展示使用JSP来实现,通过JSP页面显示商品列表、商品详细信息和修改商品等操作。用户可以通过在页面上的表单输入商品信息并提交给Servlet进行处理。 业务逻辑处理使用Servlet来实现,Servlet接收到用户的请求后,根据不同的操作类型调用相应的业务逻辑。例如,当用户请求添加商品时,Servlet会将商品信息插入到数据库;当用户请求查询商品时,Servlet会执行相应的SQL语句从数据库获取商品信息。 数据存取使用JDBC来实现,通过JDBC连接数据库并执行SQL语句,将商品信息存储到数据库或从数据库读取商品信息。 总之,商品信息管理系统利用JSPServletJDBC实现了前端页面展示、业务逻辑处理和数据存取。用户可以通过系统进行商品的添加、查询和修改等操作,实现了对商品信息的有效管理。 ### 回答2: 商品信息管理系统是一个基于JSPJavaServer Pages)、ServletJDBCJava Database Connectivity)的系统。JSP是一种服务器端的Java语言编写的动态网页技术,Servlet是在服务器端运行的Java程序,而JDBC是用于连接Java程序与数据库的接口。 该系统的主要功能是对商品信息进行管理,包括添加、修改、删除和查询等。通过JSPServlet可以实现与用户的交互,并将用户的请求传递给后台的Java程序进行处理。JDBC可以用于连接数据库,并通过SQL语句对商品信息进行增删改查操作。 在系统,首先需要建立一个商品信息的数据库表,包括商品ID、名称、价格等字段。通过JDBC连接数据库,在Servlet编写相应的代码,实现对商品信息的增删改查功能。 当用户访问系统时,可以通过JSP页面进行商品信息的添加和修改操作,用户输入相应的信息后,通过Servlet将数据传递给后台的Java程序,使用JDBC将数据写入数据库。对于删除操作,用户可以选择要删除的商品,在后台将该商品信息从数据库删除。而对于查询操作,用户可以输入相关条件,后台程序通过JDBC数据库查询符合条件的商品信息,并将结果返回给用户。 该系统还可以添加权限管理功能,不同的用户拥有不同的操作权限。通过JSPServlet可以实现用户的登录和注册功能,并在后台进行相应的权限验证,确保只有具有相应权限的用户才能进行商品信息的增删改查操作。 综上所述,商品信息管理系统使用JSPServletJDBC等技术,可以实现对商品信息的增删改查操作,提供用户友好的界面和良好的用户体验。 ### 回答3: 商品信息管理系统是一种通过jspservletjdbc等技术实现的系统,用于对商品信息进行管理和操作。 jspJavaServer Pages)是一种动态网页开发技术,它使用类似于HTML的标记语言,在其嵌入Java代码,可以方便地将Java代码和网页内容结合起来。在商品信息管理系统,我们可以使用jsp来设计并展示商品信息的界面,包括商品的名称、价格、库存等信息。 servlet是一种Java程序,运行在服务器上,主要用于处理客户端发送的请求,并返回相应的结果。在商品信息管理系统,我们可以使用servlet来处理用户的操作请求,如添加商品、删除商品、更新商品信息等。servlet可以与数据库进行交互,通过jdbc技术实现与数据库的连接。 jdbcJava Database Connectivity)是一种Java数据库连接的标准接口,用于在Java程序访问数据库。在商品信息管理系统,我们可以使用jdbc来实现与数据库的交互,包括查询商品信息、插入新的商品信息、更新商品信息、删除商品信息等。jdbc提供了一组方法,用于执行数据库操作,并且能够处理数据库的异常情况。 通过jspservletjdbc的组合,商品信息管理系统可以实现对商品信息的增删改查。用户可以通过jsp界面输入商品的相关信息,servlet接收到请求后将信息存储到数据库,同时提供查询商品信息的功能。当用户需要更新或删除商品信息时,servlet将处理用户的请求,并对数据库进行相应的操作。 总之,商品信息管理系统通过jspservletjdbc等技术,可以方便地实现对商品信息的管理和操作,提供了便捷的界面和交互功能,使得用户能够轻松地管理和查询商品信息。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Java-请多指教

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值