1.创建商品类型的vo实体类
用户的vo之前已经创建
2.定义DAO接口—-实现类
a.实现用户通用的CRUD以及增加对用户的状态(激活,锁定)修改,查询的操作
b.实现对商品类型的CRUD操作
3.定义service接口—实现类
通过工厂类实现具体方法 得到需要的数据
4.定义servlet类调用service方法
完成对网页前台的数据支持和传递,和网页跳转
5.完成网页设计布局
☆以商品类型列表输出为例
1.vo类(Itme)
public class Item implements Serializable {
private static final long serialVersionUID = -4704111517446993209L;
private int iid;
private String title;
2.DAO接口类(IItmeDAO)
命名规则:interface首字母+vo类名称[首字母大写]+DAO 驼峰命名
public interface IItmeDAO extends IDAO<String, Item> {
public List<Itme> findsAll() throws Exception;
}
3.IItmeDAO的实现类(ItmeDAOImol)
命名规则: vo类名称+DAO+imop(首字母大写) 驼峰命名
public class ItmeDAOImol implements IItmeDAO {
static Connection conn = null;
static PreparedStatement ps = null;
static ResultSet rs = null;
@Override
public List<Item> findsAll() throws Exception {
try {
List<Item> items = new ArrayList<Item>();
conn = JDBCUtil.getConn();
String sql = "SELECT * FROM item ;";
ps = conn.prepareStatement(sql);
rs = ps.executeQuery();
while (rs.next()) {
Item item = new Item();
item.setIid(Integer.parseInt(rs.getString(1)));
item.setTitle(rs.getString(2));
items.add(item);
}
return items;
} catch (SQLException e) {
e.printStackTrace();
} finally {
JDBCUtil.release(conn, ps, rs);
}
return null;
}
}
4.实例化工程类
public class DAOfactory {
public static IItemDAO getIItemServiceback() {
return new ItemDAOImol();
}
public class ServiceBackFactory {
public static IItemServiceback getIItemServiceback() {
return new ItemServicebackImpl();
}
5.service接口
public interface IItemServiceback {
/**
*
* @Title: show
* @Description: TODO(查询所有商品信息的方法)
* @param: @return
* @return: Item
* @throws
*/
public List<Item> showAll();
}
6.IItemServiceback接口的实现类(ItemServicebackImpl)
public class ItemServicebackImpl implements IItemServiceback {
@Override
public List<Item> showAll() {
try {
return DAOfactory.getIItemServiceback().findsAll();
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
6.Web层处理操作(ItemServletBack)
@WebServlet(name = "ItemServletBack", urlPatterns = "/pages/back/admin/item/MemberServletBack/*")
public class ItemServletBack extends HttpServlet {
private static final long serialVersionUID = 1L;
@Override
protected void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String path = "/pages/errors.jsp";
String status = request.getRequestURI().substring(request.getRequestURI().lastIndexOf("/") + 1);
if (status != null) {
if ("list".equals(status)) {
System.out.println("如果地址为/pages/back/admin/item/MemberServletBack/list进行后台登录操作");
path = findItmeAll(request);
}
}
request.getRequestDispatcher(path).forward(request, response);
}
/**
*
* @Title: findItmeAll
* @Description: TODO(查询所有商品种类)
* @param: @param request
* @param: @return
* @return: String 返回显示商品页面
* @throws
*/
private String findItmeAll(HttpServletRequest request) {
List<Item> items = ServiceBackFactory.getIItemServiceback().showAll();
request.setAttribute("items", items);
return "/pages/back/admin/item/item_list.jsp";
}
}
7.前台页面处理
取得 request.setAttribute("items", items); 数据反应到页面上
包结构