JavaWeb(三层架构)
Posted 呼啦啦dxy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaWeb(三层架构)相关的知识,希望对你有一定的参考价值。
1.为什么需要三层架构?
业务处理的代码与JSP代码混在一起,不易于阅读,不易于代码维护
2.分层结构的模式
(1)分层模式是最常见的一种架构模式
(2)分层模式是很多架构模式的基础
3.分层
将解决方案的组件分隔到不同的层中
在同一个层中组件之间保持内聚性
层与层之间保持松耦合
4.三层模式的划分
表示层
业务逻辑层
数据库访问层
5.层与层之间的关系
表示层依赖于业务逻辑层
业务逻辑层依赖 于数据访问层
《 实现分层》
首先创建用户实体类
其次编写数据访问层
数据访问接口
public interface UserDao //根据用户进行查找,返回用户列表 public boolean findUser(User user);
数据访问接口的实现
public class UserDaoJdbcImpl implements UserDao public boolean findUser(User user) Connection con = null; PreparedStatement pStatement = null; ResultSet res = null; //调用创建数据库连接的方法 获得连接,实现用户名和密码查询*/
编写业务逻辑层
编写业务逻辑接口(业务逻辑通常以Biz命名)
//编写业务逻辑控制接口UserBiz public interface UserBiz public boolean login(User user);
编写业务逻辑层接口实现
public class UserBizImpl implements UserBiz public List login(User user) UserDao ud = new UserDaoJdbcImpl(); boolean flag = ud.findUser(user); return flag;
编写表示层
JSP页面调用业务逻辑层
<%@page import="org.jbit.bean." %> <%@page import="org.jbit.biz." %> <%@page import="org.jbit.biz.impl." %> <% String uname=request.getParameter("user"); String upwd=request.getParameter("pwd"); User user = new User(); user.setUsername(uname); user.setPassword(upwd); //表示层只与业务逻辑层发生联系 UserBiz ub = new UserBizImpl(); boolean flag = ub.login(user); if(flag) response.sendRedirect("welcome.jsp"); else response.sendRedirect("login.jsp"); %>
1. 三层架构编写遵循的原则
上层依赖其下层,依赖关系不跨层
表示层不能直接访问数据访问层
上层调用下层的结果,取决于下层的实现
下一层不能调用上一层
下一层不依赖上一层
上层的改变不会影响下一层
下层的改变会影响上一层得到的结果
在上一层中不能出现下一层的概念
分工明确,各司其职
2.分层开发的特点
下层不知道上层的存在
仅完成自身的功能
不关心结果如何使用
每一层仅知道其下层的存在,忽略其他层的存在
只关心结果的取得
不关心结果的实现过程
JSTL通常会与EL表达式合作实现JSP页面的编码
3.分层开发的优势
职责划分清晰
无损替换
复用代码
降低了系统内部的依赖程度
JavaWeb 之 三层架构:软件设计架构
界面层(表示层):用户看的得界面。用户可以通过界面上的组件和服务器进行交互。
业务逻辑层:处理业务逻辑的。
数据访问层:操作数据存储文件。
以上是关于JavaWeb(三层架构)的主要内容,如果未能解决你的问题,请参考以下文章