码迷,mamicode.com
首页 > 其他好文 > 详细

通过反射获取DataSource里数据源的账号密码

时间:2018-10-30 13:15:55      阅读:336      评论:0      收藏:0      [点我收藏+]

标签:int   ext   text   trace   rac   method   密码   eth   sql   

public Connection getDbConnection()
    {
        Connection conn = null;
        // 获得连接
        DataSource ds = null;
        try
        {
            Context ctx = new InitialContext();
            ds = (DataSource) ctx.lookup("java:comp/env/PCMSDB");
           //ds = (DataSource) ctx.lookup("PCMSJN");// weblogic环境配置数据源
            Class c = ds.getClass();
            //Object invokeTest = c.newInstance();
            Method getPassword = c.getMethod("getPassword", null);
            Method getUsername = c.getMethod("getUsername", null);
            
            Object pwd = getPassword.invoke(ds, null);
            Object username = getUsername.invoke(ds, null);
            //测试输出
            System.out.println("getDbConnection pwd:"+pwd.toString());
            System.out.println("getDbConnection username:"+username.toString());
        }
        catch (Exception e)
        {
            System.out.println("getDbConnection Exception "+e.getMessage());
            e.printStackTrace();
        }
        try
        {
            conn = ds.getConnection();
        }
        catch (SQLException e)        
        {            
            System.out.println("getDbConnection SQLException "+e.getMessage());
        }
        return conn;

    }

 

通过反射获取DataSource里数据源的账号密码

标签:int   ext   text   trace   rac   method   密码   eth   sql   

原文地址:https://www.cnblogs.com/penghq/p/9876052.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!