Dao类

DAO(Data Access Object)是一个数据访问接口,数据访问:顾名思义就是与数据库打交道。夹在业务逻辑与数据库资源中间。

数据访问对象DAO的功能

1. DAO用来封装Data Source的..就比如,Connection conn = DAOFactory.createConnection()..

就可以把Driver. URL. username,passpword这一些放在DAO中

以后要更改数据库的类型.比如要把MYSQL换成Oracle的话..只需要更改DAOFactory里面的getConnection()里面的Driver.URL.之类的..

2. DAO也是把对数据库的操作(比如最基本的CRUD操作)全部封装在里面..

比如说你要插入一个新的用户..那么.在DAO中我们只需要提供一个insertUser(User user)这一个方法就可以了..具体的操作是在DAO中实现的...

那么对于要调用DAO的时候.我们只要知道insertUser(User)是用来插入一个新的用户...而不需要知道是如何实现的..

一般 DAO是与Abstract Factory模式一起来用的...

Factory来建立数据库和定位具体的DAO(比如说是UserDao..CustomerDao..)..一般将getConnection设置为static..也可以把HibernateSessionFactory这一个公共类放在这一AbstractFactory类中去...

​
public class DAOFactory {private static final SessionFactory sessionFactory;// 定义一个ThreadLocal .static Session currentSession().....public UserDao getUserDAO() { return new UserDaoImpl(sesssion);}public OtherDao getOtherDAO() { return new OtherDaoImpl(session);}......}public interface UserDao {public insertUser(FormBean)public updateUser(FormBean);}​

然后就实现DAO的接口: (Struts的FormBean...VO来的..)

​
public class UserDaoImpl implements UserDao {private Session session;public UserDaoImpl(Session session){this.session = session;}...public insertUser(FormBean) {..//..session.save(UserPO);..//..return FormBean;}public FormBean updateUser(FormBean) {..//..session.update(UserPO);..//..return FormBean;}}​

最后定义你的PO:

​
public class UserPO {String firstname,lastname,password..........​

Model类

Model 为 模型,数据,实体类。

像基本资料一般包含"名字"、"年龄"、"城市"等,英文字段:id, gender, age, city这些决定了 Model 的样子,在数据库则为 user 表,也就是 Model 在数据库中的样子

java中的Dao类,model类是什么意思相关推荐

  1. java 为什么有匿名类_全面了解Java中的内部类和匿名类

    Java内部类(Inner Class),类似的概念在C++里也有,那就是嵌套类(Nested Class),乍看上去内部类似乎有些多余,它的用处对于初学者来说可能并不是那么显著,但是随着对它的深入了 ...

  2. Java 中的线程安全的类

    Java 中的线程安全的类 3 个线程安全的类 它们对应的非线程安全的类 它们延伸的类 其它 它们对应的非线程安全的类 3 个线程安全的类   Java 中的 3 个基本的线程安全的类为:Hashta ...

  3. java中常用的包、类、以及包中常用的类、方法、属性----sql和text\swing

    java中常用的包.类.以及包中常用的类.方法.属性 常用的包 java.io.*; java.util.*; java.lang.*; java.sql.*; java.text.*; java.a ...

  4. java面试题27 java中下面哪些是Object类的方法()

    java面试题27 java中下面哪些是Object类的方法() A notify() B notifyAll() C sleep() D wait() 蒙蔽树上蒙蔽果,蒙蔽树下你和我.遇到这种题,我 ...

  5. jAvA中deprecate,在Java中使用Deprecated方法或类是错误的吗?

    1.在Java中使用Deprecated方法或类是错误的吗? 从已弃用的定义 : 注释@Deprecated的程序元素是程序员不鼓励使用的程序元素,通常是因为它是危险的,或者是因为存在更好的selec ...

  6. JAVA中同目录下定义类,以及对象的创建与使用,内存图的原理

    JAVA中同目录下定义类,以及对象的创建与使用(听课笔记) JAVA中对象的创建与使用(听课笔记) 示例一 同文件目录下,创建了三个类OOTest01,User,Address类,之间的调用 示例二 ...

  7. java中常用的日期工具类

    java中常用的日期工具类 日期相关的类: package net.yto.ofclacct.core.util;import java.text.ParseException; import jav ...

  8. Java中的ListNode和TreeNode类

    目 录 ListNode类 TreeNode类 参考:Java中的ListNode和TreeNode类 这是2个需要自定义的类,链表和二叉树. ListNode类 public class ListN ...

  9. java urlencoder,java中的URLEncoder和URLDecoder类

    java中的URLEncoder和URLDecoder类 URLEncoder类包含将字符串转换为application/x-www-form-urlencoded MIME 格式的静态方法. 为了解 ...

最新文章

  1. TS - 处理故障的一些通用方法
  2. MFC静态文本控件设置超链接
  3. Python+selenium 自动化-基本环境搭建,调用selenium库访问百度查询天气实例演示
  4. Android的AlertDialog详解
  5. 1.6 this关键字详解(3种用法)
  6. 艰难的原创——谈互联网创业
  7. opengl启动过程
  8. Android-JNI开发系列《十》实践利用libjpeg-turbo完美压缩图片不失真
  9. Visio—如何画矩形虚线边框?
  10. python数据爬虫项目
  11. 微信公众号服务器架构,Flask框架实现微信公众号开发(接入微信服务器)
  12. html颜色字体字符代码
  13. PS使用:利用PS去除图片中的多余文字
  14. TextView跑马灯
  15. css字号 h5_html字体大小 html文字大小
  16. 360能删除mysql吗_如何把Mysql卸载干净(亲测有效)
  17. 推荐几个很实用的编程网站
  18. crontab任务误删恢复及备份步骤
  19. 【笔记】关于汉字注音 汉字转拼音,首拼
  20. 大数据在医疗领域的应用

热门文章

  1. 多线程-线程让步(yield)
  2. 女明星被美瞳耽误了演技!挑隐形眼镜把好这4关!
  3. PIC18F2455/2550/4455/4550之通用串行总线USB
  4. 面向“接口”编程和面向“实现”编程
  5. Flex布局常用的一些属性及解释
  6. QT-----无人机地面站如何修改显示界面1——OpenPilotGCS_config.xml
  7. PIV(粒子成像测速)
  8. N刷《我要投资》后,我发现了“成功人士”的秘诀
  9. 《智能经济时代初现雏形:数据赋能至上,数据共享先行》阅读笔记
  10. 微信本地模拟开发环境搭建