问题描述
我使用的weblogic服务器在java中查看数据库连接池的大小,已连接数,未连接数等,有什么方法(1)第一种怎么查看InitialContext ic = new InitialContext();DataSource ds = (DataSource)ic.lookup(JNDIName);ds没有对应的方法(2)第二种怎么查看 Context initCtx = new InitialContext(); BasicDataSource bds = (BasicDataSource)initCtx.lookup("java:comp/env/jdbc/afunms"); initCtx.close(); bds.getConnection(); System.out.println("当前连接数=" + bds.getNumActive());报错java.lang.ClassCastException: weblogic.jdbc.common.internal.RmiDataSource 问题补充:beneo 写道
解决方案
明白了,你那个是rmiDatasoruce,是被rmi给代理过的,所以不存在这个class你别心急,你看玩玩jconsole,看看有没有你说的connection链接数
解决方案二:
引用我用的MyEclipse8.5,但是我怎么也找不到RmiDataSource在哪里 它当然没有,这是weblogic的,在weblogic容器的lib中找得到。
解决方案三:
mbean这个东西,你得学习jmx,看看jmx toturial就能知道怎么使用。我想说的是,如果希望快速解决问题的话,还是cast to RmiDataSource这个类比较实用提高的话,可以弄mbean你的IDE是不是eclipse??
解决方案四:
我觉得langshao说的思路不错jconsole在你的%JAVA_HOME%/bin目录下你双击点开,就能用了用法很简单,再框框里面找java程度就好了
解决方案五:
引用RmiDataSource类是哪个jar包中的啊?找不到怎么使用啊weblogic.jdbc.common.internal.RmiDataSourceweblogic的包,在weblogic中找找。
解决方案六:
jsonsole的话,你可以google然后链接到weblogic,就可以看mbean链接上去就能看到此外你的jar里肯定有weblogic.jdbc.common.internal.RmiDataSource你在eclipse里面用ctrl + shift + T 来寻找一下RmiDataSource
解决方案七:
Context initCtx = new InitialContext(); RmiDataSource bds = (RmiDataSource)initCtx.lookup("java:comp/env/jdbc/afunms"); initCtx.close(); bds.getConnection(); System.out.println("当前连接数=" + bds.getNumActive());
解决方案八:
你先用jconsole链接上去看看有没有mbean在里面,如果有mbean的话,一切都很简单