我的列表显示类A的一些信息。 如显示:计划编号,计划时间,操作员,产品名称,产品等级,产品规格,产品品种。
计划编号,计划时间,操作员这三个好做 因为类A对应的数据库字段存就是字符, 直接可以通过${对象.属性}得到
但是: 产品名称,产品等级,产品规格,产品品种。这四个字段在类A对应的数据库中存的是int类型的ID
也就是这四个 字段属于公共资料,我建一张公共资料表。假如叫 commontable
commontable 表有字段 id,name,type。也就是说 我类A对应的数据库表中存放的是这个 commontable 表的id
而现在 我在页面 如果${对象.属性} 那么用户看到的只是 数字 id。我要显示的是 这个id对应的name.
求高手解答 怎么做。
我的方法是:获得一个list(当然就是类A的集合)然后遍历for()这个list 没得到一个对象,然后就获得名称,等级..(那四个id)然后 查询commontable 得到对应的name 又放到四个不同的list中
这样在页面 用 jstl来获取。
虽然实现了 但是 我发现:一条类A的记录就要查询 4次commontable表 。我每页显示的是10条 那么一页就要查询40次commontable 。还有就是 现在只是 4个这样的公共资料字段,有可能 还回增多,那不是要把数据库查到崩溃!!!!求解决之道啊!!!
计划编号,计划时间,操作员这三个好做 因为类A对应的数据库字段存就是字符, 直接可以通过${对象.属性}得到
但是: 产品名称,产品等级,产品规格,产品品种。这四个字段在类A对应的数据库中存的是int类型的ID
也就是这四个 字段属于公共资料,我建一张公共资料表。假如叫 commontable
commontable 表有字段 id,name,type。也就是说 我类A对应的数据库表中存放的是这个 commontable 表的id
而现在 我在页面 如果${对象.属性} 那么用户看到的只是 数字 id。我要显示的是 这个id对应的name.
求高手解答 怎么做。
我的方法是:获得一个list(当然就是类A的集合)然后遍历for()这个list 没得到一个对象,然后就获得名称,等级..(那四个id)然后 查询commontable 得到对应的name 又放到四个不同的list中
这样在页面 用 jstl来获取。
虽然实现了 但是 我发现:一条类A的记录就要查询 4次commontable表 。我每页显示的是10条 那么一页就要查询40次commontable 。还有就是 现在只是 4个这样的公共资料字段,有可能 还回增多,那不是要把数据库查到崩溃!!!!求解决之道啊!!!
解决方案 »
- 如何用java或者Excel VBA获得AVI文件的持续时间?
- struts2如何自定义配置文件的位置?
- org.apache.commons的问题
- 怎样实现文件上传
- Hibernate的Criteria日期查询问题
- java 字符串(表达式)转换为 表达式计算 问题?急用谢谢!
- 请问那里能下载到jboss-ide
- jboss 3.2中新部署的ejb(*.jar)文件 jsp调用时抛出异常???
- 一个RMI的例程在JBUILDER中报错,不只是什么原因???
- 我的xml.jsp在tomcat里运行出错,帮忙看看!!!
- 如何在iterator中在嵌套一个iterator
- Spring的AOP中抛出“自定义异常”的问题?
字段1,字段2,字段3
A B C
commontable里存的是
字段1,字段2
A 上海
B 北京
你的数据里存的是commontable里的字段1里的值,你通过查询commontable来获取字段2的值不知道我理解的对不对,所以你每条记录都要查询4次commontable来转换
我的做法是,一次把commontable你需要转换用到的数据查出来,放到HashMap里
要转换的字段做key,最终你要的结果做value
Map[A=上海,B=北京]
这样你就查询1次commontable就可以了
然后A表中的记录转换时,你只需要A.set字段1(map.get(A.get字段1));就可以了。
不知道我说的意思你能不能理解。
字段1,字段2,字段3
A B C
commontable里存的是
字段1,字段2
A 上海
B 北京
你的数据里存的是commontable里的字段1里的值,你通过查询commontable来获取字段2的值不知道我理解的对不对,所以你每条记录都要查询4次commontable来转换
我的做法是,一次把commontable你需要转换用到的数据查出来,放到HashMap里
要转换的字段做key,最终你要的结果做value
Map[A=上海,B=北京]
这样你就查询1次commontable就可以了
然后A表中的记录转换时,你只需要A.set字段1(map.get(A.get字段1));就可以了。
不知道我说的意思你能不能理解。
字段1,字段2,字段3
A B C
commontable里存的是
字段1,字段2
A 上海
B 北京
你的数据里存的是commontable里的字段1里的值,你通过查询commontable来获取字段2的值不知道我理解的对不对,所以你每条记录都要查询4次commontable来转换
我的做法是,一次把commontable你需要转换用到的数据查出来,放到HashMap里
要转换的字段做key,最终你要的结果做value
Map[A=上海,B=北京]
这样你就查询1次commontable就可以了
然后A表中的记录转换时,你只需要A.set字段1(map.get(A.get字段1));就可以了。
不知道我说的意思你能不能理解。
然后A表中的记录转换时,你只需要A.set字段1(map.get(A.get字段1));就可以了。
嗯 那我要在页面显示 上海,北京,这个怎么弄弄!》?呵呵
这段执行完,A的字段1里的值就已经从A转换为北京了,你只要显示A的字段1出来的就是北京啊