电商模块开发-第三天
展示一级目录及商品信息。
一级目录的信息在商品类型表中,商品的信息在商品表中,所以涉及两次查询操作。
//产品的实体类
public class Article { private int id; private String title; private String supplier; private double price; private double discount; private String locality; private Date putAwayDate; private int storage; private String image; private String description; private String typeCode; private Date dateTime; private int disabled; 以及setter/getter方法
//商品的持久层及其实现,实现采用xml的方式
@Repository("articleDao") public interface ArticleDao { public List<Article> selectAllArticle(); }
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="per.lc.sms.dao.ArticleDao"> <select id="selectAllArticle" resultType="Article"> select * from ec_article </select> </mapper>
//商品的业务层及其实现 public interface ArticleService { public List<Article> getAllArticle(); } @Service("articleService") public class ArticleServiceImp implements ArticleService { @Resource private ArticleDao articleDao; @Override public List<Article> getAllArticle() { return articleDao.selectAllArticle(); } }
在第一天有商品类别的实体类,此处不再贴代码。
//持久层
@Repository("articleTypeDao") public interface ArticleTypeDao { @Select("select * from ec_article_type where length(code)=4")//使用注解的方式实现 public List<ArticleType> selectFirstLevel(); }
//业务层及其实现 public interface ArticleTypeService { public List<ArticleType> getFirstLevel(); } @Service("articleTypeService") public class ArticleTypeServiceImp implements ArticleTypeService { @Resource private ArticleTypeDao articleTypeDao; @Override public List<ArticleType> getFirstLevel() { return articleTypeDao.selectFirstLevel(); } }
//servlet处理用户请求
@WebServlet("/list") public class ListServlet extends HttpServlet { private ArticleService service1; private ArticleTypeService typeService; @Override public void init() throws ServletException { super.init(); ServletContext servletContext=this.getServletContext(); WebApplicationContext context= WebApplicationContextUtils.getWebApplicationContext(servletContext); service1=(ArticleService) context.getBean("articleService"); //获取spring中的对象 typeService=(ArticleTypeService)context.getBean("articleTypeService"); } @Override protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { List<Article> articleList=service1.getAllArticle(); req.setAttribute("articleList",articleList); List<ArticleType> articleTypes=typeService.getFirstLevel(); //商品信息与一级目录会展示到页面中 req.setAttribute("articleTypes",articleTypes); req.getRequestDispatcher("/WEB-INF/jsp/list.jsp").forward(req,resp); } }