将数据库的操作代码从servlet中剥离,封装到DAO中

原创 2015年11月18日 19:51:53

工厂设计模式是所有设计模式中最简单的设计模式!!!(就是通过工厂来创建一些对象)

工厂模式的典型应用场景:创建对象(当我们感觉到创建对象是件很痛苦的事,会用工厂模式) 

工厂模式:简单工厂,工厂方法,抽象工厂(要支持创建多个产品,定义一个抽象工厂,抽象工厂中有多个工厂方法,可以创建多个产品)

工厂方法:

抽象工厂:利用工厂方法实现抽象工厂

 

为了避免直接在servlet中看到操作数据库的代码(直接在servlet中通过JDBC访问数据库),并且由于数据库的不同,操作代码也不同,譬如分页查询的sql语句,mysql的可以:select * from t_article where title like '%"+title+"%' limit ?,?,而在oracle中是不可以用limit的。

实现方法为:创建一个接口ArticleDao

然后创建两个实现了ArticleDao接口的类:ArticleDaoImpl(具体实现了操作MySQL数据库的类)和ArticleDaoImplForOracle(具体实现了操作Oracle数据库的类)。

HashMap是线程不安全的对象,而Hashtable<>是线程安全的对象。

public class Hashtable<K,V> 

extends Dictionary<K,V> 

implements Map<K,V>, Cloneable, java.io.Serializable {}

Properties extends Hashtable<Object,Object>继承了Hashtable,它有更强大的功能,Properties 可以直接读取文件,而且可以将文件中的键值对直接放到Map中来(Properties就是一个Map),调用Properties load方法(HashMapHashtable中没有load方法),能够 

通常DAO是无状态的。

Servlet不仅仅可以处理来自客户端的请求,还可以利用他的init方法来做些我们想做的初始化工作。

任何一个请求servlet发到服务器端,都会先调用servlet中的service()方法,在service方法中根据请求的Httphead里面携带的有关这个请求方法的信息,譬如是get或者post方法,然后把这个请求转发给doGet()或者doPost(),实际上任何一个servlet都有一个唯一的入口,即service()方法,所以可以在到达doGet()或者doPost()方法之前,在service()方法中执行一些操作。

父类中的this是多态的,他是具体的子类对象,而不是父类对象。

Spring的主体思想就是DI(依赖注入)IOC

版权声明:本文为博主原创文章,未经博主允许不得转载。

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

此篇文章主要讲述DAO、Java Bean和Servlet实现操作数据库,把链接数据库、数据库操作、前端界面显示分模块化实现。其中包括数据的CRUD增删改查操作,并通过一个常用的JSP网站前端模板界面...
  • Eastmount
  • Eastmount
  • 2015年05月24日 05:16
  • 22153

关于android通过servlet访问MySql数据库的问题(附带简单的JSON使用)

废话就不多说了,直接上代码: 服务器端: ①MySQL中建立一个数据库hello,建一张表tab_user,添加字段id,username,password。然后随便添加几条记录。 ②新建Java W...
  • HZHXH
  • HZHXH
  • 2017年05月03日 11:33
  • 273

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

  • 2015年05月24日 14:11
  • 1.32MB
  • 下载

连接操作数据库DAO类

一共三个文件来实现DAO的封装DB.java,ConnManage.java,BaseDAO.java ==========DBconfig.properties文件=================...
  • tianlincao
  • tianlincao
  • 2011年03月28日 00:47
  • 4163

android客户端访问tomcat搭建的servlet服务器并互传数据

第一步,服务器软件环境的搭建(lz用的win7 64位,eclipse javaee版本+android插件):    安装apache tomcat服务器。    安装mysql数据库(要想用j...
  • jasonkent27
  • jasonkent27
  • 2014年09月22日 23:50
  • 2535

Java数据库的操作——DBUtils工具类结果集处理的方式有几种?

DBUtils工具类介绍 DBUtils是java编程中的数据库操作实用工具,小巧简单使用; DBUtils封装了对JDBC的操作,简化了JDBC操作,可以少写代码; DBU...
  • guo13313
  • guo13313
  • 2017年03月06日 00:06
  • 1081

利用 JSP 中的反射机制封装一个 Servlet ,就不用每张表的每个方法都写一个 Servlet

基类 Servlet 代码如下: package com.yibin.cn.servlet; import java.awt.print.Printable; import java.io.IOE...
  • Inite
  • Inite
  • 2017年07月21日 18:50
  • 245

把request对象中的请求参数封装到bean中/生成UUID

package me.gacl.util; import java.util.Enumeration; import java.util.UUID; import javax.servlet.ht...
  • luman1991
  • luman1991
  • 2016年10月16日 16:20
  • 1259

将结果集封装到List中

import java.sql.Connection;    import java.sql.ResultSet;    import java.sql.SQLException;    ...
  • wdfscp
  • wdfscp
  • 2013年05月24日 11:03
  • 3706

Java+MyEclipse+Tomcat (五)DAO和Java Bean实现数据库和界面分开操作

此篇文章主要讲述通过DAO和Java Bean操作数据库,把链接数据库、数据库操作、前端界面显示分模块化实现。DAO和Java Bean是对JDBC进行分层、模块化的最有效两个方法。DAO(数据库操作...
  • Eastmount
  • Eastmount
  • 2015年05月19日 02:06
  • 6069
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:将数据库的操作代码从servlet中剥离,封装到DAO中
举报原因:
原因补充:

(最多只允许输入30个字)