package s2jsp.bysj.dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
import s2jsp.bysj.entity.Product;
public class ProductDao extends BaseDao {
private Connection conn = null; // 保存数据库连接
private PreparedStatement pstmt = null; // 用于执行SQL语句
private ResultSet rs = null; // 用户保存查询结果集
public static final int PAGE_NUM = 5;// 定义产品列表页面显示产品个数
/**
* 查询所有产品信息
*
* @return 产品信息列表
*/
public List findAllProduct() {
List list = new ArrayList();
String sql = "select * from product ";
try {
conn = this.getConn();
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
while (rs.next()) {
Product product = new Product();
product.setProductID(rs.getInt("productID"));
product.setSerialNumber(rs.getString("serialNumber"));
product.setName(rs.getString("name"));
product.setPrice(rs.getDouble("price"));
product.setBrand(rs.getString("brand"));
product.setModel(rs.getString("model"));
product.setPicture(rs.getString("picture"));
product.setDescription(rs.getString("description"));
list.add(product);
}
} catch (Exception e) {
e.printStackTrace();
} finally {
this.closeAll(conn, pstmt, rs);
}
return list;
}
/**
* 根据产品ID查找相关产品信息
*
* @return 产品对象
*/
public Product findProductByID(String productID) {
Product product = null;
String sql = "select * from product where productID = ? ";
try {
conn = this.getConn();
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, productID);
rs = pstmt.executeQuery();
if (rs.next()) {
product = new Product();
product.setProductID(rs.getInt("productID"));
product.setSerialNumber(rs.getString("serialNumber"));
product.setName(rs.getString("name"));
product.setPrice(rs.getDouble("price"));
product.setBrand(rs.getString("brand"));
product.setModel(rs.getString("model"));
product.setPicture(rs.getString("picture"));
product.setDescription(rs.getString("description"));
}
} catch (Exception e) {
e.printStackTrace();
} finally {
this.closeAll(conn, pstmt, rs);
}
return product;
}
/**
* 实现产品分页显示
*
* @param page
* 当前页数
* @return 显示产品的列表
*/
public List showProductForPage(int page) {
List list = new ArrayList();
int number = 0;
if (page > 1) {
number = PAGE_NUM * (page - 1);
}
String sql = "select top "
+ PAGE_NUM
+ " * from product where productID not in ( select top "
+ number
+ " productID from product order by productID desc ) order by productID desc";
try {
conn = this.getConn();
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
while (rs.next()) {
Product product = new Product();
product.setProductID(rs.getInt("productID"));
product.setSerialNumber(rs.getString("serialNumber"));
product.setName(rs.getString("name"));
product.setBrand(rs.getString("brand"));
product.setModel(rs.getString("model"));
product.setPrice(rs.getDouble("price"));
product.setPicture(rs.getString("picture"));
product.setDescription(rs.getString("description"));
list.add(product);
}
} catch (Exception e) {
e.printStackTrace();
} finally {
this.closeAll(conn, pstmt, rs);
}
return list;
}
/**
* 根据产品ID删除相关产品信息
*
* @param productID
* 产品ID
* @return 执行SQL语句影响数据库的行数
*/
public int deleteProductByID(String productID) {
String sql = "delete from product where productID = ? ";
String[] param = new String[] { productID };
int count = this.executeSQL(sql, param);
return count;
}
/**
* 添加产品信息
*
* @param product
* 封装了信息的产品对象
* @return 执行SQL语句所影响数据库的行数
*/
public int insertProduct(Product product) {
String sql = "insert into product values(?,?,?,?," + product.getPrice()
+ ",?,?)";
String[] param = new String[] { product.getSerialNumber(),
product.getName(), product.getBrand(), product.getModel(),
product.getPicture(), product.getDescription() };
return this.executeSQL(sql, param);
}
/**
* 根据商品ID和对象参数修改商品信息
* @param product封装了数据的商品对象
* @return 返回执行SQL语句,数据库影响行数
*/
public int updateProduct(Product product) {
String sql = "update product set serialnumber=?,name=?,brand=?,model=?,price="
+ product.getPrice()
+ ",picture=?,description=? where productID="
+ product.getProductID();
String[] param = new String[] { product.getSerialNumber(),
product.getName(), product.getBrand(), product.getModel(),
product.getPicture(), product.getDescription() };
return this.executeSQL(sql, param);
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
某电子商品销售公司为了提升企业形象和商品销售量,决定开发一个公司形象宣传和商品介绍的网站。基本功能如下: (383个子文件)
ProductDao.class 5KB
NewsDao.class 4KB
UserDao.class 3KB
MessageDao.class 3KB
RevertDao.class 3KB
BaseDao.class 2KB
Product.class 2KB
Message.class 1KB
Revert.class 1KB
Users.class 1KB
News.class 1KB
.classpath 490B
css.css 4KB
css.css 4KB
jd100.css 3KB
right.css 1KB
style_admin.css 885B
css.css 636B
Thumbs.db 341KB
Thumbs.db 211KB
Thumbs.db 113KB
Thumbs.db 6KB
Thumbs.db 3KB
welcome.gif 53KB
复件 welcome.gif 53KB
no_photo.gif 3KB
no_photo.gif 3KB
tg-8.gif 2KB
tg-8.gif 2KB
tg-6.gif 2KB
tg-6.gif 2KB
topic_jinghua.gif 2KB
tg-9.gif 2KB
tg-9.gif 2KB
topic_jinghua_locked.gif 2KB
tg-3.gif 2KB
tg-3.gif 2KB
bookbg.gif 2KB
bookbg.gif 2KB
an5.gif 2KB
an5.gif 2KB
tg-5.gif 1KB
tg-5.gif 1KB
tg-4.gif 1KB
tg-4.gif 1KB
tg-7.gif 1KB
tg-7.gif 1KB
replys.gif 1KB
quote.gif 1KB
T_bottomright.gif 1KB
T_bottomright.gif 1KB
unlock.gif 1KB
lock.gif 1KB
HELP.GIF 1KB
ubb_img.gif 1KB
IMG.GIF 1KB
wmv.gif 1KB
qq.gif 1KB
PASTE.GIF 1KB
qq.gif 1KB
unLINK.gif 1KB
f1.gif 1KB
f1.gif 1KB
QQonline.gif 1KB
QQonline.gif 1KB
top_locked.gif 1KB
istop.gif 1KB
f3.gif 1KB
f3.gif 1KB
WLINK.GIF 1KB
topic_top_locked.gif 1021B
post.gif 1001B
post.gif 1001B
back.gif 996B
back.gif 996B
male.gif 992B
female.gif 987B
jd-to.gif 974B
ubb_left.gif 960B
ubb_right.gif 958B
online.gif 928B
topic_locked.gif 913B
titlemu_2.gif 888B
titlemu_2.gif 888B
T_bottomleft.gif 886B
T_bottomleft.gif 886B
kefu_down.gif 759B
kefu_down.gif 759B
emot.gif 744B
f2.gif 740B
f2.gif 740B
title.gif 718B
title.gif 718B
email.gif 709B
come.gif 708B
homepage.gif 686B
hot.gif 681B
swf.gif 673B
T_right.gif 672B
T_right.gif 672B
共 383 条
- 1
- 2
- 3
- 4
资源评论
wangwei753
- 粉丝: 4
- 资源: 6
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 2024 年 10 月 26 日,第 19 届中国 Linux 内核开发者大会于湖北武汉成功举办 来自全国各地的近 400 名内核开发者相约华中科技大学,聆听讲座,共商 Linux 内核未来之发展,共
- qt ftp实现指定路径的文件夹下载、文件下载、文件夹删除、文件删除,支持中文转码,目标机中路径是中文也可以智能识别转换
- (源码)基于Qt和C++的订单管理系统.zip
- CSP-J2024题面(原版珍惜资源)
- (源码)基于Android的玩具租赁系统.zip
- c8.yum.tgz CentOS-Ceph-Quincy.repo
- (源码)基于SSM框架的学生管理系统.zip
- darwin12.2.5.iso
- (源码)基于Python和Flask的博客管理系统.zip
- Microsoft-Office-2019-VL-Serializer-Universal office使用软件
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功