1.首先建立项目,大概目录如下图
绪论:也是一个小作业,测试过没有什么bug,数据库用的tomcat连接池,我也是初学者,分享出来对java的初学者或许会有小帮助,
1.1商品的po层里面就是和数据库表字段对应的数据的get和set方法和构造方法。
2.首先是商品浏览模块的IGoodsDao接口
package cn.hpe.dao;
import java.util.List;
import cn.hpe.po.GoodsInfo;
public interface IGoodsDao {
/**
* 分页显示商品信息的栏目 pageSize=3;
*
* @return
*/
public List<GoodsInfo> getGoodsList(int currentPages, int pageSizes)
throws Exception;
/**
* 获取总页数
*/
public int getAllPage() throws Exception;
/**
* 查询所有商品的信息; return list;
*/
public List<GoodsInfo> getAllGoodsList(String id) throws Exception;
}
import java.util.List;
import cn.hpe.po.GoodsInfo;
public interface IGoodsDao {
/**
* 分页显示商品信息的栏目 pageSize=3;
*
* @return
*/
public List<GoodsInfo> getGoodsList(int currentPages, int pageSizes)
throws Exception;
/**
* 获取总页数
*/
public int getAllPage() throws Exception;
/**
* 查询所有商品的信息; return list;
*/
public List<GoodsInfo> getAllGoodsList(String id) throws Exception;
}
2.1是商品浏览界面的实现部分
package cn.hpe.dao.impl;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
import cn.hpe.dao.BaseDao;
import cn.hpe.dao.IGoodsDao;
import cn.hpe.po.GoodsInfo;
public class GoodsDaoImpl implements IGoodsDao {
/**
* 分页显示商品信息的栏目 pageSize=3;
*
* @return
*/
@Override
public List<GoodsInfo> getGoodsList(int currentPages, int pageSizes)
throws Exception {
List<GoodsInfo> list = new ArrayList<GoodsInfo>();
try {
int currentPage = currentPages;
int pageSize = pageSizes;
int xy = currentPage * pageSize;
int dy = (currentPage - 1) * pageSize;
Connection conn = BaseDao.getConn();
String sql = "select * from (select t.*,rownum r from TB_GOODS t where rownum<="
+ xy + ")where r>" + dy + "";
PreparedStatement ps = conn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
while (rs.next()) {
GoodsInfo gi = new GoodsInfo();
gi.setId(rs.getString("ID"));
gi.setName(rs.getString("NAME"));
gi.setPrice(rs.getDouble("PRICE"));
gi.setCompany(rs.getString("COMPANY"));
gi.setLeaveDate(rs.getString("LEAVE_DATE"));
gi.setDescription(rs.getString("DESCRIPTION"));
list.add(gi);
}
rs.close();
ps.close();
conn.close();
} catch (Exception ex) {
ex.printStackTrace();
throw new Exception();
}
return list;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
import cn.hpe.dao.BaseDao;
import cn.hpe.dao.IGoodsDao;
import cn.hpe.po.GoodsInfo;
public class GoodsDaoImpl implements IGoodsDao {
/**
* 分页显示商品信息的栏目 pageSize=3;
*
* @return
*/
@Override
public List<GoodsInfo> getGoodsList(int currentPages, int pageSizes)
throws Exception {
List<GoodsInfo> list = new ArrayList<GoodsInfo>();
try {
int currentPage = currentPages;
int pageSize = pageSizes;
int xy = currentPage * pageSize;
int dy = (currentPage - 1) * pageSize;
Connection conn = BaseDao.getConn();
String sql = "select * from (select t.*,rownum r from TB_GOODS t where rownum<="
+ xy + ")where r>" + dy + "";
PreparedStatement ps = conn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
while (rs.next()) {
GoodsInfo gi = new GoodsInfo();
gi.setId(rs.getString("ID"));
gi.setName(rs.getString("NAME"));
gi.setPrice(rs.getDouble("PRICE"));
gi.setCompany(rs.getString("COMPANY"));
gi.setLeaveDate(rs.getString("LEAVE_DATE"));
gi.setDescription(rs.getString("DESCRIPTION"));
list.add(gi);
}
rs.close();
ps.close();
conn.close();
} catch (Exception ex) {
ex.printStackTrace();
throw new Exception();
}
return list;