java同一个包中两个类之间的构造函数无法调用
bean包中包含两个类:DBConnect.java和UserUtil.java//DBConnect.java文件内容如下:packagebean;importjava...
bean包中包含两个类:DBConnect.java和UserUtil.java
//DBConnect.java文件内容如下:
package bean;
import java.sql.*;
public class DBConnect{
Connection con=null;
String drivername="com.mysql.jdbc.Driver";
String url="jdbc:mysql://localhost:3306/test";
String username="root";
String password="123456";
public DBConnect(){}
public Connection getConnection(){
try{
Class.forName(drivername);
con=DriverManager.getConnection(url,username,password);
}catch(ClassNotFoundException e){
e.printStackTrace();
}catch(SQLException e){
e.printStackTrace();
}
return con;
}
}
//UserUtil.java文件内容如下:
package bean;import java.sql.*;
public class UserUtil{
private Connection con;
public boolean findUser(String username,String password){
con=(new DBConnect()).getConnection();//报错的地方,找不到DBConnect()函数boolean flag=false;
Statement stmt;
ResultSet rs;
String sql="select * from users where username='"+username+"'and password='"+password+"'";
try{
stmt=con.createStatement();
rs=stmt.executeQuery(sql);
if(rs.next()) flag=true;
rs.close();
stmt.close();
con.close();}catch(Exception e){
e.printStackTrace();}
return flag;
}
}
//问题如下:UserUtil.java类无法调用DBConnect.java类中的DBConnect()构造函数//附加条件:两个类文件处于同一个目录WEB-INF/classes/bean下//dos下运行java报错图片: 展开
//DBConnect.java文件内容如下:
package bean;
import java.sql.*;
public class DBConnect{
Connection con=null;
String drivername="com.mysql.jdbc.Driver";
String url="jdbc:mysql://localhost:3306/test";
String username="root";
String password="123456";
public DBConnect(){}
public Connection getConnection(){
try{
Class.forName(drivername);
con=DriverManager.getConnection(url,username,password);
}catch(ClassNotFoundException e){
e.printStackTrace();
}catch(SQLException e){
e.printStackTrace();
}
return con;
}
}
//UserUtil.java文件内容如下:
package bean;import java.sql.*;
public class UserUtil{
private Connection con;
public boolean findUser(String username,String password){
con=(new DBConnect()).getConnection();//报错的地方,找不到DBConnect()函数boolean flag=false;
Statement stmt;
ResultSet rs;
String sql="select * from users where username='"+username+"'and password='"+password+"'";
try{
stmt=con.createStatement();
rs=stmt.executeQuery(sql);
if(rs.next()) flag=true;
rs.close();
stmt.close();
con.close();}catch(Exception e){
e.printStackTrace();}
return flag;
}
}
//问题如下:UserUtil.java类无法调用DBConnect.java类中的DBConnect()构造函数//附加条件:两个类文件处于同一个目录WEB-INF/classes/bean下//dos下运行java报错图片: 展开
5个回答
展开全部
你的代码在eclipse运行时正常的,但是放到dos下javac java就麻烦一点了。
你看 package bean;
表示*.class应该在文件夹bean里面,因此,在dos中:
javac DBConnect.java 然后在DBConnect.java所在目录中新建一个bean文件夹,并把DBConnect.class文件剪切到这个bean文件夹里,
接下来javac UserConnect.java 这时,就不会报异常了
要运行UserConect,同样要把UserConect.class剪切到刚刚新建的那个bean文件夹里。
第二个问题:java UserConect 此时,会报找不到com.mysql.jdbc.Driver。
就是在dos下直接执行UserConect时会发现没有连接mysql的驱动。
这个我还没找到怎么在dos中带着jar运行。在eclipse中就是新建一个lib文件夹,把驱动jar包复制到lib下,然后把jar加载到项目中。
你看 package bean;
表示*.class应该在文件夹bean里面,因此,在dos中:
javac DBConnect.java 然后在DBConnect.java所在目录中新建一个bean文件夹,并把DBConnect.class文件剪切到这个bean文件夹里,
接下来javac UserConnect.java 这时,就不会报异常了
要运行UserConect,同样要把UserConect.class剪切到刚刚新建的那个bean文件夹里。
第二个问题:java UserConect 此时,会报找不到com.mysql.jdbc.Driver。
就是在dos下直接执行UserConect时会发现没有连接mysql的驱动。
这个我还没找到怎么在dos中带着jar运行。在eclipse中就是新建一个lib文件夹,把驱动jar包复制到lib下,然后把jar加载到项目中。
展开全部
建议用 eclipse 工具 那样能节省时间,还可以少犯很多错误
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询