数据库代码
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;展示面代码
<%@ page import="java.util.List" %>
<%@ page import="com.hp.bean.Goods" %><%--
Created by IntelliJ IDEA.
User: 86152
Date: 2023/2/19
Time: 15:12
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title></title>
</head>
<body>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<h3> ${user.username}</h3>
<table>
<th>商品编号</th>
<th>商品名称</th>
<th>上品价格</th>
<th>商品说明</th>
<th><a href="addGoods.jsp">添加</a></th>
<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></td>
<td><a href="del?gid=${goods.gid}">删除</a></td>
</tr>
</c:forEach>
</table>
</body>
</html>
添加页面代码
<%--
Created by IntelliJ IDEA.
User: 86152
Date: 2023/2/23
Time: 12:11
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title></title>
</head>
<body>
<form action="add" method="post">
商品名称:<input type="text" name="gname" value=""><br/>
商品价格:<input type="number" step="0.01" name="price" value=""><br/>
商品介绍:<input type="text" name="mark" value=""><br/>
<input type="submit" value="提交">
</form>
</body>
</html>添加代码
servlet
package com.hp.servlet;
import com.hp.bean.Goods;
import com.hp.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("/add")
public class AddGoods extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse resp) throws ServletException, IOException {
doPost(request, resp);
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse resp) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
resp.setCharacterEncoding("utf-8");
Goods goods=new Goods();
goods.setGname(request.getParameter("gname"));
goods.setPrice(request.getParameter("price"));
goods.setMark(request.getParameter("mark"));
GoodsDao goodsDao=new GoodsDao();
int row = goodsDao.add(goods);
if(row>0){
request.getRequestDispatcher("selectAllGoods").forward(request,resp);
}else {
request.setAttribute("sb_msg","添加商品信息失败");
request.getRequestDispatcher("sb.jsp").forward(request,resp);
}
}
}
实体类
package com.hp.bean;
public class Goods {
private Integer gid;
private String gname;
private String price;
private String mark;
public Goods() {
}
public Goods(Integer gid) {
this.gid = gid;
}
public Integer getGid() {
return gid;
}
public String getGname() {
return gname;
}
public String getPrice() {
return price;
}
public String getMark() {
return mark;
}
public void setGid(Integer gid) {
this.gid = gid;
}
public void setGname(String gname) {
this.gname = gname;
}
public void setPrice(String price) {
this.price = price;
}
public void setMark(String mark) {
this.mark = mark;
}
@Override
public String toString() {
return "Goods{" +
"gid=" + gid +
", gname='" + gname + '\'' +
", price=" + price +
", mark='" + mark + '\'' +
'}';
}
}
增删的JDBC代码dao
package com.hp.dao;
import com.hp.bean.Goods;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
public class GoodsDao {
private String driver = "com.mysql.cj.jdbc.Driver";
private String url = "jdbc:mysql://127.0.0.1:3306/mydb";
private String user = "root";
private String password = "root";
private Connection connection = null;
private PreparedStatement pr = null;
private ResultSet rs = null;
private int row = 0;
public List<Goods> selectAll() {
List<Goods> goodsList = new ArrayList<>();
try {
Class.forName(driver);
connection = DriverManager.getConnection(url, user, password);
//编写sql语句
String sql = "select * from t_goods";
pr = connection.prepareStatement(sql);
rs = pr.executeQuery();
while (rs.next()) {
Goods goods = new Goods();
goods.setGid(rs.getInt("gid"));
goods.setGname(rs.getString("gname"));
goods.setPrice(rs.getString("price"));
goods.setMark(rs.getString("mark"));
goodsList.add(goods);
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
if (rs != null) {
rs.close();
}
if (pr != null) {
pr.close();
}
if (connection != null) {
connection.close();
}
} catch (Exception e) {
e.printStackTrace();
}
return goodsList;
}
}
public int add(Goods goods) {
try {
Class.forName(driver);
connection = DriverManager.getConnection(url, user, password);
//编写sql语句
String sql = "insert into t_goods(gname,price,mark) values(?,?,?);";
pr = connection.prepareStatement(sql);
pr.setObject(1, goods.getGname());
pr.setObject(2, goods.getPrice());
pr.setObject(3, goods.getMark());
row = pr.executeUpdate();
} catch (Exception e) {
} finally {
try {
if (rs != null) {
rs.close();
}
if (pr != null) {
pr.close();
}
if (connection != null) {
connection.close();
}
} catch (Exception e) {
e.printStackTrace();
}
return row;
}
}
public int DeleteByid(int gid) {
try {
Class.forName(driver);
connection = DriverManager.getConnection(url, user, password);
String sql = "delete from t_goods where gid=?";
pr = connection.prepareStatement(sql);
pr.setObject(1,gid);
row = pr.executeUpdate();
} catch (Exception e) {
} finally {
try {
if (rs != null) {
rs.close();
}
if (pr != null) {
pr.close();
}
if (connection != null) {
connection.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
return row;
}
}删除代码
servlet
package com.hp.servlet;
import com.hp.bean.Goods;
import com.hp.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 DeleteGoods extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse resp) throws ServletException, IOException {
doPost(request, resp);
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse resp) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
resp.setCharacterEncoding("utf-8");
int gid = Integer.parseInt(request.getParameter("gid"));
//根据id执行数据库删除
GoodsDao goodsDao=new GoodsDao();
int row = goodsDao.DeleteByid( gid);
if(row>0){
request.getRequestDispatcher("selectAllGoods").forward(request,resp);
}else {
// request.setAttribute("sb_msg","添加商品信息失败");
request.getRequestDispatcher("sb.jsp").forward(request,resp);
}
}
}

