写了3个BEAN,Check.java,DB.JAVA,Login.java 其中Login.java需调用Check.java和DB.JAVA的方法 但是Login.java再编译的时候提示出错 下面是代码
Check.java
package rlzygl;/**
 * Created by IntelliJ IDEA.
 * User: xu
 * Date: 2008-12-18
 * Time: 11:15:09
 * To change this template use File | Settings | File Templates.
 */
public class Checkstr {
    public Checkstr(){}
    public String dostring(String str){
        str=str.replaceAll("&","&");
        str=str.replaceAll("<","&lt;");
        str=str.replaceAll(">","&gt;");
        str=str.replaceAll("","");
        str=str.replaceAll(";","");
        str=str.replaceAll("--","");
        str=str.replaceAll("/","");
        str=str.replaceAll("%","");
        return str;
    }
}DB.JAVA
package rlzygl;import java.sql.Connection;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.DriverManager;/**
 * Created by IntelliJ IDEA.
 * User: xu
 * Date: 2008-12-18
 * Time: 11:20:56
 * To change this template use File | Settings | File Templates.
 */
public class DB {
    private Connection con;
    private Statement stm;
    private ResultSet rs;
    private String classname="sun.jdbc.odbc.JdbcOdbcDriver";
    public DB(){}
    public Connection getCon(){
        try{
            Class.forName(classname); //加载并注册驱动
        }
        catch(ClassNotFoundException e){
            e.printStackTrace();
        }
        try{
             con= DriverManager.getConnection("jdbc:odbc:rlzygl","",""); //得到和数据库的连接
        }
        catch(Exception e){
            e.printStackTrace(System.err);
            con=null;
        }
        return con;
    }
    public Statement getStm(){
        try{
            con=getCon();
            stm=con.createStatement();
        }catch(Exception e){
            e.printStackTrace(System.err);
        }
        return stm;
    }
    public ResultSet search(String sql){
        if(sql==null)sql="";
        try{
            stm=getStm();
            rs=stm.executeQuery(sql);
        }catch(Exception e){
            e.printStackTrace();
        }
        return rs;
    }
}LOGIN.JAVA
package rlzygl;import java.sql.ResultSet;/**
 * Created by IntelliJ IDEA.
 * User: xu
 * Date: 2008-12-18
 * Time: 11:40:59
 * To change this template use File | Settings | File Templates.
 */
public class Login {
    private String username;
    private String password;
    private Checkstr check=new Checkstr();
    public Login(){}
    public void setUsername(String username){
        this.username=check.dostring(username);
    }
    public void setPassword(String password){
        this.password=check.dostring(password);
    }
    public String checklogin(){
        String backmess="";
        boolean =true;
        if(this.username.equals("")){
            =false;
            backmess+="<li>请输入<b>用户名</b></li></br>";
        }
        if(this.password.equals("")){
            =false;
            backmess+="<li>请输入<b>密码</b></li></br>";
        }
        if(!){
            return backmess;
        }
        String sql="select * from admin where id='"+this.username+"'and psw='"+this.password+"'";
        DB db=new DB();
            ResultSet rs=db.search(sql);
            try{
            if(rs.next()){            }else{
                backmess="登陆失败!<b>输入的<b>用户名</b>或<b>密码</b>不正确!";
            }
        }
            catch(Exception e)
            {e.printStackTrace();
            backmess="操作失败!";
            }
            return backmess;
        }
}都放在同一个包下面

解决方案 »

  1.   

    public class Checkstr 类名和文件名不一致,类名是Checkstr,而文件名是Check
      

  2.   

    PUBLIC的类名 必须和文件名一致
      

  3.   

    不好意思啊,上面打错了 是文件名是Checkstr.java
    在同一个包下,编译错误如下:
    Login.java:15: 找不到符号
    符号: 类 Checkstr
    位置: 类 rlzygl.Login
        private Checkstr check=new Checkstr();
                ^
    Login.java:15: 找不到符号
    符号: 类 Checkstr
    位置: 类 rlzygl.Login
        private Checkstr check=new Checkstr();
                                   ^
    Login.java:38: 找不到符号
    符号: 类 DB
    位置: 类 rlzygl.Login
            DB db=new DB();
            ^
    Login.java:38: 找不到符号
    符号: 类 DB
    位置: 类 rlzygl.Login
            DB db=new DB();
                      ^
    4 错误
      

  4.   

    问个比较菜的问题, 再编译Login.java的时候 再DOS下用什么命令啊
    用JAVAC Login.java的时候就提示出粗
      

  5.   

    因为你的login.java用到了DB类,所以会出现错误,可以同时编译;
    javac -d c: *.java