有区别吗?
list里面放什么和怎么取得应该没关系吧good luck
list里面放什么和怎么取得应该没关系吧good luck
解决方案 »
- 【保证结贴】两年java开发经验,需要懂多少东西?
- Speach for java组件在哪能下载?
- Quartz的疑问
- windows 下使用squid的问题
- EJAutoUpdate软件自动升级组件开发
- 请转贴,共同抵制日货!
- 本来JDK版本是1.5,但后安装Oracle 8,JBuilder8后,,,,,,,,,,,,,,,,,,,,,,,,,,,
- 客户端程序直接访问WEBSPHERE的JNDI服务的问题 100分!!!
- 反战的签名!
- -------struts config文件问题--------
- WebSphere Application Server does not support double reading of the input stream , 幫幫忙看看是什麼問題..........
- 请教windows环境下的tomcat日志问题
你在action 中,把 每个公司的对象放到 list 中,然后再在页面上用 for each 取出来不就可以了吗?<for each ..>
${company.name}
${company.phoneNO}
${company.addr}
这时候我想在jsp页面,根据员工表的某个数据项,再用jstl的for each动态的去查询得到员工所属的公司名称,请问这怎样去实现。用jstl标签
用到时候
<foreach var="list" items="">
${list.name}
${list.address}
${list.tel}
</foreach>
如果你想加一个信息字段<foreach var="list" items="">
${list.name}
${list.address}
${list.tel}
${list.info}
</foreach>这样即可!
选了A公司,显示A公司的员工
选了B公司,显示B公司的员工如果是这样的话,有几个思路提供给你参考。1,所有公司和所有员工都放到list里面返回给客户端,然后让javascript去筛选。2,返回给所有公司的信息给客户端,然后当更换选项的时候,再次提交,用提交上来的公司的数据检索员工,再返回给客户端显示3,和2差不多,不过用ajax,就可以不用刷新整个页面如果公司和员工不多,可以用1
不过一般这种数据都不少,应该选择2和3
现在ajax当道,而且看上去也舒服,推荐3另外,这个和用不用jstl没什么关系,
jstl只是“怎么从response/session中取数据”的一种技术good luck
JSTL确实可以实现,但前提是你的员工信息要与公司信息相关联起来啊,用Hibernate建立员工与公司的映射关系。
假如你员工的POJO类中某个属性是这样声明的:Company company;这样你的页面上就可以用JSTL显示信息了,如下:
<c:forEach items="${list}" var="item">
<tr>
<td>${item.name}</td>
<td>${item.phone}</td>
<td>${item.address}</td>
<td>${item.company.companyName}</td>
</tr>
</c:forEach>
<tr>
<td>${item.name}</td>
<td>${item.phone}</td>
<td>${item.address}</td>
<td>${item.company.companyName}</td>
</tr>
</c:forEach>
我知道用一个sql语句可以把所有数据都能查出来。但我只是举了个简单例子说明这个问题。
类似我们以前用jsp写代码一样,如果一个sql语句得不到所有的信息,会再查多一次数据库,
例如
list v=db.query(sql)
for (){
out.println (v.get("companyid"))
string sqlstr="select * from company where id="+v.get("companyid")
list companylist=db.query(sqlstr)
if(){
out.println (companylist.get("companyname"))
}
}
问题现在是,如果我用了jstl后,我同样会面临再查数据库的情况,关键如何动态根据员工表的公司id去查公司名称所以我就不知道该怎样用标签去展现,
下面这个展现的方式
<c:forEach var="ylist" items="${yList}"> //员工的list
${ylist.compayid}//根据这个公司id,如何动态的查询公司名称
<c:forEach var="company" items="${company}">
.............${company.name}
</c:forEach>
《上边3步,如何根据不同的公司id再从数据库中查找数据??,我不知道这三步如何写》
</c:forEach>
下面是显示...等等似乎明白了,
楼主是不是想把上面那些java逻辑代码用jstl实现?jstl的确提供sql标签可以处理sql和一些逻辑,
不过感觉这样是不是会破坏mvc的结构呢?个人不推荐这么用。还是在模块中处理好再让jstl来显示的好good luck
jstl的sql标签,我用过了,好象有问题。就是不想用他。就是想怎样做才是正道,在模块中处理好是一种方法,假如现实中,真的出现要多次查询数据的话。除了用ajax外,好象用jstl要实现的话就感觉没有这种可能性了吧?!