增加一个修改
package com.hp.dao;
import com.hp.bean.Goods;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
public class GoodsDao {
private String driver = "com.mysql.cj.jdbc.Driver";
private String url = "jdbc:mysql://127.0.0.1:3306/mydb";
private String user = "root";
private String password = "root";
private Connection connection = null;
private PreparedStatement pr = null;
private ResultSet rs = null;
private int row = 0;
public List<Goods> selectAll() {
List<Goods> goodsList = new ArrayList<>();
try {
Class.forName(driver);
connection = DriverManager.getConnection(url, user, password);
//编写sql语句
String sql = "select * from t_goods";
pr = connection.prepareStatement(sql);
rs = pr.executeQuery();
while (rs.next()) {
Goods goods = new Goods();
goods.setGid(rs.getInt("gid"));
goods.setGname(rs.getString("gname"));
goods.setPrice(rs.getString("price"));
goods.setMark(rs.getString("mark"));
goodsList.add(goods);
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
if (rs != null) {
rs.close();
}
if (pr != null) {
pr.close();
}
if (connection != null) {
connection.close();
}
} catch (Exception e) {
e.printStackTrace();
}
return goodsList;
}
}
public int add(Goods goods) {
try {
Class.forName(driver);
connection = DriverManager.getConnection(url, user, password);
//编写sql语句
String sql = "insert into t_goods(gname,price,mark) values(?,?,?);";
pr = connection.prepareStatement(sql);
pr.setObject(1, goods.getGname());
pr.setObject(2, goods.getPrice());
pr.setObject(3, goods.getMark());
row = pr.executeUpdate();
} catch (Exception e) {
} finally {
try {
if (rs != null) {
rs.close();
}
if (pr != null) {
pr.close();
}
if (connection != null) {
connection.close();
}
} catch (Exception e) {
e.printStackTrace();
}
return row;
}
}
public int DeleteByid(int gid) {
try {
Class.forName(driver);
connection = DriverManager.getConnection(url, user, password);
String sql = "delete from t_goods where gid=?";
pr = connection.prepareStatement(sql);
pr.setObject(1,gid);
row = pr.executeUpdate();
} catch (Exception e) {
} finally {
try {
if (rs != null) {
rs.close();
}
if (pr != null) {
pr.close();
}
if (connection != null) {
connection.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
return row;
}
public Goods UpdateByid(int gid){
Goods goods=new Goods();
try {
Class.forName(driver);
connection=DriverManager.getConnection(url,user,password);
String sql="select * from t_goods where gid=?";
pr=connection.prepareStatement(sql);
pr.setObject(1,gid);
rs = pr.executeQuery();
while (rs.next()) {
goods = new Goods();
goods.setGid(rs.getInt("gid"));
goods.setGname(rs.getString("gname"));
goods.setPrice(rs.getString("price"));
goods.setMark(rs.getString("mark"));
}
}catch (Exception e){
}
return goods;
}
public int Update(Goods goods){
try {
Class.forName(driver);
connection=DriverManager.getConnection(url,user,password);
String sql="update t_goods set gname=?,price=?,mark=? where gid=?";
pr=connection.prepareStatement(sql);
pr.setObject(1,goods.getGname());
pr.setObject(2,goods.getPrice());
pr.setObject(3,goods.getMark());
pr.setObject(4,goods.getGid());
//执行sql语句
row = pr.executeUpdate();
System.out.println(row);
}catch (Exception e){
}
return row;
}
}实体类
package com.hp.bean;
public class Goods {
private Integer gid;
private String gname;
private String price;
private String mark;
public Goods() {
}
public Goods(Integer gid) {
this.gid = gid;
}
public Integer getGid() {
return gid;
}
public String getGname() {
return gname;
}
public String getPrice() {
return price;
}
public String getMark() {
return mark;
}
public void setGid(Integer gid) {
this.gid = gid;
}
public void setGname(String gname) {
this.gname = gname;
}
public void setPrice(String price) {
this.price = price;
}
public void setMark(String mark) {
this.mark = mark;
}
@Override
public String toString() {
return "Goods{" +
"gid=" + gid +
", gname='" + gname + '\'' +
", price=" + price +
", mark='" + mark + '\'' +
'}';
}
}
文章展示了使用Java的JDBC进行数据库操作,包括创建商品表,插入数据,以及通过Servlet处理商品的添加、删除和修改功能。代码中包含了JSP页面展示商品列表,以及对应的Servlet实现业务逻辑,DAO层处理数据库交互。
290

被折叠的 条评论
为什么被折叠?



