zoukankan      html  css  js  c++  java
  • 数据库连接池和软件设计分层模式

    数据库连接池

    1.什么是连接池 (connection pool)连接池


    在没有接触到连接池的时候,我们都是重复的去和数据库进行连接,打开资源,关闭资源,这样特别的繁琐。性能特别低,特别是在多用户访问的情况下。
    连接池负责与数据库进行连接不用重复进行打开资源和关闭资源,大大提高了程序的性能。连接池的最小连接数是由最小的数据库数量来定的。当应用程序
    连接数量超过了连接池的最大数量,则被加入等待队列。
    用户是怎么拿连接的?
    当用户去连接池拿连接的时候,连接池会向一个空闲池放入连接,如果空闲池有连接,用户直接拿空闲池中的连接,如果没有,则连接池看有没有超过连接池连接的
    最大数量,如果没有超过则创建一条连接给用户,如果超过则用户连接处于等待队列。。
    2.数据源与连接池
    数据源一组特性用于确定和描述他所表示的现实存在的数据源,数据源可以创建一些数据保存到连接池中,java程序直接可以在连接池中拿空闲的连接。
    数据源其实现负责建立与数据库的连接。

    软件设计分层模式
    1.三层架构 (分层用的最多的是三层架构,如果项目复杂也可以增加层!)
    表示层:使用户可以直接访问,可以接受用户的数据,和显示数据。一般表示层都是jsp文件、html文件。
    数据访问层:Dao层,用于对数据库的访问、连接。实现对数据的保存和读取操作。
    业务逻辑层:提供对业务逻辑处理的封装,表示层可以调用业务逻辑层的一些接口实现各种操作。
    2.层与层之间的关系
    三层之间互相依赖,表示层依赖业务逻辑层去实现各种操作,业务逻辑层依赖于数据访问层,一些功能代码基本都写在数据访问层(DAO层)。


    3.分层原则 如上图:
    01.上一层依赖下一层,依赖关系不夸层
    表示层依赖业务逻辑层,业务逻辑层依赖于数据访问层。
    02.下一层不能调用上一层
    业务逻辑层不能调用表示层,数据访问层不能调用业务逻辑层。
    03.下一层不依赖上一层
    数据访问层不依赖与业务逻辑层。
    04.在上一层中不能出现下一层的概念
    在表示层不会出现业务逻辑层的概念,在业务逻辑层也不会出现数据访问层的概念。
    4.分层实现
    我们将业务逻辑处理的代码提取出来并进行了封装,在JSP页面找不到与数据库访问有关的信息。各层发挥出了不同的功能。页面展示、业务处理、数据访问。有了分层写代码更加的明确清晰。

  • 相关阅读:
    flash中网页跳转总结
    as3自定义事件
    mouseChildren启示
    flash拖动条移出flash无法拖动
    需要一个策略文件,但在加载此媒体时未设置checkPolicyFile标志
    Teach Yourself SQL in 10 Minutes
    电子书本地转换软件 Calibre
    Teach Yourself SQL in 10 Minutes
    Teach Yourself SQL in 10 Minutes
    Teach Yourself SQL in 10 Minutes – Page 31 练习
  • 原文地址:https://www.cnblogs.com/java-263/p/9836147.html
Copyright © 2011-2022 走看看