设为首页 加入收藏

TOP

【代码总结● Swing中的一些操作与设置】(四)
2019-09-17 17:56:06 】 浏览:86
Tags:代码 总结 Swing 一些 操作 设置
on getConnection() { Connection conn = threadLocal.get();//从线程局部变量map中取出连接 if(null == conn) {//首次获取连接为null。要读取配置文件获取连接 try { conn =dataSource.getConnection();//获取连接 threadLocal.set(conn);//保存连接到局部变量中 } catch (SQLException e) { e.printStackTrace(); } } return conn; } /** * 关闭连接 * @param conn */ public static void closeConnection(Connection conn) { if(null != conn) { threadLocal.remove();//先从局部变量中删除 try { conn.close();//然后再关闭自身连接 } catch (SQLException e) { e.printStackTrace(); } } } }

其中配置文件为:(database.properties)
driverClassName=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/db_market
username=root
password=cc321321

JDBC管理类

package pers.jason.market.util;


import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import pers.jason.market.rowmapper.RowMapper;

/** * JDBC管理类 * @author Administrator * */
public  final class JDBCTemplate {  
    /** * 增删改方法 * @param sql * @param param * @return * @throws SQLException */
    public static int executeUpdate(String sql,Object ...param) {
        int rows=-1;
        Connection conn=JDBCUtil.getConnection();
        try {
            PreparedStatement ps=conn.prepareStatement(sql);
            if(null!=param && param.length>0){
                for (int i = 0; i < param.length; i++) {
                    ps.setObject((i+1), param[i]);
                }

            }
            rows=ps.executeUpdate();
            close(null,ps);
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return rows;

    }

    /** * 查询方法 * @param sql * @param rowmapper * @param param * @return * @throws SQLException */

    public static   List<Object> executeQuery(String sql,RowMapper rowmapper,Object ...param) throws SQLException {
        List<Object> list = new ArrayList<Object>();
        Connection conn = JDBCUtil.getConnection();//获取连接
        PreparedStatement ps = conn.prepareStatement(sql);
        if(null != param && param.length>0) {
            for (int i = 0; i < param.length; i++) {
                ps.setObject((i+1), param[i]);// 占位符从1开始 下标从0开始
            }
        }
        System.out.println("JDBC 中PS: " + ps);                                         //测试
        ResultSet rs = ps.executeQuery();
        while(rs.next()) {
            Object obj = rowmapper.getObjectMapper(rs);
            list.add(obj);
        }
        close(rs,ps);
        return list;
    }

    private static void close(ResultSet rs,PreparedStatement ps) throws SQLException {
        if(null != rs) {
            rs.close();
        }
        if(null != ps) {
            ps.close();
        }
    }

}
首页 上一页 1 2 3 4 下一页 尾页 4/4/4
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇再探motan 下一篇【中间件】Redis 实战之主从复制..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目