一:熟练掌握分层结构功能及原理
![9cde46509bc168b3c8b2aa122fdabbd4.png](https://i-blog.csdnimg.cn/blog_migrate/25c889a5fa91855a2992f94fbc385b83.png)
- dao:存放接口
- impl:dao接口中的实现类
- pojo:实体类
- service:存放接口及其实现类,dao及impl的升级
- servlet:处理请求及响应
- util:存放工具类
二:实现浏览器展示数据库信息
1.在数据库中建表。主键自增从1000开始:ALTER TABLE t_tea AUTO_INCREMENT=1000
2.创建实体类,对照数据库表:表名对应实体类类名;列名对应类中的属性名(数据类型对照)
3.创建dao接口,定义查询方法:public List<Product> getAll();
4.创建dao接口的实现类,实现查询方法
- 粘贴dbutil和properties配置文件
- jdbc执行sql语句,查询所有商品信息--完善方法体:定义List<Product>集合并返回
- 定义sql语句,查询所有商品信息,每查到一个,存放到集合中
- 创建jdbc连接:Connection conn = dbutil.getConnection();
- 创建预编译陈述对象prepareStatement
- 预编译陈述对象prepareStatement执行查询操作,得到查询结果集resultSet
- 处理结果集:结果集中每一条数据对应一个product对象(循环处理:构建一个product对象,给对象的属性赋值--数据库中查询出来的列的值),存放到集合中
- 关闭
- return product集合
![ccf75d9aa5f1055aa791cf1598038a90.png](https://i-blog.csdnimg.cn/blog_migrate/69277668b8d0b2b36ed2e04dfb076f43.jpeg)
![17f4c1bcb6a859b54b9b2e782b02a348.png](https://i-blog.csdnimg.cn/blog_migrate/3725418f8a3add02b4256b8e689702fa.png)
5、创建ProductService:业务比较简单,所以service=dao
6、创建productServcieImpl实现service的查询方法(直接调用dao写好的方法)
![4cae647cdd21378e94558de3c1852039.png](https://i-blog.csdnimg.cn/blog_migrate/eff4c0d74c1b7ee0a2b98c194f2592bf.jpeg)
7、创建servlet:接收查询请求,调用service的查询方法,获取到product集合,存放到session中
- httpSession session=request.getSession();
- session.setAttribute("自己起名字pros",Tea集合);
- 响应到指定页面response.sendRedirect("/项目名/jsp页面");
![10ec7206b40776cdb0778e1c571b0831.png](https://i-blog.csdnimg.cn/blog_migrate/d921b618e84acdfed9bfdd4a3f05498d.jpeg)
8、创建对应的jsp页面
- 写表格头
- 获取session中存放的商品集合
- 循环遍历商品集合,每循环一次,生成表格中一行数据(tr
![7a06355f8c469713e12337847b34bec8.png](https://i-blog.csdnimg.cn/blog_migrate/7909d564dd1808786da5898cc60f9449.jpeg)
9:项目加载到tomcat中,运行,测试
![37205ada1c1b5c9064bb06d8b5ab2fed.png](https://i-blog.csdnimg.cn/blog_migrate/c3810752d9a9c6ee9280b24f14e4b098.png)