• 手动建立数据库连接的BaseDAO


    package com.chinasoft.julong.dao;
    
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    
    public class BaseDAO {
        private Connection conn;
        private ResultSet rst;
        private PreparedStatement  pst;
        
        String className="oracle.jdbc.OracleDriver";
        String useName="oracle";
        String password="oracle";
        String url="jdbc:oracle:thin:@127.0.0.1:1521:orcl";
        
        //加载数据库驱动程序
        public BaseDAO(){
            try {
                Class.forName(className);
            } catch (ClassNotFoundException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
        //建立数据库连接
        public void getConnection(){
            try {
                conn=DriverManager.getConnection(url,useName,password);
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
        
        
        //不带参数的有查询结果集的函数(查询)
        public ResultSet ExecuteQuery(String sql){
            return ExecuteQuery(sql,new Object[]{});
        }
        
        //带参数的有查询结果集的函数(查询)
        public ResultSet ExecuteQuery(String sql,Object[] arry){
            getConnection();
            try {
                pst=conn.prepareStatement(sql);
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            for(int i=0;i<arry.length;i++){
                try {
                    pst.setObject(i+1, arry[i]);
                } catch (SQLException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }
            try {
                rst=pst.executeQuery();
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            return rst;
        }
        
        
        //不带参数的更新函数(增加,修改,删除)
        public int ExecuteUpdate(String sql){
            return ExecuteUpdate(sql,new Object[]{});
        }
        //带参数的更新函数(增加,修改,删除)
        public int ExecuteUpdate(String sql,Object[] arry){
            getConnection();
            int result=0;
            try {
                pst=conn.prepareStatement(sql);
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            for(int i=0;i<arry.length;i++){
                try {
                    pst.setObject(i+1, arry[i]);
                } catch (SQLException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }
            try {
                result=pst.executeUpdate();
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            Closed();
            return result;
        }
        
        //关闭数据库操作对象
        public void Closed(){
            try {
                if(rst!=null&&!rst.isClosed()){
                    rst.close();
                }
                if(!pst.isClosed()){
                    pst.close();
                }
                if(!conn.isClosed()){
                    conn.close();
                }
                } catch (SQLException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
            }
        }
    
    }
    View Code
  • 相关阅读:
    你欠我的幸福,怎么弥补
    爱,请你走开
    一生为你
    爱你到底
    粒子滤波简介(转载)
    关于小波变换和Gabor变换的一些知识!
    基于Opencv的MeanShift跟踪算法实现
    opencv学习网页
    基于OpenCV库的Gabor滤波器的实现
    Mean Shift算法(CamShift)
  • 原文地址:https://www.cnblogs.com/feitianshaoxai/p/5855305.html
Copyright © 2020-2023  润新知