一个连接池的例子(来自JIVE)(2)

//文件:DbConnectionDefaultPool.java的第二部分
        /**
         * Housekeeping thread.  Runs in the background with low CPU overhead.
         * Connections are checked for warnings and closure and are periodically
         * restarted.
         * This thread is a catchall for corrupted
         * connections and prevents the buildup of open cursors. (Open cursors
         * result when the application fails to close a Statement).
         * This method acts as fault tolerance for bad connection/statement programming.
         */
        public void run() {
            boolean forever = true;
            Statement stmt=null;
            String currCatalog=null;
            while(forever) {
                // Make sure the log file is the one this instance opened
                // If not, clean it up!
                try {
                    BufferedReader in = new BufferedReader(new

时间: 2024-10-05 19:30:40

一个连接池的例子(来自JIVE)(2)的相关文章

一个连接池的例子(说明)

这个连接池是直接从JIVE中取出来的,进行了一下修改,使得连接参数直接在程序中设定而不是从属性文件中读取. 用法:先设定自己的连接参数,在DbConnectionDefaultPool.java文件的loadProperties方法中.注意你也需要设定连接池的log文件的存放位置. String driver="org.gjt.mm.mysql.Driver";//这是使用的JDBC驱动String server="jdbc:mysql://192.100.100.1/qin

一个连接池的例子(来自JIVE)(1)

//文件:DbConnectionDefaultPool.java的第一部分//请注意看里面注明的一处需要修改连接参数的地方package com.qingtuo.db.pool;import java.sql.*;import java.util.*;import java.io.*;import java.text.*;import java.util.Date;/** * Default Jive connection provider. It uses the excellent con

一个连接池的例子(来自JIVE)(6)

//文件:PropertyManager.java //这个类其实没什么用了,可以去掉,但需要去掉前面几个类中对这个类的引用.package com.qingtuo.db.pool; import java.util.*;import java.io.*; /** * Manages properties for the entire Jive system. Properties are merely * pieces of information that need to be saved

一个连接池的例子(来自JIVE)(5)

//文件:DbConnectionProvider.java package com.qingtuo.db.pool; import java.sql.*;import java.util.*; public abstract class DbConnectionProvider {     /** Dummy values. Override in subclasses. **/    private static final String NAME = "";    private

一个连接池的例子(来自JIVE)(4)

//文件:DbConnectionManager.javapackage com.qingtuo.db.pool;import java.sql.*;import java.io.*;import java.util.*;/** * Central manager of database connections. */public class DbConnectionManager {    private static DbConnectionProvider connectionProvid

一个连接池的例子(来自JIVE)(3)

//文件:DbConnectionDefaultPool.java的第三部分        /**         * Returns the age of a connection -- the time since it was handed out to         * an application.         */        public long getAge(Connection conn) { // Returns the age of the connection

一个连接池的例子 (一)

//文件:DbConnectionDefaultPool.java的第一部分 //请注意看里面注明的一处需要修改连接参数的地方package com.qingtuo.db.pool; import java.sql.*;import java.util.*;import java.io.*;import java.text.*;import java.util.Date; /** * Default Jive connection provider. It uses the excellent

一个连接池的例子 (二)

        /**         * This method hands out the connections in round-robin order.         * This prevents a faulty connection from locking         * up an application entirely.  A browser 'refresh' will         * get the next connection while the fau

java 需要做一个连接池。但是不是数据库的,而是类似于一个接口(或者IP地址)

问题描述 java 需要做一个连接池.但是不是数据库的,而是类似于一个接口(或者IP地址) 具体场景如下: 对方提供多个计算服务器供我来调用,计算服务器只能同时计算2个任务. 现在我需要将计算服务器做成可以配置的,然后将任务排队.根据先进先出的原则. 如果所有服务器都在计算任务了.剩下的任务就需要排队了.而计算完成后,在去任务池中取任务.直到任务池的所有任务都处理玩了. 解决方案 使用JDK的线程池[Executors#newFixedThreadPool(2) ],同时并行两个任务,其他的都在