jdbc连接公共方法
来源:互联网 发布:php imagejpeg 编辑:程序博客网 时间:2024/05/21 17:57
package com.jdbc.util;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.Statement;import javax.sql.DataSource;import org.apache.commons.dbcp.BasicDataSource;import org.apache.log4j.LogManager;import org.apache.log4j.Logger;public class JdbcUtil {private static Logger LOG = LogManager.getLogger(JdbcUtil.class);private static String driver = null;private static String uri = null;private static String username = null;private static String password = null;private static DataSource dataSource = null;static {Configuration conf = Configuration.getInstance();driver = conf.getString("db.driver", "com.mysql.jdbc.Driver");uri = conf.getString("db.uri", "");username = conf.getString("db.username", "");password = conf.getString("db.password", "");getDataSource();}private static void getDataSource() {BasicDataSource ds = new BasicDataSource();ds.setDriverClassName(driver);ds.setUsername(username);ds.setPassword(password);ds.setUrl(uri);ds.setMaxActive(30);ds.setMaxIdle(100);ds.setMaxWait(1000);dataSource = ds;}public static void releaseDataSource(DataSource ds){ BasicDataSource bds = (BasicDataSource) ds; if(bds != null)try{bds.close();}catch(Exception e){LOG.error("releaseDataSource :" + e);}}public static Connection getConnection(){try{Connection conn = dataSource.getConnection();return conn;}catch(Exception e){LOG.error("get connection :" + e);}return null;}public static void close(Connection c, Statement s, ResultSet r) {try {if (r != null)r.close();if (s != null)s.close();if (c != null)c.close();} catch (Exception e) {LOG.error("close connection:" + e);}}public static void close(Connection c, PreparedStatement s, ResultSet r) {try {if (r != null)r.close();if (s != null)s.close();if (c != null)c.close();} catch (Exception e) {LOG.error("close connection :" + e);}}public static void main(String args[]) throws Exception{Connection conn = getConnection();Statement s = conn.createStatement();ResultSet r = s.executeQuery("select cid from company");while (r.next()) {//System.out.println(r.getString("cid"));LOG.info(r.getString("cid"));}close(conn,s,r);}}
package com.jdbc.util;import java.io.FileInputStream;import java.io.InputStream;import java.util.Properties;public class Configuration extends Properties {private static final long serialVersionUID = 5044046358027224342L;private static Configuration instance = null;public static Configuration getInstance(){ if(instance == null){ synchronized (Configuration.class) {if(instance == null){instance = new Configuration(); }}} return instance; }public String getProperty(String key, String defaultValue) {String val = getProperty(key);return (val == null || val.isEmpty()) ? defaultValue : val;} public String getString(String name, String defaultValue) {return this.getProperty(name, defaultValue);}public int getInt(String name, int defaultValue) {String val = this.getProperty(name);return (val == null || val.isEmpty()) ? defaultValue : Integer.parseInt(val);}public long getLong(String name, long defaultValue) {String val = this.getProperty(name);return (val == null || val.isEmpty()) ? defaultValue : Integer.parseInt(val);}public float getFloat(String name, float defaultValue) {String val = this.getProperty(name);return (val == null || val.isEmpty()) ? defaultValue : Float.parseFloat(val);}public double getDouble(String name, double defaultValue) {String val = this.getProperty(name);return (val == null || val.isEmpty()) ? defaultValue : Double.parseDouble(val);}public byte getByte(String name, byte defaultValue) {String val = this.getProperty(name);return (val == null || val.isEmpty()) ? defaultValue : Byte.parseByte(val);}public Configuration() {InputStream in = ClassLoader.getSystemClassLoader().getResourceAsStream("config.xml");try {this.loadFromXML(in);in.close();} catch (Exception e) {LogUtil.e(Configuration.class, e);}}public Configuration(String path) throws Exception {InputStream in = new FileInputStream(path+"config.xml");try {this.loadFromXML(in);in.close();} catch (Exception e) {LogUtil.e(Configuration.class, e);}}public static void main(String[] args) throws Exception {String path = Configuration.getInstance().getString("conf.dir", "/home/html/webim/src/lib/");while(true){Configuration config = new Configuration(path);System.out.println(config.getString("proxy.downstream.list", ""));Thread.sleep(3000);}}}
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd"><properties><entry key="db.driver">com.mysql.jdbc.Driver</entry><entry key="db.uri">jdbc:mysql://192.168.0.243:3306/webim?characterEncoding=UTF-8&autoReconnect=true</entry><entry key="db.username">root</entry><entry key="db.password">123456</entry></properties>
#设置日志级别log4j.rootLogger = E,D,C#输出到控制台log4j.appender.C=org.apache.log4j.ConsoleAppenderlog4j.appender.C.Target=System.outlog4j.appender.C.layout=org.apache.log4j.PatternLayoutlog4j.appender.C.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} [%c]-[%p] %m%n#输出到日志文件【调试信息】log4j.appender.D=org.apache.log4j.DailyRollingFileAppenderlog4j.appender.D.File=D:/home/java/text/logs/debug.loglog4j.appender.D.Append=truelog4j.appender.D.Threshold=DEBUGlog4j.appender.D.layout=org.apache.log4j.PatternLayoutlog4j.appender.D.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%t:%r] - [%p] %m%n#输出到日志文件【错误信息】log4j.appender.E=org.apache.log4j.DailyRollingFileAppenderlog4j.appender.E.File=D:/home/java/text/logs/error.loglog4j.appender.E.Append=truelog4j.appender.E.Threshold=ERRORlog4j.appender.E.layout=org.apache.log4j.PatternLayoutlog4j.appender.E.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%t:%r] - [%p] %m%n %x - %m%n## 屏蔽其他包(框架)的输出日志 log4j.logger.io.netty=OFF
阅读全文
0 0
- jdbc连接公共方法
- JDBC连接MySQL公共类
- jdbc 连接SQL2005方法
- 常用JDBC连接方法
- JDBC连接数据库方法
- jdbc连接数据库方法
- jdbc方法连接数据库
- Jdbc封装公共CRUD方法,十分简便
- jdbc公共操作之建立连接和释放资源
- JDBC连接各种数据库方法
- JDBC 连接各种数据库方法
- JDBC连接各种数据库方法
- JDBC连接各种数据库方法
- 创建JDBC连接的方法
- 常用数据库JDBC连接方法
- 常用JDBC连接数据库方法
- JDBC连接各种数据库方法
- 常用JDBC连接数据库方法
- Android开发gridview基本的adapter
- JAVA线程中join方法可以强占CPU资源直至执行结束
- Jquery基础编程1—登陆验证
- file、https、ftp协议
- python 结巴分词(jieba)学习
- jdbc连接公共方法
- 1.单例模式
- Linux-文件系统及vim编辑器
- Linux内核调试之Oops信息
- 4. ATF(ARM Trusted firmware)启动---bl2到bl31的跳转
- Spring+Dubbo+TestNG接口测试
- SerializeField等Unity内的小用法
- C语言编译过程
- ssh不解的问题总结