日期:2014-05-18  浏览次数:20675 次

麻烦高手帮我看下 用JAVA编译不过去!!
package   bean.js;
import   java.sql.*;

public   class   UserRegist
{
    private   UserInfo   userinfo;
    private   Connection   con;
    String   sDBDriver= "sun.jdbc.odbc.JdbcOdbcDriver ";
    String   sConnStr= "jdbc:odbc:sun ";
    //数据库连接
    public   UserRegist()
    {
  //连接数据库
      try{
            Class.forName( "sDBDriver ");
            }
      catch(ClassNotFoundException   e)   {
      System.err.println( "UserRegist(): "+e.getMessage());
      }
}
    //设置待注册的用户信息
    public   void   setUserInfo(UserInfo   userinfo)
    {
        this.UserInfo=userinfo;
}
    //进行注册
    public   void   regist()throws   Exception
    {
        String   reg= "insert   into   UserInfo   values(?,?) ";

try
{
  PreparedStatement   pstmt=con.prepareStatement(reg);
  //这是一个预处理语句
  pstmt.setString(1,UserInfo.getuserid());
  pstmt.setString(2,UserInfo.getuserpassword());
  //执行更新
  pstmt.executeUpdate();
}
  catch(Exception   e)
  {
      e.printStackTrace();
            throw   e;
    }
    }
}

报错:
UserRegist.java:6:   找不到符号
符号:类   UserInfo
位置:类   bean.js.UserRegist
private   UserInfo   userinfo;
...
..都是找不到符号的错误

高手帮忙纠正下   谢谢


------解决方案--------------------
package bean.js;
import java.sql.*;
import bean.js.UserRegist;
最上面改成这样
------解决方案--------------------
sun.jdbc.odbc.JdbcOdbcDriver把这个包放到tomcat/common/lib下
------解决方案--------------------
public void setUserInfo(UserInfo userinfo)
{
this.UserInfo=userinfo;
}
还有
pstmt.setString(1,UserInfo.getuserid());
pstmt.setString(2,UserInfo.getuserpassword());
你这个UserInfo不对吧,你前面的声明是
private UserInfo userinfo;
我觉得这里应该是用userinfo才对,java是区分大小写的;UserInfo 是类型,userinfo才是对象,不知道是不是这个问题