在Java中记录为用户语句

在Java中记录为用户语句,java,mysql,Java,Mysql,*在登录页面中,用户提供用户名和密码并登录到主页。(使用MySQL数据库检查用户详细信息并验证数据) *在主页中,我想显示登录为:[登录用户名]。我尝试了下面的方法,但没有成功 public void showUsername() throws SQLException{ String sql1 = "SELECT username FROM logininfo WHERE username= '"+uname+"'" ; stmt = conn.createState

*在登录页面中,用户提供用户名和密码并登录到主页。(使用MySQL数据库检查用户详细信息并验证数据)

*在主页中,我想显示登录为:[登录用户名]。我尝试了下面的方法,但没有成功

 public void showUsername() throws SQLException{



    String sql1 = "SELECT username FROM logininfo WHERE username= '"+uname+"'" ;

    stmt = conn.createStatement();
    rs = stmt.executeQuery(sql1);

    while(rs.next()){
        String name=rs.getString("username");
        loggedUname_lbl.setText("You are Logged in as : "+name);
   }

*uname是用户在登录页面中作为用户名给出的文本。

尝试使用prepared语句并使用以下查询。如果表logininfo中有此用户名(uname),则应检索该用户名。最好使用事先准备好的语句,这样可以防止


如果您查看数据库查询,它没有任何意义。你选择你已经知道的

这就是解决问题所需的全部:

public void showUsername() {
    loggedUname_lbl.setText("You are logged in as: " + uname);
}

如果您已经知道用户名,为什么要将其从数据库中取出?运行时代码是否在其中?有例外吗?代码运行时会发生什么?用like而不是equals@Zelldon是的,纠正我的错误:(@tenten,您使用注释查询和注释pstmt.setString(1,uname);用于精确匹配。真的吗?我想实现一种登录机制,用like检查用户名?这样我就可以用“ame”而不是“name”登录了?!为什么有人会想要这个?!不确定;),@tenten想要这个。你是对的,很抱歉打扰你,我想我有这个主意:D@Kalyan查瓦利,这不是我想要的:(注释中已更改的查询?不是这样吗?那么您需要什么?
public void showUsername() {
    loggedUname_lbl.setText("You are logged in as: " + uname);
}