三个.java 文件DbUtils.java连接数据库的, Contact.java封装表contcat, ContactDao.java封装对表的操作,单独编译 DbUtils.java Contact.java能通过 .
ContactDao.java报错:
C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\ww\WEB-INF\src>ja
vac ContactDao.java
ContactDao.java:18: cannot find symbol
symbol  : class Contact
location: class anni.ContactDao
    public List<Contact> getAll() throws Exception {
                ^
ContactDao.java:52: cannot find symbol
symbol  : class Contact
location: class anni.ContactDao
    public Contact get(Long id) throws Exception  {
           ^
ContactDao.java:86: cannot find symbol
symbol  : class Contact
location: class anni.ContactDao
    public void save(Contact contact) throws Exception  {
                     ^
ContactDao.java:110: cannot find symbol
symbol  : class Contact
location: class anni.ContactDao
    public void update(Contact contact) throws Exception  {
                       ^
ContactDao.java:23: cannot find symbol
symbol  : class Contact
location: class anni.ContactDao
        List<Contact> list = new ArrayList<Contact>();
             ^
ContactDao.java:23: cannot find symbol
symbol  : class Contact
location: class anni.ContactDao
        List<Contact> list = new ArrayList<Contact>();
                                           ^
ContactDao.java:25: cannot find symbol
symbol  : variable DbUtils
location: class anni.ContactDao
            conn = DbUtils.getConn();
                   ^
ContactDao.java:30: cannot find symbol
symbol  : class Contact
location: class anni.ContactDao
                Contact contact = new Contact();
                ^
ContactDao.java:30: cannot find symbol
symbol  : class Contact
location: class anni.ContactDao
                Contact contact = new Contact();
                                      ^
ContactDao.java:41: cannot find symbol
symbol  : variable DbUtils
location: class anni.ContactDao
            DbUtils.close(rs, state, conn);
            ^
ContactDao.java:57: cannot find symbol
symbol  : class Contact
location: class anni.ContactDao
        Contact contact = null;
        ^
ContactDao.java:59: cannot find symbol
symbol  : variable DbUtils
location: class anni.ContactDao
            conn = DbUtils.getConn();
                   ^
ContactDao.java:66: cannot find symbol
symbol  : class Contact
location: class anni.ContactDao
                contact = new Contact();
                              ^
ContactDao.java:76: cannot find symbol
symbol  : variable DbUtils
location: class anni.ContactDao
            DbUtils.close(rs, state, conn);
            ^
ContactDao.java:91: cannot find symbol
symbol  : variable DbUtils
location: class anni.ContactDao
            conn = DbUtils.getConn();一下是他们三个文件
package anni;import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;public class DbUtils {
    static {
        try {
            Class.forName("org.hsqldb.jdbcDriver");
        } catch (ClassNotFoundException ex) {
            System.err.println(ex);
        }
    }    public static Connection getConn() {
        try {
            return DriverManager.getConnection("jdbc:hsqldb:res:/hsqldb/contact", "sa", "");
        } catch (SQLException ex) {
            System.err.println(ex);
            return null;
        }
    }..............package anni;public class Contact {
    private Long id;
    private String username;
    private String sex;
    private String email;
    private String qq;
    private String descn;    public Contact() {
    }    public Long getId() {
        return id;
    }
    public void setId(Long id) {
        this.id = id;
    }    public String getUsername() {
        return username;
    }
    public void setUsername(String username) {
        this.username = username;
    }    public String getSex() {
        return sex;..............package anni;import java.util.ArrayList;
import java.util.List;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;public class ContactDao {    /**
     * 获得所有联系簿.
     *
     * @return contact列表
     */
    public List<Contact> getAll() throws Exception {
        Connection conn = null;
        Statement state = null;
        ResultSet rs = null;        List<Contact> list = new ArrayList<Contact>();
        try {
            conn = DbUtils.getConn();
            state = conn.createStatement();
            rs = state.executeQuery("select * from contact");......
我搞了一天都没搞明白,希望能得到帮助!  List<Contact> 是jdk1.5支持的泛型,我的Jdk是1.5,和这个有关吗?

解决方案 »

  1.   

    在anni所在的目录下编译: javac anni.*.java
      

  2.   

    如果你是在eclipse 下编译的要设置一下eclipse的编译水平也为1.5才行
    你编译工程类的时候编译level太低了,设置的高一些
    右键点工程->选属性->java Compiler->选中enable project specific setting ->
    ->compiler compliance level ->选5.0,保存退出,重新编译工程并部署
      

  3.   

    还是报错:C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\ww\WEB-INF\classe
    s\anni>javac *.java
    ContactDao.java:25: cannot find symbol
    symbol  : variable DbUtils
    location: class anni.ContactDao
                conn = DbUtils.getConn();
                       ^
    ContactDao.java:41: cannot find symbol
    symbol  : variable DbUtils
    location: class anni.ContactDao
                DbUtils.close(rs, state, conn);
                ^                 
      

  4.   

    路径有误!
    java 文件不要放到 WEB-INF 下面去。
      

  5.   

    如果你是在eclipse 下编译的要设置一下eclipse的编译水平也为1.5才行 
    你编译工程类的时候编译level太低了,设置的高一些 
    右键点工程->选属性->java Compiler->选中enable project specific setting -> 
    ->compiler compliance level ->选5.0,保存退出,重新编译工程并部署
      

  6.   

    WEB-INF下怎么放java?问题就出在这里。
    WEB-INF/classes/anni/*.class
    你最好用IDE部署一下。
      

  7.   

    看你的目录下有没有生成了DbUtils.class这个文件
        我把你的三个文件弄过来能通过编译
    我的是这样的:
        文件E:\anni下
     E:\anni javac *.java
    能通过编译
      

  8.   

    用ECLIPSE会自动编译的.难道LZ用的记事本?