`
caiceclb
  • 浏览: 242464 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

简单DAO与servlet调用如何避免重复的数据库连接

    博客分类:
  • JEE
阅读更多
现在都说框架,我今天发个不说框架的,作为入门讨论(包括我及其他初学者需要)。

写DAO往往是这样的(网上的视频教程,纸类教材,网上教程等貌似都是这样教的...):

class DAO类名 {

  //增加操作
  public void add (vo对象) {
    
    //1、获取一个数据库连接
    //2、执行insert sql语句
    //3、关闭数据库连接及其他清理操作
  }

  //删除操作
  public void delete (vo对象) {
    
    //1、获取一个数据库连接
    //2、执行delete sql语句
    //3、关闭数据库连接及其他清理操作
  }

  ... ...//其他类似操作

}


那么问题就来了,如果我在一个servlet中的doGet 或 doPost 中同时调用了 DAO.add() 和 DAO.delete()
这两个方法,那么每个方法都会打开并关闭数据库连接一次,显然是影响性能的。

如何在打开一次数据库连接中完成两次操作呢?

我想到的处理方法就类似与Hibernate session里的操作,使用transaction.begin()开始,transaction.commit()结束;

那么DAO类修改如下:

class DAO类名 {

  //增加新的方法begin();
  public void begin() {
  
  // 获取一个数据库连接
   ......

  }

  //增加新的方法commit();
  public void begin() {
  
  // 关闭数据库连接及其他清理
   ......

  }

  //增加操作
  public void add (vo对象) {   
    
    //执行insert sql语句
  }

  //删除操作
  public void delete (vo对象) {
    
    //2、执行delete sql语句
  }

  ... ...//其他类似操作

}


DAO这样写以后,servlet中调用就写为:

...

DAO dao = new DAO() ;

dao.begin();

dao.add(vo);
dao.delete(vo);

dao.commit();

...



这里说的简单的例子,复杂的也该是以此为基础。不知道大家在实际使用中是如何处理的?欢迎大家指点。

被误了N久啊。要是这样去找工作,谁敢要?!



貌似偶要发讨论意向,居然就成问题贴了,动不动就框架,没框架怎么办?偶也没进过什么公司,没团体合作过,完全自学,哪来那么好的处理方法?苦啊,继续摸索。
分享到:
评论

相关推荐

    servlet+jsp+service+Oracle实现简单的数据库交互

    ### 关于servlet+jsp+service+Oracle实现简单的数据库交互 #### 一、概述 本文将详细介绍如何使用servlet、jsp、service层以及Oracle数据库来实现一个简单的用户登录注册功能。这种架构通常用于Web应用程序开发中...

    JavaWeb实现网上商城:JSP+Servlet+Dao

    Servlet:用于验证数据、实例化JavaBean、调用Dao连接数据库、控制页面的跳转 Servlet过滤器(filter):能够在一个Request到达servlet之前预处理request,也可以在离开servlet时处理response Servlet监听器:给web中...

    简单的jsp+servlet+javaBean访问mysql数据库

    在本案例中,"student"可能代表一个JavaBean,它包含了与学生相关的属性(如ID、姓名、年龄等)和操作这些属性的方法(如获取、设置和保存数据到数据库)。JavaBean的规范要求它们具有公共无参构造器,属性应有对应...

    Servlet使用MVC模式(Dao\Service\Servlet)增删查改

    这些方法通常会调用DAO(Data Access Object)层来与数据库交互。 **DAO(数据访问对象)** DAO层是模型层和数据库之间的桥梁,它封装了所有与数据库交互的代码。例如,我们可以有`UserDAO`接口及其实现类,提供`...

    采用Java Servlet +Service+DAO实现用户登陆注册

    (2)新增Service包,创建Servicve服务类,供Servlet调用,实现业务功能; (3)对数据库的增删改查操作进行封装,提供统一的访问对象DAO类; (4)以用户注册与登陆案例的实现为例。 教学重点与难点 (1)Servlet+...

    Java Web实验六 采用 DAO 模式实现对数据库的访问方法, 利用 Servlet 实现 MVC 模式

    这样做的好处在于,业务逻辑层不必直接与数据库进行通信,而是通过调用DAO的方法,降低了代码的耦合度。在实验中,你需要创建一个具体的DAO实现类,该类将包含连接数据库、执行SQL语句、处理结果集等方法。例如,你...

    原生servlet+C3P0数据库连接池搭建的商城系统.7z

    在商城系统中,数据库连接池的作用至关重要,它可以有效地管理和复用数据库连接,避免频繁创建和销毁连接带来的性能开销。C3P0提供了丰富的配置选项,如最小连接数、最大连接数、连接超时、空闲测试频率等,可以根据...

    DWR的访问DAO和Servlet

    为了测试这个设置,我们可以创建一个简单的Web页面(如DWRTest.html),在这个页面上使用JavaScript直接调用服务器端的DAO方法,例如获取数据库中的数据并显示在页面上。这样,用户在浏览器中就可以看到实时更新的...

    dao+service+servlet+jsp实现留言板(添加、查看)

    在这个项目中,DAO层负责与数据库交互,如添加新的留言、查询已有留言等。DAO类通常包含对应数据库表的操作方法,比如`addMessage()`用于新增留言,`getMessageList()`用于获取所有留言。 3. **Service层**: ...

    用servlet+javabean实现简单的数据库操作

    在Java Web开发中,Servlet和JavaBean是两个重要的组件,常用于构建动态Web应用程序,特别是与数据库交互。本文将深入探讨如何使用Servlet和JavaBean来实现对数据库的基本操作:增加(Insert)、删除(Delete)、...

    jsp+dao+servlet实现新闻发布系统增删改

    这个系统的核心在于利用Java Servlet处理HTTP请求,JSP进行视图展示,以及DAO(Data Access Object)模式来与数据库进行交互,实现了新闻的发布、删除和修改功能。 【描述】中的关键信息提示我们,该新闻发布系统是...

    Java+MyEclipse+Tomcat (六)详解Servlet和DAO数据库增删改查操作1

    在本教程中,我们将深入探讨如何使用Java、MyEclipse和Tomcat来实现Servlet和DAO(数据访问对象)模式下的数据库操作,特别是针对增删改查(CRUD)功能。首先,我们需要理解整个项目的结构。 项目结构遵循DAO设计...

    [JSP暑假实训] 三.MySQL数据库基本操作及Servlet网站连接显示数据库信息1

    - DAO类中,创建数据库操作方法,如`List<InfoBean> getAllInfos()`,返回所有信息记录,便于业务层调用。 总结:本文详细介绍了MySQL数据库的配置和基本操作,通过Navicat进行可视化管理,并展示了如何在Java Web...

    博客系统(dao+servlet+service+vo+mysql)

    DAO层是应用程序与数据库之间的接口,负责处理所有的数据操作。在本项目中,DAO类会包含方法如添加新的博客文章、获取文章列表、更新用户信息等,通过执行SQL查询或更新语句来完成这些操作。DAO的设计模式使得业务...

    JSP+DAO+servlet完美分页

    DAO模式是一种设计模式,用于封装对数据库的操作,它将业务逻辑与数据访问逻辑分离,提高了代码的可维护性和可测试性。在分页中,DAO将处理查询特定页数的数据,如计算总记录数、获取某一页的数据等。 **反射机制**...

    让java网站开发从此简单起来[一个项目只用一个Servlet和一个Dao类]demo

    DAO层是与数据库交互的关键部分。每个DAO类通常对应于数据库中的一个表,负责执行CRUD(创建、读取、更新、删除)操作。在一个项目中只使用一个DAO类,可能意味着所有的数据库操作都被集中管理。这可能会导致代码...

    基于WEB的简历系统(JSP+Servlet)(含数据库)

    【基于WEB的简历系统(JSP+Servlet)(含数据库)】是一个典型的Web应用程序,它利用了Java技术栈,包括JSP(JavaServer Pages)和Servlet,以及数据库存储用户信息。这种系统允许用户通过Web界面创建、编辑和管理他们...

    使用JSP+SERVLET+JDBC实现对数据库的增删改查

    在本文中,我们将深入探讨如何使用JSP、Servlet和JDBC技术实现对数据库的基本操作,包括增(Add)、删(Delete)、改(Update)和查(Select)。这是一套非常基础且实用的技术栈,适用于构建Web应用程序中的数据管理...

    Servlet实例和JDBC的连接.rar

    总之,"Servlet实例和JDBC的连接.rar"文件中的例子演示了如何在Servlet中处理用户登录和注册,利用JDBC与数据库进行交互。通过学习这个实例,开发者可以更好地理解Servlet和JDBC的基本用法,为构建更复杂的JavaEE...

    JSP+Servlet+AJAX的dao设计模式

    在DAO设计模式中,Servlet接收用户请求,调用服务层方法,这些方法又会进一步调用DAO来与数据库交互。 **3. AJAX (Asynchronous JavaScript and XML)** AJAX允许Web页面在不重新加载整个页面的情况下与服务器交换...

Global site tag (gtag.js) - Google Analytics