当前位置:  技术问答>java相关

为什么同一包下的类不能访问??在线等

    来源: 互联网  发布时间:2015-08-20

    本文导语:  为什么同一包下的类不能访问?? 我有同一目录下的两个类,其中一个类(ConnectionPool.java)已成功 编译成class,当我编译另一个(DBInitServlet.java)时出现以下错误提示: D:tomcatwebappsmytestWEB-INFclassescomtonytandbutil>javac DBInit...

为什么同一包下的类不能访问??

我有同一目录下的两个类,其中一个类(ConnectionPool.java)已成功
编译成class,当我编译另一个(DBInitServlet.java)时出现以下错误提示:
D:tomcatwebappsmytestWEB-INFclassescomtonytandbutil>javac DBInitServlet
.java
DBInitServlet.java:31: cannot resolve symbol
symbol  : variable ConnectionPool
location: class com.tonytan.db.util.DBInitServlet
      ConnectionPool.init(ds);
      ^
1 error

我的路径如下:
classpath=.;D:jdklib;d:jdkjrelibrt.jar;d:jdkmyjarjdbc2_0-stdext.jar;d:jdkmyjarstruts.jar;d:jdkmyjarmm.mysql-2.0.4-bin.jar;d:jdkmyjarservlet.jar
我的两个程序如下:
一、ConnectionPool.java

package com.tonytan.db.util;

import java.sql.SQLException;
import java.sql.Connection;
import javax.sql.DataSource;
//import java.sql.*;
//import javax.sql.*;


public class ConnectionPool {

  private DataSource ds;

  private static ConnectionPool mySelf;

  private ConnectionPool(DataSource ds) {
    this.ds = ds;
  }

  public static void init(DataSource ds) {
    mySelf = new ConnectionPool(ds);
  }

  public static ConnectionPool getInstance() {

    if (mySelf == null) {
      throw new IllegalStateException("Pool not initialized.");
    }
    return mySelf;

  }

  public Connection getConnection() throws SQLException {
    return ds.getConnection();
  }

}

二、DBInitServlet.java

package com.tonytan.db.util;

import javax.servlet.http.HttpServlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;

import java.sql.SQLException;
import java.sql.Connection;
import javax.sql.DataSource;

import org.apache.struts.util.GenericDataSource;

public class DBInitServlet extends HttpServlet {

  public void init(ServletConfig config) throws ServletException {

    super.init(config);

    try {

      GenericDataSource ds = new GenericDataSource();

      ds.setDriverClass(getInitParameter("driverClass"));
      ds.setUrl(getInitParameter("jdbcURL"));
      ds.setMinCount(Integer.parseInt(getInitParameter("minCount")));
      ds.setMaxCount(Integer.parseInt(getInitParameter("maxCount")));
      ds.setAutoCommit(false);

      ds.open();

      ConnectionPool.init(ds);

    } catch (SQLException e) {
      e.printStackTrace();
      throw new ServletException("Unable to open datasource.");
    }

  }

}

按道理DBInitServlet应该能访问ConnectionPool的呀,我哪方面做错了???


|
add "D:tomcatwebappsmytestWEB-INFclasses" into your CLASSPATH

    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 疯了,一包含#include <vamlloc.h>, 就编译错误!


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3