DAO包的作用设计和命名
DAO思想
为什么需要DAO包,出现的作用什么?
正常情况下一个用户对数据库进行访问,其实是没有必要使用DAO
不可能是一个用户对当前数据库进行访问
例子:
客户端存了200行操作数据库的代码
客户端存了200行操作数据库的代码
客户端存了200行操作数据库的代码
客户端存了200行操作数据库的代码
需要访问数据库 这200行代码的操作其实都是相同,出现大量相同重复性代码,破坏一个原则DRY原则
通过一种方式将这些相同代码进行一个封装,对外提供统一的接口,这样操作数据的接口统一命名为 DAO
数据的分离处理可以很好的体现 MVC设计模式的结构
DAO包主要的作用:
其实就是完成对数据库的增删改查(CRUD)
DAO(Data Access Object)
DAO就是和数据完成数据交互的业务逻辑 --> 对应着MCV中M层
DAO包的设计规范:
DAO包是有DAO接口和DAO实现类和描述类组成,在开发中会多件一个包测试DAO包
DAO的命名:
公司域名倒写.项目名.DAO --> 主包
例子:
com.qfedu.项目名称.domain --> 存储到是domain文件
com.qfedu.项目名称.dao --> 存储dao的接口 -->封装了处理数据库的方法
com.qfedu.项目名称.dao.impl --> 存储dao包下的实现类
com.qfedu.项目名称.test --> 存储的是测试文件 --> 项目开发完成必须删除
简单解释一下对应包存储的文件:
domain包 --> 存描述类会以英文单词描述 例如Student --> JAVABEAN规范
dao包 --> 接口接口中的名称 I+ domain下的描述类名称+DAO IStudentDAO -->IXXXDAO
dao包的实现 impl--->名称 XXXDAOImpl --> 接口的实现了 domain下的描述类名称
test包 --> 名称 XXXDAOTest --> domain下描述类的名称
DAO包的作用设计和命名相关推荐
- Java项目 常用包的命名及理解【dao包、domain包、service包、utils包、web包、impl包】
JavaWeb 黑马旅游网 项目结构: 目录 1.dao包 2.domain包 3.service包 4.utils包 5.web包 6.impl包 1.dao包 Dao:数据库相关操作 ...
- 充分发挥bpl包的作用
充分发挥包的作用 本章要点: n 为何要用包 n 为何不用包 n 包的类型 n 包文件 n 使用运行期包 n 把包安装到Delph ...
- 【php毕业设计】基于php+mysql+apache的网络数据包分析工具设计与实现(毕业论文+程序源码)——网络数据包分析工具
基于php+mysql+apache的网络数据包分析工具设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于php+mysql+apache的网络数据包分析工具设计与实现,文章末尾附有本毕业设 ...
- Android Support 包的作用、用法
1, Android Support V4, V7, V13是什么? 本质上就是三个java library. 2, 为什么要有support库? 如果在低版本Android平台上开发一个应用程序, ...
- Jar/War/Ear等包的作用与区别详解
Jar/War/Ear等包的作用与区别详解 以客户角度来看,jar文件就是一种封装格式,用户不需要知道jar包中有多少个.class格式的文件及每个文件中的功能与作用,也可以得到相应的访问的结果.ja ...
- java ear war_[转] 基于Java的打包jar、war、ear包的作用与区别详解
以最终客户的角度来看,JAR文件就是一种封装,他们不需要知道jar文件中有多少个.class文件,每个文件中的功能与作用,同样可以得到他们希望的结果.除jar以外对于J2EE来说还有war和ear.区 ...
- SSH-jar包相应作用
1)Struts中的jar包 jar包名称 作用 struts2-core-2.x.x.jar struts2的核心jar包 javassist-3.x.x.GA.jar 一个开源的分析.编辑和创建J ...
- 最新版idea如何在包下建立子包(dao包下建立impl包)
本人Java新手,对idea也不太熟悉,最近想在src源文件夹下建立包后,再建立子包时出了问题(dao包下建impl),后来上网搜了资料才学会了操作.接下来给大家演示 假如我想建一个下图的体系:pro ...
- php dao类设计,DAO数据访问对象设计 - GoFrame官网 - 类似PHP-Laravel, Java-SpringBoot的Go企业级开发框架...
关于DAO数据访问对象设计其实是关于GoFrame框架工程化实践中比较重要一块设计. DAO设计结合GoFrame的ORM组件性能和易用性都很强,可以极大提高开发和维护效率.看完本章节内容之后,小伙伴 ...
- (网络实验)基于Jnetpcap的网络嗅探器(抓包程序)设计与实现
基于Jnetpcap的网络嗅探器(抓包程序)设计与实现 作者:程哥哥 学号:xxxx 引言: 此程序是由自己编写的个人网络嗅探器,相当于著名的包捕获软件Wireshark的简化版,界面参考至别人的博客 ...
最新文章
- java第5天_java第5天的代码
- MERGE批量增删查改数据
- 【Android 安全】DEX 加密 ( Application 替换 | Android 应用启动原理 | LoadedApk 后续分析 )
- Linux / argv、environ 和 env 的联系
- c语言里有js的预编译环节吗,C语言第十一讲,预处理命令.
- [转]引用 VC 对话框设置位图背景并透明控件
- Linux下Vivado安装流程
- 泛微自带第三方短信接口
- 机器学习库sklearn之怎么划分训练集和测试集
- 电脑版美食大战老鼠放置html,美食大战老鼠2
- 小程序未来移动社交电商!
- Footprint:一夜暴涨250%的Boba,能否成为下个Layer 2代表
- java if或_java中if条件语句里条件的并列
- 学生选课系统业务需求
- Redis源码初探(1)简单动态字符串SDS
- 服务器安装找不到lsi驱动,IBM 机架式服务器RAID卡驱动问题
- 出租车不需要司机了?带你体验无人驾驶出租车!|『智能产品家』第三期
- 泰克示波器查眼图_如何用泰克示波器测量眼图
- vue + 百度地图 +点位标注
- gInk:一款好用的屏幕标注写画软件
热门文章
- gdb学习20:总结
- 6.26 Python小记**args** kwargs
- 执行Jar包报错FileNotFoundException: /home/data/t.txt (Too many open files)以及Cannot run program “/bin/bash
- 债券指数基金以及债券ETF
- 详述GPS原理及RTK技术应用
- 解决error: invalid operands of types ‘const char [6]‘ and ‘const char [6]‘ to binary ‘operator+‘
- 电影 1982年少林寺拍摄集锦
- linux修改重传次数,《关于TCP SYN包的超时与重传》——那些你应该知道的知识(四)...
- 可能有用的篡改检测常识
- 【目标检测】39、一文看懂计算机视觉中的数据增强