为了账号安全,请及时绑定邮箱和手机立即绑定

设计模式之DAO简单分析

标签:
Java

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

2、DAO各部分详解:
DAO设计模式包括以下5个主要部分:
(1)、数据库连接类;
数据库连接类的主要功能是连接数据库并获得连接对象,以及关闭数据库。通过数据库连接类可以大大的简化开发,在需要进行数据库连接时,只需常见该类的实例,并调用其中的方法就可以获得数据库连接对象和关闭数据库,不必再进行重复操作。例:
[java] view plain copy
Package com.javaweb.dao1

Import java.sql.*;

Public class DataBaseConnection{

  Private final String DBDRIVER = “com.mysql.jdbc.Driver”;  

  Private final String DBURL = “jdbc:mysql://localhost:3306/javaweb”;  

  Private final String DBUSER = “root””;  

  Private final String DBPASSWORD = “585762”;  

  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类:
VO类是一个包含属性和表中字段完全对应的类,并在该类中提供setter和getter方法来设置并获取该类中的属性。例:
[java] view plain copy
Package com.javaweb.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接口中定义了所有的用户操作,如添加记录、删除记录及查询记录等。不过因为是借口,所以仅仅是定义,需要子类实现。例:
[java] view plain copy
Package com.javaweb.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 queryById(int userid)throw Exception;  

  Public List queryAll()throw Exception;  

}

(4)、DAO实现类:
DAO实现类实现了DAO接口,并实现了接口中定义的所有方法。
(5)、DAO工厂类:
在没有DAO工厂类的情况下,必须通过创建DAO实现类的实例才能完成数据库操作。这时就必须知道具体的子类,对于后期的修改非常不方便。
使用DAO工厂类,可以比较方便地对代码进行管理,而且可以很好地解决后期修改的问题,通过该DAO工厂类的一个静态方法来获取DAO实现类实例。这时如果要替换DAO实现类,只需要修改该Dao工厂类中的方法代码,而不必邀修改所有的操作数据库代码。例:
[java] view plain copy
Package com.javaweb.dao1;

Public class DAOFactory{

  Public static UserDAO getUserDAOInstance(){  

         Return new UserDAOImpl();  

  }  

}

3、使用DAO完成数据库操作:
(1)、添加记录:

(2)、更新记录:

(3)、删除记录:

(4)、查询记录:

点击查看更多内容
11人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消