jdk1.5是否支持这样调用获取实例private DBConnectionPool connMgr = DBConnectionPool.getInstance();         /**
 * 引用数据库的唯一实例
 */
private static DBConnectionPool instance = new DBConnectionPool();

/**.
 * 返回唯一实例.如果是第一次调用此方法,则创建实例
 * 
 * @return DBConnectionPool 唯一实例
 */
public static DBConnectionPool getInstance() {
return instance;
}如果支持,为什么报错,我仔细检查过编译版本和导入的jdk包了,都是1.5。
Exception in thread "main" java.lang.UnsupportedClassVersionError: Bad version number in .class file
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:621)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
at cn.qtone.appserv.dbmanager.DBOperation.<init>(DBOperation.java:24)
at cn.qtone.appserv.dbmanager.Test.main(Test.java:6)是否我写的有问题,如果不是这样写,提供一个例子,谢谢。附源码:
package cn.qtone.appserv.dbmanager;import java.io.InputStream;
import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.util.Properties;
import org.apache.log4j.Logger;import sun.util.logging.resources.logging;import com.jolbox.bonecp.BoneCP;
import com.jolbox.bonecp.BoneCPConfig;
public class DBConnectionPool { private static Logger logger = Logger.getLogger(DBConnectionPool2.class); private static String poolName = "appServerPool"; // 连接池名字 private BoneCP ds = null; // 指向数据源 static {
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
} catch (Exception e) {
logger.error("加载sqlserver jdbc驱动失败!");
}
} /**
 * 建构函数私有以防止其它对象创建本类实例
 */
private DBConnectionPool() {
InputStream is = getClass().getResourceAsStream("/db.ini");
Properties dbProps = new Properties();
try {
dbProps.load(is);
} catch (Exception e) {
logger.warn("不能读取配置文件 db.ini,请确保db.ini在 CLASSPATH 路径中");
return;
} String url = dbProps.getProperty("url").trim();
if (url == null) {
logger.warn("没有为连接池" + poolName + "指定URL");
}
String userName = dbProps.getProperty("username").trim();
String password = dbProps.getProperty("password").trim();
int maxConnections = 0;
try {
maxConnections = Integer.parseInt(dbProps.getProperty(
"maxconnections").trim());
} catch (Exception e) {
} if (maxConnections <= 0)
maxConnections = 30; try {
// 设置连接池配置信息
BoneCPConfig config = new BoneCPConfig(); // 设置数据库的JDBC URL
config.setJdbcUrl(url); // 设置数据库用户名
config.setUsername(userName); // 设置数据库用户密码
config.setPassword(password); // 设置每60秒检查数据库中的空闲连接数
config.setIdleConnectionTestPeriod(60); // 设置连接空闲时间(分钟)
config.setIdleMaxAge(30); // 设置获取connection超时的时间(毫秒)
config.setConnectionTimeout(3000); // 设置分区,分区数为3
config.setPartitionCount(4); // 设置每个分区中的最小连接数
config.setMinConnectionsPerPartition(5); // 设置每个分区中的最大连接数
config.setMaxConnectionsPerPartition(maxConnections / 4); // 当连接池中的连接耗尽的时候,BoneCP一次同时获取的连接数
config.setAcquireIncrement(25); // 连接释放处理
config.setReleaseHelperThreads(4); // 设置数据库连接池
ds = new BoneCP(config); } catch (Exception e) {
logger.warn(new StringBuffer("无法通过URL:").append(url).append(
" 创建连接池 ").append(poolName).append(",请检查配置>>").append(
e.toString()));
} logger.debug("创建连接池 " + poolName + "结束"); } /**
 * 获得一个可用连接
 * 
 * @return Connection 可用连接或null
 */
public Connection getConnection() {
Connection con = null;
if (ds != null) {
try {
con = ds.getConnection();
} catch (Exception e) {
logger.warn(new StringBuffer("获取连接").append("失败>>").append(
e.toString()));
}
}
return con;
} /**
 * 关闭连接
 * 
 * @param Connection
 *            可用连接或null
 */
public void closeConnection(Connection con) {
if (con != null) {
try {
con.close();
con = null;
} catch (Exception e) {
logger.warn(new StringBuffer("关闭连接").append("失败>>").append(
e.toString()));
}
}
} /**
 * 关闭连接池
 */
public void stop() {
if (ds != null) {
try {
ds.shutdown();
ds = null;
} catch (Exception e) {
logger.warn(new StringBuffer("关闭连接池").append("失败>>").append(
e.toString()));
}
}
} /**
 * 启动连接池
 */
public void start() {
try {
new DBConnectionPool2();
} catch (Exception e) {
logger.warn(new StringBuffer("启动连接池").append("失败>>").append(
e.toString()));
}
} /**
 * 重启连接池
 */
public void restart() {
try {
stop();
start();
} catch (Exception e) {
logger.warn(new StringBuffer("重启连接池").append("失败>>").append(
e.toString()));
}
} /**
 * 引用数据库的唯一实例
 */
private static DBConnectionPool instance = new DBConnectionPool();
/**.
 * 返回唯一实例.如果是第一次调用此方法,则创建实例
 * 
 * @return DBConnectionPool 唯一实例
 */
public static DBConnectionPool getInstance() {
return instance;
}
}
测试main方法
package cn.qtone.appserv.dbmanager;
public class Test {
public static void main(String[] args) {
    DBConnectionPool db = DBConnectionPool.getInstance();
}
}会报上述错误。