java类中定义了一个LabelValueBean
public final static LabelValueBean[] SELECT_CONSTANT1 = new LabelValueBean[] {
new LabelValueBean("红", "R"), new LabelValueBean("绿", "G"),
new LabelValueBean("蓝", "B") };
在struts中通过标签显示这些值没有问题,选中某个值后保持到数据库中,数据库中保存的是"R"之类的,如何显示出“红”来呢?
小弟刚学struts,多帮忙啊!!!!!!!

解决方案 »

  1.   

    什麽意思?
    顯示紅么就把紅放到r的位置上呀
    new LabelValueBean("红", "紅"),
    ===================================
    還是你又要紅又要r?
    那就後面都賦下值
    new LabelValueBean("红", "紅  R"),  
    或者寫個2維數組好了
      

  2.   

    不好意思啊,我的意思没能表达清楚
    我的表示层中通过下拉选中值保存到数据库 是以"R""G""B"的形式啊
    取出来如何对应显示出红绿蓝呢???
    不要通过if判断哦
      

  3.   

    <html:select 标签的property会自动帮你选择你的option当中的值
      

  4.   

    谢谢哦,还不是我想知道的答案,为自己的表达能力汗颜啊
    我的意思是 label和value 在数据库和页面之间如何转换,写个转换的类吗??
      

  5.   

    数据库中不会存储所有的label和value 的值,你的actionform应该有个属性是用来存储select提交的值,这就是你要存储到数据库中的值,至于option当中的值的对应关系如何定义跟这个无关
      

  6.   

    <logic:equal value="R" property="color">红</logic:equal>
    <logic:equal value="G" property="color">绿</logic:equal>
    <logic:equal value="B" property="color">蓝</logic:equal>我想你说的是这个意思,我一般都这么做...JF
      

  7.   

    LZ首先,我觉得 LabelValueBean[] 用数组,不是很好
    你可以建一个bean,属性是value和label(R,"红")
    把多个bean放在list里面,不要放数组里
    页面上可以写成
    <html:select name="XXXForm" property="XXXCode">
      <html:options collection="colorList" property="value" labelProperty="label"/>
    </html:select>
      

  8.   

    我一般都把LabelValueBean放到一个ArrayList里面