我想获取用户用于登录的 ID 号,以便仅显示与该用户 ID 相关的数据(如果有意义)。这是我的索引 bean(index.java) 代码,只是从简单的 inputText 中获取 ID:
private String id;
public String getid() {
return id;
}
public void setid(String id) {
this.id = id;
}
这是使用它的代码(类表)
public class table {
index i = new index();
final String pNo=i.getid();
public List<index> getMyList()
{
List<index> list = new ArrayList<index>();
PreparedStatement pstmt = null;
Connection con = null;
ResultSet rs = null;
try
{
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://localhost:3306/try", "root", "");
String sql = "SELECT task.tNo, clientcase.name "+
"FROM clientcase join task on clientcase.cNo = task.cNo "+
"Where task.responsiblePNo = ? AND (task.statue='opened'Or task.statue= 'pending')";
pstmt= con.prepareStatement(sql);
pstmt.setString(1, pNo);
rs= pstmt.executeQuery();
while (rs.next())
{
i.settNo(rs.getString("task.tNo"));
i.setCompanyName(rs.getString("clientcase.name"));
list.add(i);
}
}
catch(Exception e)
{}
我还有一个 jsf 页面,其中包含用于获取 id 的代码,如果这有意义的话:
<h:inputText id="personnelID" value ="#{index.id}"/>
我的问题是我无法获取 ID 号。如果我将表类中的 get 方法替换为实数,则一切正常。但现在它只是返回 null。有人可以帮助我吗?
最佳答案
代码
index i = new index();
final String pNo=i.getid();
在表
首次创建时运行,并且可能将pNo
设置为null。但在那之后,你就无法以任何方式改变它。您可能需要一个 table
的构造函数来设置 pNo
,以便您可以传入字段中的值。
关于java - 从其他类中获取值(value),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23943042/