DAO设计模式:

1、DAO:
      DAO设计模式是属于J2EE数据层的操作,使用DAO设计模式可以简化大量代码,
增强程序的可移植性。

 

2、DAO各部分详解

DAO设计模式包括以下4个主要部分:

(1)、数据库连接和关闭工具类;

      数据库连接类的主要功能是连接数据库并获得连接对象,以及关闭数据库。
通过数据库连接类可以大大的简化开发,在需要进行数据库连接时,只需常见该类的
实例,并调用其中的方法就可以获得数据库连接对象和关闭数据库,不必再进行重复操作。

Package com.demo.dao1  
 
Import java.sql.*;  
 
Public class DataBaseConnection{  
 
      Private final String DBDRIVER = “com.mysql.jdbc.Driver”;  
 
      Private final String DBURL = “jdbc:mysql://localhost:3306/sql_w”;  
 
      Private final String DBUSER = “root””;  
 
      Private final String DBPASSWORD = “root”;  
 
      Private Connection conn = null;  
 
      Public DataBaseConnection(){  
 
             Try{  
 
                    Class.forName(DBDRIVER);  
 
                    This.conn = DriverManager.getConnection(DBURL,DBUSER,DBPASSWORD);  
 
             }catch(Exception e){  
 
                    System.out.println(“数据库连接失败!”);  
 
             }  
 
      }  
 
      Public Connection getConnection(){  
 
             Return conn;  
 
      }  
 
      Public void close(){  
 
             Try{  
 
                    Conn.close();  
 
             }catch(){  
 
                    System.out.println(“数据库连接关闭失败!”);  
 
             }  
 
      }  
 
}

(2).VO即ValueObject也就是值对象,是一个包含属性和表中字段完全对应的类,并在该类中提供setter和getter
方法来设置并获取该类中的属性。例:

Package com.demo.dao1  
 
Public classs User{  
 
      Private int userid;  
 
      Private String username;  
 
      Private String password;  
 
      Public int getUserid(){  
 
            Return userid;  
 
      }  
 
      Public void setUserid(int userid){  
 
             Return userid;  
 
      }  
 
      Public String getUsername(){  
 
            Return username;  
 
      }  
 
      Public void setUsername(String username){  
 
             Return username;  
 
      }  
 
      Public String getUserpassword(){  
 
            Return userpassword;  
 
      }  
 
      Public void setUserid(String userpassword){  
 
             Return userpassword;  
 
      }  
 
}

(3).DAO接口类:

      DAO接口中定义了所有的用户操作,如添加记录、删除记录及查询记录等。不过因为是借口,所以仅仅
是定义,需要子类实现。例:

Package com.demo.dao1;  
 
Import java.util.*;  
 
Public class UserDAO{  

       public void insert(User user)throw Exception;  
 
      Public void update(User user)throw Exception;  
 
      Public void delete(int userid)throw Exception;  
 
      Public User ById(int userid)throw Exception;  
 
      Public List All()throw Exception;  
 
}

(4).DAO实现类:

      DAO实现类实现了DAO接口,并实现了接口中定义的所有方法。

3、使用DAO完成数据库操作:

(1)、添加记录:

(2)、更新记录:

(3)、删除记录:

(4)、查询记录:

