BaseDao类:

package dao;

import java.sql.*;

public class BaseDao {
private static final String driver = "oracle.jdbc.driver.OracleDriver";
private static final String url = "jdbc:oracle:thin:@localhost:1521:ACCP";
private static final String uid = "scott";
private static final String pwd = "scott"; private static Connection con;
private static PreparedStatement pstmt; /**
* 建立连接对象
* @return
*/
public static Connection getConnection() {
try {
Class.forName(driver);
con = DriverManager.getConnection(url, uid, pwd);
return con;
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
return null;
} /**
* 关闭对象
* @param rs 数据集对象
*/
public static void Close(ResultSet rs) {
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if (pstmt != null) {
try {
pstmt.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if (con != null) {
try {
con.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
} /**
* 执行查询操作
* @param sql 查询的sql语句
* @param paras 查询的参数 Object[]数组
* @return 结果集
*/
public static ResultSet ExecuteQuery(String sql, Object[] paras) {
getConnection();
try {
pstmt = con.prepareStatement(sql);
if (paras != null && paras.length > 0) {
for (int i = 0; i < paras.length; i++) {
pstmt.setObject(i + 1, paras[i]);
}
}
ResultSet rs = pstmt.executeQuery(); return rs; } catch (SQLException e) {
e.printStackTrace();
return null;
}
} /**
* 执行增加、修改、删除操作
* @param sql 操作的sql语句
* @param paras 操作的参数
* @return 受影响的行数
*/
public static int ExecuteUpdate(String sql, Object[] paras) {
getConnection();
try {
pstmt = con.prepareStatement(sql);
if (paras != null && paras.length > 0) {
for (int i = 0; i < paras.length; i++) {
pstmt.setObject(i + 1, paras[i]);
}
}
int rs = pstmt.executeUpdate(); return rs; } catch (SQLException e) {
e.printStackTrace();
return -1;
}
}
}

调用:

package dao;

import java.sql.*;
import java.util.ArrayList;
import java.util.List; import entities.Emp; public class empDao { public List<Emp> GetEmpList() {
ResultSet rs = BaseDao.ExecuteQuery("select * from emp", null); try {
List<Emp> list = new ArrayList<Emp>();
while (rs.next()) {
Emp e = new Emp();
e.setEmpno(rs.getInt("empno"));
e.setEname(rs.getString("ename"));
e.setJob(rs.getString("job"));
e.setMgr(rs.getInt("mgr"));
e.setHiredate(rs.getDate("hiredate"));
e.setSal(rs.getDouble("sal"));
e.setComm(rs.getDouble("comm"));
e.setDeptno(rs.getInt("deptno"));
list.add(e);
}
return list;
} catch (SQLException e) {
e.printStackTrace();
return null;
} finally {
BaseDao.Close(rs);
}
}
}

Java BaseDao的更多相关文章

  1. Spring + SpringMVC + MyBatis

    1.需求说明实现用户通过数据库验证登录需求,采用Myeclipse+Tomcat 6.0+Mysql 5.0+JDK 1.6 2.数据库表开发所用是Mysql数据库,只建立单张用户表T_USER,表结 ...

  2. spring+springmvc+ibatis整合注解方式实例【转】

    源自-----> http://shaohan126448.iteye.com/blog/2033563 (1)web.xml文件(Tomcat使用) 服务器根据配置内容初始化spring框架, ...

  3. spring+springmvc+ibatis整合注解方式实例

    需求说明 实现用户通过数据库验证登录需求.採用 Myeclipse+Tomcat 6.0+Mysql 5.0+JDK 1.6 2.数据库表 开发所用是Mysql数据库,仅仅建立单张用户表T_USER, ...

  4. SSH框架整合2

    ===========================================web.xml================================================== ...

  5. Spark案例分析

    一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...

  6. java项目常用 BaseDao BaseService

    java项目常用 BaseDao BaseService IBaseDao 1 package com.glht.sim.dao; 2 3  import java.util.List; 4 5 6 ...

  7. java 利用注解实现BaseDao 增删查改

    第一步,编写两个注解类,用于表明实体类对应的表名及字段. TableInfo.java 此注解用于标注表名及主键名 import static java.lang.annotation.Element ...

  8. java的SSH的baseDao,巧用泛型

    BaseDao接口: import java.util.List; public interface BaseDao<T,PK> { public void add(T t); publi ...

  9. 封装basedao及动态创建新类型的java数组

    package com.huawei.base; import java.io.Serializable;import java.lang.reflect.Array;import java.lang ...

随机推荐

  1. root权限

    点击左侧终端标 步骤阅读 2 出现命令提示符 3 首先输入:sudo passwd root(设置root密码) 4 输入当前系统的账户密码(账户:admin-pc的密码) 5 输入新的root密码, ...

  2. visual studio 2005 win7 64位版下载

    http://www.121down.com/soft/softview-19659.html 软件标签: visual studio visual studio 2005是由微软推出的一款基于.ne ...

  3. python3使用urllib获取set-cookies

    #!/usr/bin/env python # encoding: utf-8 import urllib.request from collections import defaultdict re ...

  4. Xdebug安装对应版本与配置

    Xdebug安装地址https://xdebug.org/download.php,进入下载页面后点击custom installation instructions,可以找到适合的Xdebug版本. ...

  5. 6.DataFrame(列运算)

    from odps import ODPS from odps.df import DataFrame o = ODPS(access_id="LTAIBb3aOF3ghjek", ...

  6. 你不一定知道的、并没有什么卵用的一些python库

    1. delorean,用来处理时间的库 import datetime import pytz # 一般情况下,我们想表示时间的话 est = pytz.timezone("Asia/Sh ...

  7. 关于CI框架加入sphinx官方API接口文件的时候,需要注意的问题

    从sphinx下载的官方文件sphinxapi.php中类名为class SphinxClient 加入到CI框架,放在system/libraries/下,由于需要遵从CI框架libraries类名 ...

  8. itatis中的数据库配置

    <!--com.microsoft.sqlserver.jdbc.SQLServerDriver --> <property name="JDBC.Driver" ...

  9. PyCharm配置gitHub远程仓储

    在一个团队里,编码不能是闭门造车,git学起来: 1. GIT的基本介绍.安装及使用教程- @廖雪峰 2. pycharm配置github远程仓储- @谢小小XH

  10. Python的并发并行[0] -> 基本概念

    基本概念 / Basic Concept  快速跳转 进程 / Process 线程 / Thread 协程 / Coroutine 全局解释器锁 / Global Interpreter Lock ...