我正在开发一个用 Java 编码并与 My SQL 数据库交互的学校项目。我已经进入登录屏幕以确定用户名和密码是否正确,如果正确,则转到主屏幕。我现在想做的是跟踪已登录的用户,以便我可以在其他类中引用它。我创建了一个 currentUser 类,其中包含以下内容。public class CurrentUser { public String loggedInUser; CurrentUser(String user){ this.loggedInUser = user;} public String getCurrentUser(){ return this.loggedInUser;} public void setCurrentUser(String user){ this.loggedInUser = user;} }在我的登录应用程序中,在确认用户名和密码后的区域中,我输入了以下内容。void handleLogIn(javafx.scene.input.MouseEvent event) throws IOException, SQLException {// verify login and send to main screenString userName = username.getText(); String passWord = password.getText();boolean notFound = true;Statement stmt = conn.createStatement();String sqlExecute = "SELECT * FROM user WHERE userName = " + "'" + userName + "'" + " AND password=" + "'" + passWord + "'";Query.makeQuery(sqlExecute);ResultSet result = Query.getResult();while (result.next() && notFound){ //System.out.print(result.getString("userName")); //System.out.print(result.getString("password")); if (userName.equals(result.getString("userName")) && passWord.equals(result.getString("password"))){ notFound = false; Parent root = FXMLLoader.load(getClass().getResource("mainmenu.fxml")); scene = new Scene(root); stage.setScene(scene); stage.show(); currentUser current = new currentUser("userName"); }}userName是指包含刚刚确认的userName的变量。我收到错误“currentUser 在 currentUser 中不是公开的”。我该如何解决这个问题?任何正确方向或资源的观点都会非常有帮助!
1 回答
犯罪嫌疑人X
TA贡献2080条经验 获得超4个赞
我认为问题出在你的构造函数上。也许尝试将构造函数设置为公共:
public CurrentUser(String user) { this.loggedInUser = user; }
添加回答
举报
0/150
提交
取消