<select name="varTrxcde" id="varTrxcde">
         <%
             LocalStatisticsDB ldb=new LocalStatisticsDB();
         List<String[]> types=ldb.getMultiStatistics("select sys_trxn_cd ,sys_trxn_desc  from cp_trxcde where sys_dropdown_list ='1'");
         for(String[] data :types){
         %>
         <option value="<%=data[0]%>"><%=data[0]+"-"+data[1] %></option>
         <%} %>
         </select>

解决方案 »

  1.   

    其实看到这条sql语句,即使不会猜也能猜出来。
    select是提供N项让选择其中一项
    下面是写入了一段java代码,生成一个对象,调用该对象的一个方法查询数据库数据,返回形式为List<String[]>
    然后遍历这个list,把这个list中的数据显示在每个选项当中。
      

  2.   

    for(String[] data :types)该怎么看,从来没看过这样的语句啊。
      

  3.   

    这不就是简单的foreach循环语句吗?
    foreach语句是java5的新特征之一,在遍历数组、集合方面,foreach为开发人员提供了极大的方便。 foreach语句是for语句的特殊简化版本,但是foreach语句并不能完全取代for语句,然而,任何的foreach语句都可以改写为for语句版本。 foreach并不是一个关键字,习惯上将这种特殊的for语句格式称之为“foreach”语句
      

  4.   

    你百度一下增强for
    java里面
    for(String[] data :types){
    System.out.println(date[0]+"-"+date[1]);
    }
    等同于
    for(int i=0;i<types.legnth;i++){
    String[] data=types[i];
    System.out.println(date[0]+"-"+date[1]);
    }
    当然,看原理的话就知道这两个效率是不一样的,但是一般人不会去管这些