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. class can not be find with platformType:1 step 1

    使用第三方库的时候 (配合cocopods)混合使用一定要注意 为什么会出现这样的问题... 苦苦难为我半天时间 都有想打人的冲动 前天一切正常今天出来个这 原因很简单当使用cocopods的时候默认 ...

  2. 硬件抽象层——HAL

    (一)为什么要在android中加入HAL Linux系统中Linux驱动有两种类型的代码:访问硬件寄存器的代码——调用的Linux内核的标准函数进行的标准操作  业务逻辑代码——有些企业或个人并不想 ...

  3. Linux下PHP的完全卸载

    如果想把PHP彻底的卸载干净,直接用yum的remove命令是不行的,而需要查看有多少rpm包,然后按照依赖顺序逐一卸载,在网上查了好多,都是通过  "rpm -qa | grep php& ...

  4. 当想mysql某插入有某字段设置了unique且和之前相同时,会报错,并停止运行

  5. ASP.net页面代码执行顺序

    <%=TextBox1 .Text%> <asp:TextBox ID="TextBox1" runat="server">abc< ...

  6. ES5 对数组方法的扩展 以及 正则表达式

    ES5 对数组的扩展 forEach map some every indexOf lastIndexOf forEach 与 map 语法: 数组.forEach(function ( v, i ) ...

  7. U盘又中毒了,隐藏文件如何显示

    在 开始--运行 中输入 cmd ,再输入,attrib -H -S D:\123 /s /d 后回车,你就发现问题解决了.注意命令之间的空格,D:\代表盘符,就是你的移动硬盘的盘符,如果你的盘符是E ...

  8. 使用Spring 发送 Email !!!!

    邮件服务器: 邮件服务器提供了邮件系统的基本结构,包括邮件传输,邮件分发,邮件存储等功能,以确保邮件能够发送到互联网中的任意地方. 邮件服务器就像我们生活中的邮局,为人们提供邮件服务.要保证邮件被正确 ...

  9. selenium win7+selenium2.0+python环境搭建

  10. C# 文件选择对话框,Unity3d文件保存对话框

    using OpenWinForm = System.Windows.Forms; 在unity3d中,使用FileDialog应该把System.Windows.Forms.dll拷贝到unity工 ...