zoukankan      html  css  js  c++  java
  • 数据库连接池报错

    在linux上,日志经常打印一个错误:

    Initial Context fail, result:Name java: is not bound in this Context
    java.lang.RuntimeException: java.lang.NullPointerException
            at com.hk_life.util.DataBaseUtil.getConnection(DataBaseUtil.java:38)
            at com.hk_life.util.JdbcTemplate.query(JdbcTemplate.java:171)
            at com.hk_life.util.JdbcTemplate.query(JdbcTemplate.java:65)
            at com.hk_life.dao.ProjectNodeDao.queryAllNode(ProjectNodeDao.java:13)
            at com.hk_life.task.JdAssetSyncThreadTask.execute(JdAssetSyncThreadTask.java:38)
            at com.hk_life.task.CommonTask.run(CommonTask.java:14)
            at java.util.TimerThread.mainLoop(Timer.java:512)
            at java.util.TimerThread.run(Timer.java:462)
    Caused by: java.lang.NullPointerException

    对应的代码段:

        public Connection getConnection() throws SQLException, NamingException {
            // 初始化查找命名空间
            if (getDataSource.envContext == null) {
                try {
                    Context initContext = new InitialContext();
                    getDataSource.envContext = (Context) initContext
                            .lookup("java:/comp/env");
                } catch (Exception e) {
                    System.out.println("Initial Context fail, result:"
                            + e.getMessage());
                }
            }
            // 找到DataSource
            DataSource ds = (DataSource) getDataSource.envContext
                    .lookup("jdbc/dbconnectionpool");
            Connection c = ds.getConnection();
            //Connection c=DataBaseUtil.getConnection();
            return c;
        }

    经查询,需要将"java:/comp/env"改为"java:comp/env"  ,即去掉前面的斜杠“/”

  • 相关阅读:
    java学习——内部类、匿名内部类
    Java中接口之间的继承
    Settings
    POM
    Maven指令
    Maven生命周期
    内部类
    Modules
    Simple Maven Project
    Maven概述
  • 原文地址:https://www.cnblogs.com/andong2015/p/5286125.html
Copyright © 2011-2022 走看看