高分请教一个JSP问题

来源:百度知道 编辑:UC知道 时间:2024/05/11 05:04:35
现在需要在页面中显示user表中的信息,其中一个状态属性并不在user表中,而是从请假表leave和外出表workout中查询,我现在就是想点击查询按钮时能够获取该员工处于什么状态~~用到hibernate,具体该怎么实现啊~~,新手还请各位高人请教,页面中是: <td class="tableInfonoIndent" style="" id="td_staffStatus_<ww:property value="id"/>" title="<ww:property value="staffStatus"/>" >
<div class="nowrapDiv" style="width:80px;" id="td_<ww:property value="id"/>">
<input type="button" id="<ww:property value="id"/>" onClick="findStatusById('<ww:property value="id"/>');" name="xxxx" value="查询" title="查询" style="cursor:pointer"/>
</div>
</td>
非常感谢奶茶的回答,endTime确实是未来一段时间,我是想根据id来查找用户的状态,传递的参数就是用户的ID,然后判断其是否在leftbill或workoutbill中,hibernate的东西我不是很清楚,刚看了没几天,具体内容我再改改~~

底层使用什么技术与数据库交互并不重要,关键你的难点是不知道怎么使用hibernate还是什么?
1、准备。把hibernate的配置文件写好,其中xxx.hbm.xml中应配置好表间关系、表与实体关系等。
至少写一个通用函数,完成:连接数据库,获得session。
2、至少写一个函数完成用户状态查询(“至少”是因为,为了程序可读性,会考虑分层。单就实现功能而言,简单的写一个函数也可以),完成:获得查询条件(从页面中通过用户输入获得或其他),调用第一步中的函数完成查询,获得resultset。根据外键指向关系把resultset封装成对象返回(如user实体如果包含一个表明自己状态的属性,则返回user对象)
3、调用写好的函数查询出需要的数据。根据你描述的情况,建议采用以下方法:在jsp中调用(2)中的函数,获得user对象。然后使用表达式脚本把查到的数据显示在页面中,如<%=user.getState()%>

你提的已经不只是一个jsp问题了,应该说在这里jsp是最不重要的,关键是怎么调用hibernate提供的接口查到数据,然后显示在界面中。你需要清楚的是一个流程。以上只是粗略的步骤,希望你自己能搞清楚具体实现细节,不知道的可以查,步骤就是这样。
第三步也可以是:(如果没有使用struts,则)使用servlet,在其中调用第二步的函数,把查到的user对象保存在作用域如request中;在页面中请求这个servlet,然后从request中取得user对象,使用el表达式获得数据:
${user.name} 现在的状态: ${user.state}

---------------------------
由于不清楚你的状态id的业务含义,还有find()函数、其他代码和程序整体的结构,只能是根据你贴出来的代码简单说一下我的想法:
关于和当前时间比较的那段我不太理解。endTime 是一个从界面输入的“未来”的时间吗?如果不是的话,数据库中存的时间应该都比当前时间早,这样就不可能查出什么记录。确认这里没错。
你的表设计的有点奇怪。首先id一般都是用来表示序号,没有业务含义,即使有也不应该表示状态id啊。例如可以叫