一、DAO

1.概念:

(1)Date Access Object(数据存取对象)

(2)位于业务逻辑和持久化数据之间

(3)实现对持久化数据的访问

(4)类---> DAO --->数据表

2.模式:

(1)隔离业务逻辑代码和数据访问代码

业务逻辑层<=====>数据访问层

(2)隔离不同数据库的实现

业务逻辑层=====>数据访问层----->Oracle

----->SQLServer

----->MySQL

3.DAO模式的组成部分

《DAO实现类》------>《DAO接口》

------>《实体类》

------>《数据库工具类》

4.使用DAO的步骤

(1)建立数据库表

(2)创建实体类(类中的属性应当是和数据库中的表是对应的)

(3)创建DAO的基类(接口类)

(4)创建DAO的实现类

(5)创建具体表的DAO类

(6)创建具体表的DAO类的实现类

(7)创建业务逻辑层的接口类

(8)创建业务逻辑层的接口类的实现类

(9)创建测试类

二、分层开发

1.分层的特点

(1)每一层都有自己的职责

(2)上一层不用关心下一层的实现细节,上一层通过下一层提供的对外接口来使用其功能

(3)上一层调用下一层的功能,下一层不能调用上一层功能

2.分层开发的好处:

(1)各层专注于自己功能的实现,便于提高质量

(2)便于分工协作,提高开发效率

(3)便于代码复用

(4)便于程序扩展

3.顺序访问原则:

(1)下一层为上一层服务,但不使用上层的服务(比如地基与楼房)

(2)分层结构中,不同层之间通过实体类传输数据

业务逻辑 <---------- 实体类  --------> 数据访问层

三、知识扩展

1.接收参数的形式:password =+ password +(后面的一个表示形式参数,单引号里放双引号,双引号里的参数前后添加加号)

2..properties表 必须要在src文件下建立

3.在properties表中的URL中的 “localhost”表示本机的ip地址,可以直接填写字段“127.0.0.1”或者直接简写“///”。

三种形式都可以表示本机ip地址:

url=jdbc:mysql://localhost:3306/day

url=jdbc:mysql://127.0.0.1:3306/day

url=jdbc:mysql:///day

4.使用Eclipse开发,在导入他人工程时,可能会存在着开发工具或者电脑的版本不一样,会造成工程报警告,这时需要处理的步骤:

(1)处理感叹号

选中工程-----右击-----Properties----java
build path -----libraries -----找到并选中带有红色错误标志的资源包,然后将其remove-----再add
library -----默认选择后应用apply OK

(2)处理红色报错

选中工程-----右击-----Properties----java
compiler -----先去掉enable project specific
settings前的勾-----然后选中并进入同行右边的configure workspace settings...
-----默认应用apply OK

DAO 基础学习笔记的更多相关文章

  1. 【C#编程基础学习笔记】4---Convert类型转换

    2013/7/24 技术qq交流群:JavaDream:251572072  教程下载,在线交流:创梦IT社区:www.credream.com [C#编程基础学习笔记]4---Convert类型转换 ...

  2. 【C#编程基础学习笔记】6---变量的命名

    2013/7/24 技术qq交流群:JavaDream:251572072  教程下载,在线交流:创梦IT社区:www.credream.com [C#编程基础学习笔记]6---变量的命名 ----- ...

  3. 1.C#基础学习笔记3---C#字符串(转义符和内存存储无关)

    技术qq交流群:JavaDream:251572072  教程下载,在线交流:创梦IT社区:www.credream.com ------------------------------------- ...

  4. Java基础学习笔记总结

    Java基础学习笔记一 Java介绍 Java基础学习笔记二 Java基础语法之变量.数据类型 Java基础学习笔记三 Java基础语法之流程控制语句.循环 Java基础学习笔记四 Java基础语法之 ...

  5. Mysql数据库基础学习笔记

    Mysql数据库基础学习笔记 1.mysql查看当前登录的账户名以及数据库 一.单表查询 1.创建数据库yuzly,创建表fruits 创建表 ) ) ,) NOT NULL,PRIMARY KEY( ...

  6. 0003.5-20180422-自动化第四章-python基础学习笔记--脚本

    0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": " ...

  7. Java基础学习笔记(一)

    Java基础学习笔记(一) Hello World 基础代码学习 代码编写基础结构 class :类,一个类即一个java代码,形成一个class文件,写于每个代码的前端(注意无大写字母) XxxYy ...

  8. C#RabbitMQ基础学习笔记

    RabbitMQ基础学习笔记(C#代码示例) 一.定义: MQ是MessageQueue,消息队列的简称(是流行的开源消息队列系统,利用erlang语言开发).MQ是一种应用程序对应用程序的通信方法. ...

  9. handlebars.js基础学习笔记

    最近在帮学校做个课程网站,就有人推荐用jquery+ajax+handlebars做网站前端,刚接触发现挺高大上的,于是就把一些基础学习笔记记录下来啦. 1.引用文件: jquery.js文件下载:h ...

随机推荐

  1. Linux_access the file or directory which start with "-"

    cd -- filename/dirName [ccmobil@vm-a65a-fc19 wstemp]$ cd -/ -bash: cd: -: invalid option cd: usage: ...

  2. 改进RazorPad

    从Git 上下载了作者的源码后,感觉用起来挺别扭,而且还要BUG............ 经过“篡改”后,好用多了,呵呵..

  3. universal image loader在listview/gridview中滚动时重复加载图片的问题及解决方法

    在listview/gridview中使用UIL来display每个item的图片,当图片数量较多需要滑动滚动时会出现卡顿,而且加载过的图片再次上翻后依然会重复加载(显示设置好的加载中图片) 最近在使 ...

  4. phpcms:五、网站首页(index.html)

    1.经典案例:图文列表:{pc:content  action="position" posid="2" order="listorder DESC& ...

  5. 关于win8开发的一点小总结

    我今天做画面的时候,发现了一点小问题. 我在xmal文件里面加了一个CheckBox控件,设置IsChecked属性为True,并添加了Checked事件.Checked事件里面有对另外一个TextB ...

  6. 小米路由器mini如何设置外网访问wan网站的方法

    很多的玩友都在小米路由器mini上面搭建了自己的网站,有些朋友还需要设置对外网进行开放,我自己也在路由器上面实践了使用,下面与大家分享一下如何设置外网访问路由器网站的办法. 工具/原料 小米路由器mi ...

  7. Servlet实现文件的下载

    (1)项目的主文件夹例如以下:(演示出image和servlet的位置所在) watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGxnZW4xNTczODc= ...

  8. 【hoj】1604 cable master

    简单,二分法,可是在oj上交的时候会有精度的限制,所以仅仅能把数扩得大一点,并且在扩的时候为防止尾数会自己主动生成一些非零数,所以还是自己吧扩到的位置设置为0,还有输出时由于%.2lf会自己有4设5入 ...

  9. PHP5生成图形验证码(有汉字)

    利用PHP5中GD库生成图形验证码 类似于下面这样 1.利用GD库函数生成图片,并在图片上写指定字符 imagecreatetruecolor   新建一个真彩色图像      imagecolora ...

  10. 多路复用I/O poll()

    1.基本知识 poll的机制与select类似,与select在本质上没有多大差别,管理多个描述符也是进行轮询,根据描述符的状态进行处理,但是poll没有最大文件描述符数量的限制.poll和selec ...