`

基于接口的分层实现

阅读更多

 

摘要:通过本文简述基于接口编程的优势,给一些初学者在面向接口编程与系统架构分层方法予以启示,同时,也帮助自身复习下 JDBC 相关操作。

 

下面直接切入主题,这里主要利用一个较为简单的基于 JDBC 数据库操作的示例来说明问题。首先来描述下分层概况:(一) DAO 层或者叫数据访问层吧,主要是用于数据持久化操作。(二)业务逻辑层或者称之为 Service 层吧,顾名思义操作业务逻辑相关内容。(三)其实这里还应该有一层表示层,就是用来进行数据显示的,在此我直接把它给忽略了,把测试层(我暂且这么称呼)数据显示当表示层用,主要是为了简化操作。(四)最后,还有一个贯穿三层的模型层,主要用于数据的封装与传输。见图

层对层自己都直接提供了接口,而并非直接调用具体的接口实现类。这样带来的好处是什么呢,就是说修改任意某层的代码基本上不会影响到其它层代码的改动,这就是抽象带来的好处。对于DAO数据库层,我在例子中默认采用了JDBC实现,同时又简单地写了一个Hibernate方式的实现。而对于这两种方式的改动,只需要修改配置文件就可以了,而不需要去修改原来JDBC的实现以及其它层的代码。而这种优势对于其它另外的层也一样,在此以DAO数据访问层为例。

 

开发工具:Eclipse 3.x Mysql5.1

 

工程文件说明:见图

(1)org.wiki.jdbc.dao 存放了DAO数据访问层的接口及具体实现类,包括JDBC与Hibernate实现(伪实现),属数据库层;

(2)org.wiki.jdbc.domain 存放领域模型对象,属模型层;

(3)org.wiki.jdbc.exception存放相应的异常类;

(4)org.wiki.jdbc.factory存放用于生成相应DAO实现的工厂类;

(5)org.wiki.jdbc.service存放业务逻辑接口及具体实现类,属业务层;

(6)org.wiki.jdbc.test存放相关测试类,暂且称表示层;

(7)org.wiki.jdbc.utils存放JDBC数据库操作的相关工具类;

(8)jdbc.properties数据库及DAO具体实现类配置信息;

(9)lib存放数据库操作的jar

(10)db存放数据库可能用到的SQL

 

源码使用方法:下载源码解压导入eclipse修改jdbc.properties数据库配置信息,利用Mysql创建相应数据库(默认jdbc,表名user)就可以运行了。

 

 

参考:传智播客关于JDBC的视频http://www.itcast.cn/

 

用惯了Hibernate之类的ORM框架发现最基本的JDBC有些遗忘了,所以在回头复习下……

 

 

 

  • 大小: 13 KB
  • 大小: 14.5 KB
分享到:
评论

相关推荐

    网络编程与分层协议设计基于linux平台实现

    以下是对“网络编程与分层协议设计基于Linux平台实现”这一主题的详细解析。 首先,网络编程涉及的主要知识点包括套接字编程、TCP/IP协议族以及并发处理。套接字是网络编程的基本接口,通过创建、绑定、监听和接受...

    基于.NET 平台的分层架构实战.rar

    《基于.NET平台的分层架构实战》是一份深入探讨.NET平台下分层架构设计与实现的教程。在软件开发中,分层架构是一种常见的设计模式,它将复杂的应用程序拆分成多个逻辑层,每个层专注于特定的功能,从而提高代码的...

    桌面时钟 (基于分层窗口,Layered window)

    描述中提到的"利用分层窗口+PNG图片实现,GDI+绘制",意味着这个桌面时钟程序利用了PNG图像格式,这种格式支持透明度,结合GDI+图形设备接口进行绘制。GDI+是Windows编程中用于图形绘制的一个强大库,它可以处理矢量...

    易语言调用API函数实现分层透明窗口

    本篇文章将详细讲解如何利用易语言调用API(应用程序接口)函数来实现分层透明窗口的功能。这个技术常用于创建具有视觉效果的应用程序,如制作半透明的对话框或者悬浮窗口。 首先,我们需要了解什么是API函数。API...

    基于ARM 和DM9000 的网卡接口设计与实现.pdf

    《基于ARM和DM9000的网卡接口设计与实现》 本文主要探讨了如何在基于ARM微处理器S3C2410的嵌入式系统中,设计和实现与DM9000以太网控制芯片的接口,从而实现网络数据传输。DM9000是一款低成本、高性能的快速以太网...

    基于面向对象分层思想的PHP增删改查demo

    在这个"基于面向对象分层思想的PHP增删改查demo"中,我们可以看到如何将这一思想应用于实际的Web应用开发。 首先,"分层思想"是将一个复杂的系统分解为多个独立的层次,每个层次负责不同的职责。常见的三层架构包括...

    基于RMI的MVC分层多机系统编程的实现

    ### 基于RMI的MVC分层多机系统编程的实现 #### 摘要 本篇文章探讨了在MVC(Model-View-Controller)架构中利用RMI(Remote Method Invocation)技术实现分布式多机系统编程的过程。MVC是一种广泛应用于软件开发中的...

    基于分层分布式结构的水电站计算机监控系统设计.pdf

    基于分层分布式结构的水电站计算机监控系统设计涉及了多个方面的知识点,包括水电站运行管理、计算机监控系统的开发、分层分布式结构的应用、监控系统功能的设计及实现、系统通信以及监控系统在水电站中的实际应用...

    分层架构与业务逻辑实现方式

    有时候仔细看看,这个类已经不再是按面向对象方式来实现,虽然你用的是 OO 语言(java,C#,Ruby 等),也用了类,接口,继承、多态等技术手段,但是你是在写过程式的代码。 事务脚本方式的缺点是:写了很多方法,类...

    基于.NET平台的分层架构实战.docx

    【基于.NET平台的分层架构...在后续的文章中,将逐步介绍每个层面的实现细节,从实体类和接口设计,到数据访问层的不同实现方式,再到业务逻辑层和表示层的实现,最后总结整个实战过程,提供对整个分层架构的全面理解。

    基于.NET平台的分层架构实战.doc

    在架构设计中,文档计划涉及实体类的实现、接口的设计与实现、依赖注入和IoC容器的设计与实现,以及三种不同方式的数据访问层实现,包括Access+动态生成SQL、SQLServer+存储过程以及基于NBear ORM框架的实现。...

    毕业设计基于JavaWeb实现的一个备忘录系统项目源码.zip

    毕业设计基于JavaWeb实现的一个备忘录系统项目源码。难度适中,新手自己可操作 备忘录 介绍 后端部分基于Servlet、Jdbc实现. 前端部分基于Layui、jqury实现。 一个简单的前后端分离Demo,前后端交互JSON数据格式 ...

    基于USB的通用无线传输接口设计

    在这样的背景下,本文提出了一种基于USB接口的无线传输解决方案,通过引入32位ARM微处理器和射频收发器,实现了无线局域网的数据传输功能。 系统设计的核心是Philips公司的LPC2210微控制器,它是一款32位ARM7TDMI-s...

Global site tag (gtag.js) - Google Analytics