Commit ddf9a088 authored by 赵建伟's avatar 赵建伟

update jdbc pool

parent e04d3559
......@@ -10,7 +10,7 @@ public class SparkSqlOperator {
public static void main(String[] args) {
try {
Connection conn = JdbcConnectPool.getConnect();
Connection conn = JdbcConnectPool.getConnection();
PreparedStatement ps = conn.prepareStatement("select count(*) count from online.test");
ResultSet rs = ps.executeQuery();
while (rs.next()) {
......
......@@ -26,30 +26,18 @@ public class JdbcConnectPool {
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
for (int i = 0; i < Integer.valueOf(prop.getProperty("initSize")); i++) {
Connection connection = createConnect();
connList.add(connection);
}
}
/**
* 获取连接
*
* @return
*/
public static Connection getConnect() {
public static Connection getConnection() {
Connection connection = null;
if (connList.size() > 0) {
connection = connList.getFirst();
connList.removeFirst();
} else{
while(connList.size() < Integer.valueOf(prop.getProperty("maxSize"))){
connList.addLast(createConnect());
}
connection = getConnect();
connList.addLast(createConnect());
connection = getConnection();
}
requestCount ++;
logger.info("requestCount : {}",requestCount);
logger.info("requestCount : {}",++requestCount);
logger.info("connList size : {}",connList.size());
return connection;
}
......
package com.gmei.data.dqmp.pool;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.LinkedList;
import java.util.Properties;
public class JdbcConnectPoolBak {
private static final Logger logger = LoggerFactory.getLogger(JdbcConnectPoolBak.class);
private static Properties prop;
private static int requestCount = 0;
private static LinkedList<Connection> connList = new LinkedList<Connection>();
static {
prop = getProperties("jdbc.properties");
try {
Class.forName(prop.getProperty("driverClassName"));
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
for (int i = 0; i < Integer.valueOf(prop.getProperty("initSize")); i++) {
Connection connection = createConnect();
connList.add(connection);
}
}
/**
* 获取连接
*
* @return
*/
public static Connection getConnect00() {
Connection connection = null;
if (connList.size() > 0) {
connection = connList.getFirst();
connList.removeFirst();
} else{
while(connList.size() < Integer.valueOf(prop.getProperty("maxSize"))){
connList.addLast(createConnect());
}
connection = getConnect00();
}
requestCount ++;
logger.info("requestCount : {}",requestCount);
logger.info("connList size : {}",connList.size());
return connection;
}
public static Connection getConnection() {
Connection connection = null;
if (connList.size() > 0) {
connection = connList.getFirst();
connList.removeFirst();
} else{
connList.addLast(createConnect());
connection = getConnection();
}
logger.info("requestCount : {}",++requestCount);
logger.info("connList size : {}",connList.size());
return connection;
}
/**
* 创建连接
*
* @return
*/
private static Connection createConnect() {
Connection conn = null;
try {
conn = DriverManager.getConnection(
prop.getProperty("url"),
prop.getProperty("username"),
prop.getProperty("password"));
} catch (SQLException e) {
e.printStackTrace();
}
return conn;
}
/**
* 释放连接
*
* @param connection
*/
public static void releaseConnection(Connection connection) {
connList.addLast(connection);
}
/**
* 获取属性文件对象
*
* @param path
* @return
*/
private static Properties getProperties(String path) {
Properties properties = new Properties();
try {
InputStream inputStream = JdbcConnectPoolBak.class.getClassLoader().getResourceAsStream(path);
properties.load(inputStream);
inputStream.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return properties;
}
}
......@@ -184,7 +184,7 @@ public class CheckServiceImpl implements CheckService {
return tblResultCheckUnique;
}
try {
Connection conn = JdbcConnectPool.getConnect();
Connection conn = JdbcConnectPool.getConnection();
PreparedStatement ps = conn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
while (rs.next()) {
......@@ -221,7 +221,7 @@ public class CheckServiceImpl implements CheckService {
return tblResultCheckUnblank;
}
try {
Connection conn = JdbcConnectPool.getConnect();
Connection conn = JdbcConnectPool.getConnection();
PreparedStatement ps = conn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
while (rs.next()) {
......@@ -258,7 +258,7 @@ public class CheckServiceImpl implements CheckService {
return tblResultCheckRefer;
}
try {
Connection conn = JdbcConnectPool.getConnect();
Connection conn = JdbcConnectPool.getConnection();
PreparedStatement ps = conn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
while (rs.next()) {
......
......@@ -147,7 +147,7 @@ public class MonitorServiceImpl implements MonitorService {
return tblResultMonitorVolatility;
}
try {
Connection conn = JdbcConnectPool.getConnect();
Connection conn = JdbcConnectPool.getConnection();
PreparedStatement ps = conn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
while (rs.next()) {
......@@ -186,7 +186,7 @@ public class MonitorServiceImpl implements MonitorService {
return tblResultMonitorSpecial;
}
try {
Connection conn = JdbcConnectPool.getConnect();
Connection conn = JdbcConnectPool.getConnection();
PreparedStatement ps = conn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
while (rs.next()) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment