package com.it.util;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet; /**
* 数据库操作工具类
* 7个属性 4个方法(连接方法 关闭资源方法 通用查询方法 通用增删改方法)
*/
public class BaseDao {
private static final String DRIVER = "oracle.jdbc.driver.OracleDriver";
private static final String URL = "jdbc:oracle:thin:@localhost:1521:orcl";
private static final String USERNAME = "system";
private static final String PASSWORD = "ok";
//con
public Connection con = null;
//pstmt
public PreparedStatement pstmt = null;
//rst
public ResultSet rst = null;
/*
* 获取连接方法
*/
public void getCon(){
try {
Class.forName(DRIVER);
con = DriverManager.getConnection(URL, USERNAME, PASSWORD);
} catch (Exception e) {
e.printStackTrace();
}
} /*
* 关闭资源 从内到外关闭
*/
public void closeAll(){
try {
if(rst != null){
rst.close();
}
} catch (Exception e) {
e.printStackTrace();
}
try {
if(pstmt != null){
pstmt.close();
}
} catch (Exception e) {
e.printStackTrace();
}
try {
if(con != null){
con.close();
}
} catch (Exception e) {
e.printStackTrace();
}
} /*
* sql:sql语句
* params:参数(填充sql中?的参数数组)
*/
public void commonQuery(String sql,Object[]params){
try {
//获取连接
this.getCon();
//获取执行sql对象
pstmt = con.prepareStatement(sql);
//对?处理,下标从1开始
for (int i = 0; i < params.length; i++) {
pstmt.setObject(i+1, params[i]);
}
//获取结果集
rst = pstmt.executeQuery();
} catch (Exception e) {
e.printStackTrace();
}
} public int commonUpdate(String sql,Object[]params){
int r = -1;
try {
//获取连接
this.getCon();
//获取执行sql对象
pstmt = con.prepareStatement(sql);
//对?处理
for (int i = 0; i < params.length; i++) {
pstmt.setObject(i+1, params[i]);
}
//获取受影响行数
r = pstmt.executeUpdate();
} catch (Exception e) {
e.printStackTrace();
}
return r;
}
}

JDBC之BaseDao类的更多相关文章

  1. JDBC相关的类介绍

    JDBC 背景:1996年,Sun公司推出了Java数据库连接(Java Database Connectivity JDBC)工具包的第一个版本.该工具包使得程序员可以使用结构化语言SQL连接到一个 ...

  2. JDBC 常用驱动类及url格式

    1. oracle <dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc6</ ...

  3. 【JDBC】工具类的抽取

    jdbc.properties属性文件 driverClass=com.mysql.jdbc.Driver url=jdbc:mysql:///jdbctest username=root passw ...

  4. JDBC和驱动类Driver

    什么是JDBC? JDBC(Java DataBase Connectivity),是一套面向对象的应用程序接口(API),制定了统一的访问各类关系数据库的标准接口,为各个数据库厂商提供了标准的实现. ...

  5. JDBC连接工厂类

       看到有些书上数据库连接提供两个工厂类,一个连接工厂类一个关闭工厂类,并且关闭工厂类写了多种重载形式,感觉没有必要,这样写比较简洁一些. /** * 抽象出的连接工厂类,提供连接数据库和关闭连接的 ...

  6. 20160406javaweb JDBC 实例工具类

    一.建立静态的数据库配置文件: config.properties driver=com.mysql.jdbc.Driver url=jdbc:mysql://localhost:3306/datab ...

  7. jdbc连接数据库工具类

    import java.lang.reflect.Field; import java.sql.Connection; import java.sql.DriverManager; import ja ...

  8. 2015.8.2 jdbc实现商品类的增删查改

    在惠普济宁基地进行了两周sql和java的学习,学到很多东西 刚才实现了用jdbc访问数据库对数据库进行操作,是用eclipse写的,过几天移植到NetBeans上,个人还是比较习惯看图形化界面 前几 ...

  9. jdbc封装的类

    JDBCUtil,java package cn.qst.util; import java.sql.Connection;import java.sql.DriverManager;import j ...

随机推荐

  1. MySql、Mongodb和Redis的区别

    NoSQL 的全称是 Not Only SQL,也可以理解非关系型的数据库,是一种新型的革命式的数据库设计方式,不过它不是为了取代传统的关系型数据库而被设计的,它们分别代表了不同的数据库设计思路. M ...

  2. 15)png图片旋转贴图

    1)基本代码展示  还是上一个那个总代码: #include<Windows.h> #include<gdiplus.h>//GDI+的头文件 using namespace ...

  3. English Grammar - Subject Clause

    that引导主语从句 一般置于句末,偶尔也置于句首 that引导的主语从句置于句首 That the seas are being overfished has been known for year ...

  4. UML-FURPS+与补充性规格说明

    1.FURPS+ 在统一过程(UP)中,需求按照“FURPS+”模型进行分类. 功能性(Functional):特性.功能.安全性: 可用性(Usability):人性化因素.帮助.文档: 可靠性(R ...

  5. CodeForces 990B Micro-World(思维、STL)

    http://codeforces.com/problemset/problem/990/B 题意: 有n个细菌,每个细菌的尺寸为ai,现在有以常数k,如果细菌i的尺寸ai大于细菌j的尺寸aj,并且a ...

  6. 第04项目:淘淘商城(SpringMVC+Spring+Mybatis)【第十一天】(购物车+订单)

    https://pan.baidu.com/s/1bptYGAb#list/path=%2F&parentPath=%2Fsharelink389619878-229862621083040 ...

  7. socker通信-struct模块-粘包问题

    Socket概念 Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口.在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面,对 ...

  8. 在Orcl中通过SQL语句修改创建表

    1.创建表时定义唯一性约束 CREATE TABLE table_name ( column1 datatype null/not null, column2 datatype null/not nu ...

  9. GpsNet2020 车联网平台

    车联网产业是汽车.电子.信息通信.道路交通运输等行业深度融合的新型产业,是全球创新热点和未来发展制高点.车企通过部署车联网系统,为车主提供更好的出行服务体验,增加产品竞争力.依托华为云.边.端协同优势 ...

  10. python_4

    1.迭代器:通过iter()方法获得了list的迭代对象,然后就可以通过next()方法来访问list中的元素了,当容器中没有可访问元素时,会抛出StopIteration异常终止迭代器 data = ...