Java 将数据库值加载到组合框-JSP,Hibernate
我正在使用hibernate框架开发一个web应用程序。我使用JSP进行查看。在那里,我需要将特定数据从数据库表加载到组合框中。 在这种情况下,我需要将所有角色ID从角色表加载到组合框中 我的代码如下Java 将数据库值加载到组合框-JSP,Hibernate,java,hibernate,jsp,Java,Hibernate,Jsp,我正在使用hibernate框架开发一个web应用程序。我使用JSP进行查看。在那里,我需要将特定数据从数据库表加载到组合框中。 在这种情况下,我需要将所有角色ID从角色表加载到组合框中 我的代码如下 <tr> <th align="left"> Role ID </th> <td> <!-- Combobox t
<tr>
<th align="left"> Role ID </th>
<td>
<!-- Combobox to get role id's -->
<%
try {
SessionFactory sf = HibernateUtil.getSessionFactory();
Session s = sf.openSession();
Transaction tx = s.beginTransaction();
Role se = new Role();
String hql = "select ROLEID from EAD.ROLE";
Query q = s.createQuery(hql);
ArrayList li = (ArrayList) q.list();
Iterator ie = li.iterator();
int size = li.size();
%>
<select>
<%
while (ie.hasNext()) {
Integer un = se.getRoleid();
%>
<option value="<%= un%>"><%= un%></option>
<%
}
%>
</select>
<%
} catch (HibernateException he) {
he.printStackTrace();
}%>
<!-- end of combobox-->
</td>
</tr>
我的问题是,页面中甚至没有显示组合框。有没有办法解决这个问题??如果可以,请尽快提出解决方案。谢谢:)尝试显示选项 查询:
“从角色r中选择r.roleid”
注意:如果列表没有元素或大小为零,则组合框中不会显示任何选项值
更换
内的以下代码:
<center>
<select>
<%
try {
SessionFactory sf = HibernateUtil.getSessionFactory();
Session s = sf.openSession();
Transaction tx = s.beginTransaction();
Role se = new Role();
String hql = "select r.roleid from Role r";
Query q = s.createQuery(hql);
ArrayList li = (ArrayList) q.list();
System.out.println("List Size = " + li.size());
/*
if List Size is 0 then no option values will show
*/
Iterator ie = li.iterator();
%>
<%
while (ie.hasNext()) {
Integer un = se.getRoleid();
%>
<option value="<%= un%>"><%= un%></option>
<%
}
%>
<%
} catch (Exception he) {
he.printStackTrace();
}
%>
</select>
</center>
您能格式化源代码吗。IDE使用什么?Im使用netbeans IDECheck ArrayList size如果列表大小为0,则不会为select选项设置任何值。若在标记之前发生任何异常,则组合框将不会显示在页面中。在netbeans中选择代码,然后按Ctrl+Shift+F格式化代码。然后编辑帖子替换已编辑的代码。另外,您是否在控制台中收到错误消息?使用“从角色r中选择r.roleid”会给我一个java堆异常。因此,我将查询更改为“从EAD.ROLE r中选择r.ROLEID”。现在显示组合框,没有加载任何值。有什么想法吗?Console out out of List Size=是0还是其他?没有显示控制台输出:(但有一条GlassFish服务器消息说“严重:org.hibernate.QueryException:未定义的别名:ROLEID[从角色中选择ROLEID]”您需要给类添加别名,然后在列中引用它:Role is class及其别名let r。然后查询:“select r.roleid from Role r”当我放入该查询时,我得到一个Java堆空间错误:(
<center>
<select>
<%
try {
SessionFactory sf = HibernateUtil.getSessionFactory();
Session s = sf.openSession();
Transaction tx = s.beginTransaction();
Role se = new Role();
String hql = "select r.roleid from Role r";
Query q = s.createQuery(hql);
ArrayList li = (ArrayList) q.list();
System.out.println("List Size = " + li.size());
/*
if List Size is 0 then no option values will show
*/
Iterator ie = li.iterator();
%>
<%
while (ie.hasNext()) {
Integer un = se.getRoleid();
%>
<option value="<%= un%>"><%= un%></option>
<%
}
%>
<%
} catch (Exception he) {
he.printStackTrace();
}
%>
</select>
</center>