jdbc/DAO模式的更多相关文章

  1. jdbc之二:DAO模式

    详细代码请参见 https://code.csdn.net/jediael_lu/daopattern 1.创建Dao接口. package com.ljh.jasonnews.server.dao; ...

  2. jdbc之二:DAO模式 分类: B1_JAVA 2014-04-29 15:13 1536人阅读 评论(0) 收藏

    详细代码请参见 https://github.com/lujinhong/dao 一.前期准备 1.创建数据库 create database filter_conf; 2.创建表并插入数据 crea ...

  3. JDBC—DAO

    一.JDBC 什么是JDBC?JAVA DataBase Connectivity (Java 数据库连接技术)由Java编写的一组类和接口组成,为各种类型的数据库提供统一的访问.JDBC的作用?一种 ...

  4. Java Dao模式通过JDBC连接数据库的操作

    Java程序访问数据库: 1.获取数据库厂商提供的驱动(jdbc接口的实现类) 如ojdbc14.jar——Oracle数据库驱动jar包 mysql-connector-java-5.1.8-bin ...

  5. 2、原生jdbc的dao模式

    一.dao模式 (data access object)1.作用:持久层,专门操作数据的层次结构,不掺杂任何的业务和其他内容2.dao组成部分: a.数据库工厂类 b.数据实体类 javabean p ...

  6. Javaweb学习笔记——(十七)——————JDBC的原理、四大核心类、四大参数、预编译、Dao模式、批处理、大数据、时间类型的转换

    JDBC入门 *导入jar包:驱动 *加载驱动类:Class.forName("类名"); *给出url.username.password,其中url背下来 *使用DriverM ...

  7. 数据持久化以及DAO模式的简单使用

    持久化:(是将程序中的数据在瞬时状态和持久状态间转换机制)        即把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘).持久化的主要应用是将内存中的对象存储在关系型的数据库中,当然 ...

  8. java数据库编程之DAO模式

    第八章:DAO模式 8.1:JDBC封装 为了提高代码的维护性和扩展性,我们使用JDBC进行封装数据, 先定义统一的API,将操作数据的代码抽象到接口中,业务逻辑代码只需要调用这些接口的实现类的对象, ...

  9. 第七章 DAO模式

    第七章 DAO模式 一.JDBC的封装 1.JDBC的封装: DAO位于业务逻辑和持久化数据之间,实现对持久化数据的访问.将数据库都封装起来,对外提供相应的接口 2.DAO模式的作用: 1.隔离业务逻 ...

随机推荐

  1. mySQL基本操作学习笔记(一)

                                                                                                        ...

  2. JAVA vo pojo javabean dto区别

    JavaBean 是一种JAVA语言写成的可重用组件.为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器.JavaBean 通过提供符合一致性设计模式的公共方法将内部域暴露成员属性 ...

  3. Java—从文件中读取数据

    1.FileInputStream() // 构建字节输入流对象,参数为文件名 FileInputStream fin = new FileInputStream("message" ...

  4. “-webkit-appearance: none”按钮样式作用!

    -webkit-appearance: none,可以去除浏览器默认样式.

  5. vue学习笔记

    来公司以后就一直在用vue框架,不管是业务代码,还是做vue组件.关于vue有一些点是文档中没有提及的,记录一下以便以后查询- 一.Vue的特点 新一代 Vue.js 框架非常关注如何用极少的外部特性 ...

  6. [BZOJ 2038]小Z的袜子

    传送门:BZOJ 2038 题意很明确,是在给定的区间内任意选取两个数,求选到两个相同的数的概率. 所以我们得首先统计在给定的区间内,相同的数对有多少对,那么这里就使用到了莫队算法.如果对莫队算法还不 ...

  7. c++ 顺序容器适配器

    第一次看到stack,以为它是一个和vector同等地位的容器,其实不是 官方解释:stacks are a type of container adaptor, specifically desig ...

  8. js中的事件部分总结

    一.HTML事件 HTML事件处理就是直接在HTML标签上添加事件,举例 <p class="" onclick=function(){alert(HTML事件)}>& ...

  9. Chapter 3.GDI/DirectDraw Internal Data Structures

    说明,在这里决定跳过第二章,实在是因为里面涉及的内容太理论,对我而言又太艰深 3.1 HANDLES AND OBJECT-ORIRNTED PROGRAMMING In normal object- ...

  10. MySQL分布式集群之MyCAT(转)

    原文地址:http://blog.itpub.net/29510932/viewspace-1664499/ 隔了好久,才想起来更新博客,最近倒腾的数据库从Oracle换成了MySQL,研究了一段时间 ...