Java开发三层架构

三层架构:将程序中所有的类按照功能类别划分为3个层次(将所有类用于3个不同包存放)

实体层:entity,该包下存放所有的实体类(数据类,只有属性(和数据库字段对应的属性)和属性的封装(setter/getter,构造函数))

意:实体类的类名一般都应该和数据库名一致)(如果数据库中的表为区分关键字而添加的前后缀,在类名应该不要,数据库表名:tb_user,类名:User),但是一定有实际意义

数据访问层:dao,该包下存放的类都是数据访问类,类中只有操作数据库的方法,方法中也只有操作数据库的步骤代码(对应异常的处理不算操作数据库代码)

注意:数据访问类的类名一般都是实体类名+dao(这是访问接口命名),接口实现类命名(实体类名+Dao+Impl)数据库表名:tb_user 实体类名:User 数据访问接口:UserDao 接口实现类:UserDaoImpl

业务逻辑层:service,该包下存放的都是业务逻辑类,程序执行时调用的都是业务逻辑类中的方法,业务逻辑类负责调用数据访问类(同时解决dao类中的异常,以后的日志输出也是该层负责,以及其他业务的扩展)

注意:业务逻辑类的类名一般都是实体类名+Service(这是访问接口命名),接口实现类命名(实体类名+Service+Impl)数据库表名:tb_user 实体类名:User 数据访问接口:UserDao 接口实现类:UserDaoImpl 业务逻辑接口:UserService 接口实现类:UserServiceImpl

其他层:

工具层:util,类名都是:功能名+Util

……

视图层:view/map层的类中都是各种在控制输出界面的方法

开发流程:

1.新建包
在这里插入图片描述
2.根据三层架构规则去创建类和接口
Dao接口层:方法命名一般都是以select,insert,delete,update开头

在这里插入图片描述

Dao接口实现类层:操作数据库的步骤代码,不写任何与数据库操作不相关的代码

在这里插入图片描述

Service接口层:方法名一般都是get,add,remove,或者以功能命名,into(入住)

在这里插入图片描述
Service接口实现层:调用dao的方法并完成一些功能处理(比如异常处理)

在这里插入图片描述

实体层:封装数据实体,与数据库表一一对应

在这里插入图片描述

其他层:
工具层:JDBCUtil

在这里插入图片描述

视图层:该层当前项目中需要定义的,并不属于三层架构中的层次
在这里插入图片描述
系统视图:在最终在主函数中调用的视图
在这里插入图片描述

本文转载自:三层架构

  • 1
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
开发中,三层架构是一种常见的软件设计模式,用于将应用程序分为不同的次以实现高内聚和低耦合的目标。三层架构包括表现(UI)、业务逻辑(BLL)和数据访问(DAL)。 表现(UI)是用户与系统交互的界面,通常使用Java的Servlet或者JavaServer Faces(JSF)等技术来实现。它负责接收用户的请求并将其传递给业务逻辑。 业务逻辑(BLL)是应用程序的核心,负责处理业务逻辑和数据处理。它包含了应用程序的主要业务逻辑,并通过调用数据访问来获取和存储数据。在Java开发中,可以使用Java的POJO(Plain Old Java Object)或者Spring框架来实现业务逻辑。 数据访问(DAL)负责与数据库进行交互,包括数据的读取、写入和更新等操作。它提供了与数据存储介质(通常是关系型数据库)进行交互的接口,可以使用Java的JDBC(Java Database Connectivity)或者ORM(Object-Relational Mapping)框架(如Hibernate)来实现数据访问。 通过将应用程序按照功能划分为不同的次,三层架构可以实现代码的重用、可维护性和可扩展性。表现、业务逻辑和数据访问各自独立,可以单独进行开发和测试,而且可以在不影响其他次的情况下进行修改和优化。 总结起来,Java开发中的三层架构是将应用程序划分为表现、业务逻辑和数据访问,以实现高内聚和低耦合的软件设计模式。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值