使用Servlet完成商品信息的添加、修改、查询及删除功能。本程序使用的product表结构如下:‌‌ 编号 列名 数据类型 描述1 pid int 产品编号,自动增长2 name va

本文主要是介绍使用Servlet完成商品信息的添加、修改、查询及删除功能。本程序使用的product表结构如下:‌‌ 编号 列名 数据类型 描述1 pid int 产品编号,自动增长2 name va,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.使用Servlet完成商品信息的添加、修改、查询及删除功能。本程序使用的product表结构如下:

 编号列名数据类型描述
1pidint产品编号,自动增长
2namevarchar(100)产品名称
3notetext产品简介
4pricedecimal(10,2)产品单价
5amountint 产品数量

‌ 2.数据库连接包,放在WEB-INF的lib目录下哦,官网下载。

2.1数据我放在test命名数据库,product是表名。

3.这时本人现大二,发表第二篇原创文章,有不足自处,可以指正,好的话点个赞,关注一下博,你的鼓励将是我创作的最大动力。

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="ProductDeleteServlet" method="post" name="queryform">请输入需要删除的用户:<input type="text" name="name"/><input type="submit" value="删除"/>
</form>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1>新增产品</h1>
<form action="ProductInsertServlet" method="post" name="queryform">产品编号:<input type="text" name="pid"/><br/>产品名称:<input type="text" name="name"/><br/>产品简介:<textarea rows="10" cols="50" name="note"></textarea><br/>产品单价:<input type="text" name="price"/><br/>产品数量:<input type="text" name="amount"/><br/><input type="submit" value="确定">
</form>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="ProductQueryServlet" method="post" name="queryform">请输入需要查询的产品名称:<input type="text" name="name"/><input type="submit" value="查询"/>
</form></body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1>价格修改</h1>
<form action="PriceUpdateServlet" method="post" name="queryform">产品明:<input type="text" name="name"/><br/>价格:<input type="text" name="price"/><br/><input type="submit" value="确定"/>
</form>
</body>
</html>
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;/*** Servlet implementation class PriceUpdateServlet*/
@WebServlet("/PriceUpdateServlet")
public class PriceUpdateServlet extends HttpServlet {private static final long serialVersionUID = 1L;/*** @see HttpServlet#HttpServlet()*/public PriceUpdateServlet() {super();// TODO Auto-generated constructor stub}/*** @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)*/protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubrequest.setCharacterEncoding("utf-8");response.setContentType("text/html;charset=utf-8");String name = request.getParameter("name");String price = request.getParameter("price");try {//第一步:装载驱动Class.forName("com.mysql.cj.jdbc.Driver");//第二步:建立连接 Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/test?serverTimezone=UTC","root","123456");//第三步:构建查询对象String sql = "update Product set price = ? where name = ?";PreparedStatement pst = con.prepareStatement(sql);pst.setString(1, price);pst.setString(2, name);int i = pst.executeUpdate();PrintWriter pw = response.getWriter();pw.write("价格修改成功");//第五步:关闭连接con.close();}catch(Exception ex) {ex.printStackTrace();}}/*** @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)*/protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubdoGet(request, response);}}
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;/*** Servlet implementation class ProductDeleteServlet*/
@WebServlet("/ProductDeleteServlet")
public class ProductDeleteServlet extends HttpServlet {private static final long serialVersionUID = 1L;/*** @see HttpServlet#HttpServlet()*/public ProductDeleteServlet() {super();// TODO Auto-generated constructor stub}/*** @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)*/protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubrequest.setCharacterEncoding("utf-8");response.setContentType("text/html;charset=utf-8");String name = request.getParameter("name");try {//第一步:装载驱动Class.forName("com.mysql.cj.jdbc.Driver");//第二步:建立连接 Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/test?serverTimezone=UTC","root","123456");//第三步:构建查询对象String sql = "delete from product where name = ?";PreparedStatement pst = con.prepareStatement(sql);pst.setString(1, name);int i = pst.executeUpdate();PrintWriter pw = response.getWriter();pw.write("信息删除成功,请点击链接查看<a href='SimpleQueryServlet'>查看所有产品</a>");//第五步:关闭连接con.close();}catch(Exception ex) {ex.printStackTrace();}}/*** @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)*/protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubdoGet(request, response);}}
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;/*** Servlet implementation class ProductInsertServlet*/
@WebServlet("/ProductInsertServlet")
public class ProductInsertServlet extends HttpServlet {private static final long serialVersionUID = 1L;/*** @see HttpServlet#HttpServlet()*/public ProductInsertServlet() {super();// TODO Auto-generated constructor stub}/*** @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)*/protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubrequest.setCharacterEncoding("utf-8");response.setContentType("text/html;charset=utf-8");String pid = request.getParameter("pid");String name = request.getParameter("name");String note = request.getParameter("note");String price = request.getParameter("price");String amount = request.getParameter("amount");try {//第一步:装载驱动Class.forName("com.mysql.cj.jdbc.Driver");//第二步:建立连接 Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/test?serverTimezone=UTC","root","123456");//第三步:构建查询对象String sql = "insert into product(pid,name,note,price,amount) values(?,?,?,?,?)";PreparedStatement pst = con.prepareStatement(sql);pst.setString(1, pid);pst.setString(2, name);pst.setString(3, note);pst.setString(4, price);pst.setString(5, amount);int i = pst.executeUpdate();PrintWriter pw = response.getWriter();pw.write("信息保存成功,请点击链接查看<a href='SimpleQueryServlet'>查看所有产品</a>");//第五步:关闭连接con.close();}catch(Exception ex) {ex.printStackTrace();}}/*** @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)*/protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubdoGet(request, response);}}
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;/*** Servlet implementation class ProductQueryServlet*/
@WebServlet("/ProductQueryServlet")
public class ProductQueryServlet extends HttpServlet {private static final long serialVersionUID = 1L;/*** @see HttpServlet#HttpServlet()*/public ProductQueryServlet() {super();// TODO Auto-generated constructor stub}/*** @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)*/protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubresponse.setContentType("text/html;charset=utf-8");request.setCharacterEncoding("utf-8");String name = request.getParameter("name");try {//第一步:装载驱动Class.forName("com.mysql.cj.jdbc.Driver");//第二步:建立连接 Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/test?serverTimezone=UTC","root","123456");//第三步:构建查询对象PreparedStatement pst = con.prepareStatement("select * from product where name=?");pst.setString(1, name);ResultSet rs = pst.executeQuery();//第四步:将结果集中的数据提取PrintWriter pw = response.getWriter();pw.write("<table>");pw.write("<tr>");pw.write("<th>产品编号</th>");pw.write("<th>产品名称</th>");pw.write("</tr>");while(rs.next()) {pw.write("<tr>");pw.write("<td>"+rs.getString("pid")+"</td>");pw.write("<td>"+rs.getString("name")+"</td>");pw.write("</tr>");}pw.write("</table>");//第五步:关闭连接con.close();}catch(Exception ex) {ex.printStackTrace();}}/*** @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)*/protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubdoGet(request, response);}}
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;/*** Servlet implementation class SimpleQueryServlet*/
@WebServlet("/SimpleQueryServlet")
public class SimpleQueryServlet extends HttpServlet {private static final long serialVersionUID = 1L;/*** @see HttpServlet#HttpServlet()*/public SimpleQueryServlet() {super();// TODO Auto-generated constructor stub}/*** @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)*/protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubresponse.setContentType("text/html;charset=utf-8");try {//第一步:装载驱动Class.forName("com.mysql.cj.jdbc.Driver");//第二步:建立连接 Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/test?serverTimezone=UTC","root","123456");//第三步:执行sql语句 String sql = "select * from product";Statement st = con.createStatement();ResultSet rs = st.executeQuery(sql);//第四步:将结果集中的数据提取PrintWriter pw = response.getWriter();pw.write("<table>");pw.write("<tr>");pw.write("<th>产品编号</th>");pw.write("<th>产品名称</th>");pw.write("</tr>");while(rs.next()) {pw.write("<tr>");pw.write("<td>"+rs.getString("pid")+"</td>");pw.write("<td>"+rs.getString("name")+"</td>");pw.write("</tr>");}pw.write("</table>");//第五步:关闭连接con.close();}catch(Exception ex) {ex.printStackTrace();}}/*** @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)*/protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// TODO Auto-generated method stubdoGet(request, response);}}

这篇关于使用Servlet完成商品信息的添加、修改、查询及删除功能。本程序使用的product表结构如下:‌‌ 编号 列名 数据类型 描述1 pid int 产品编号,自动增长2 name va的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/322048

相关文章

IDEA自动生成注释模板的配置教程

《IDEA自动生成注释模板的配置教程》本文介绍了如何在IntelliJIDEA中配置类和方法的注释模板,包括自动生成项目名称、包名、日期和时间等内容,以及如何定制参数和返回值的注释格式,需要的朋友可以... 目录项目场景配置方法类注释模板定义类开头的注释步骤类注释效果方法注释模板定义方法开头的注释步骤方法注

使用Java将DOCX文档解析为Markdown文档的代码实现

《使用Java将DOCX文档解析为Markdown文档的代码实现》在现代文档处理中,Markdown(MD)因其简洁的语法和良好的可读性,逐渐成为开发者、技术写作者和内容创作者的首选格式,然而,许多文... 目录引言1. 工具和库介绍2. 安装依赖库3. 使用Apache POI解析DOCX文档4. 将解析

Qt中QUndoView控件的具体使用

《Qt中QUndoView控件的具体使用》QUndoView是Qt框架中用于可视化显示QUndoStack内容的控件,本文主要介绍了Qt中QUndoView控件的具体使用,具有一定的参考价值,感兴趣的... 目录引言一、QUndoView 的用途二、工作原理三、 如何与 QUnDOStack 配合使用四、自

C++使用printf语句实现进制转换的示例代码

《C++使用printf语句实现进制转换的示例代码》在C语言中,printf函数可以直接实现部分进制转换功能,通过格式说明符(formatspecifier)快速输出不同进制的数值,下面给大家分享C+... 目录一、printf 原生支持的进制转换1. 十进制、八进制、十六进制转换2. 显示进制前缀3. 指

pytorch自动求梯度autograd的实现

《pytorch自动求梯度autograd的实现》autograd是一个自动微分引擎,它可以自动计算张量的梯度,本文主要介绍了pytorch自动求梯度autograd的实现,具有一定的参考价值,感兴趣... autograd是pytorch构建神经网络的核心。在 PyTorch 中,结合以下代码例子,当你

使用Python构建一个Hexo博客发布工具

《使用Python构建一个Hexo博客发布工具》虽然Hexo的命令行工具非常强大,但对于日常的博客撰写和发布过程,我总觉得缺少一个直观的图形界面来简化操作,下面我们就来看看如何使用Python构建一个... 目录引言Hexo博客系统简介设计需求技术选择代码实现主框架界面设计核心功能实现1. 发布文章2. 加

SpringBoot集成Milvus实现数据增删改查功能

《SpringBoot集成Milvus实现数据增删改查功能》milvus支持的语言比较多,支持python,Java,Go,node等开发语言,本文主要介绍如何使用Java语言,采用springboo... 目录1、Milvus基本概念2、添加maven依赖3、配置yml文件4、创建MilvusClient

Python如何自动生成环境依赖包requirements

《Python如何自动生成环境依赖包requirements》:本文主要介绍Python如何自动生成环境依赖包requirements问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录生成当前 python 环境 安装的所有依赖包1、命令2、常见问题只生成当前 项目 的所有依赖包1、

SQL表间关联查询实例详解

《SQL表间关联查询实例详解》本文主要讲解SQL语句中常用的表间关联查询方式,包括:左连接(leftjoin)、右连接(rightjoin)、全连接(fulljoin)、内连接(innerjoin)、... 目录简介样例准备左外连接右外连接全外连接内连接交叉连接自然连接简介本文主要讲解SQL语句中常用的表

shell编程之函数与数组的使用详解

《shell编程之函数与数组的使用详解》:本文主要介绍shell编程之函数与数组的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录shell函数函数的用法俩个数求和系统资源监控并报警函数函数变量的作用范围函数的参数递归函数shell数组获取数组的长度读取某下的