gpt4 book ai didi

java - 为什么我的if没有执行

转载 作者:行者123 更新时间:2023-12-01 00:38:01 25 4
gpt4 key购买 nike

ResultSet rs;
System.out.println("rs");
try
{
rs = j.getData("select ulevel from user where ulevel='"+eid+"'");
System.out.println("try");
//until this point it works properly. But after this point it doesn't work as I thought even though I logged in as a user whose user level (ulevel) is not admin.
if(rs.next())
{
System.out.println("rs.next");
if(rs.getString(2).equals("Admin"))
{
System.out.println("if admin");
home.setEnabled(true);
job.setEnabled(true);
employee.setEnabled(true);
user.setEnabled(true);
machine.setEnabled(true);
branch.setEnabled(true);
}
else if(rs.getString(2).equals("user"))
{
System.out.println("else if");
home.setEnabled(true);
machine.setEnabled(true);
System.out.println("user can't see");
}
else
{
System.out.println("else");
}
}
}
catch (Exception ex)
{
Logger.getLogger(Home_Page.class.getName()).log(Level.SEVERE, null, ex);
}


从上面的代码中,我试图限制用户级别 (ullevel) 为 user 的普通用户可以看到的页面数。我试过了

jbutton_name.setvisible(false);       
jbutton_name.setEnabled(false)

也是。但是它们都不能有效地为普通用户禁用这些按钮。
有人可以帮帮我吗???提前致谢。

最佳答案

rs.getString(2)中的2为结果列索引(第一列从1开始)

但是因为您只能从查询中返回一列

select ulevel from user

它不会工作

根据 javadocs

SQLException - if the columnIndex is not valid; if a database access error occurs or this method is called on a closed result set

我还建议您使用 PreparedStatementsetString 来避免 SQL 生成的连接,从而避免 SQL 注入(inject)攻击的可能性。

关于java - 为什么我的if没有执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42710382/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com