JSP如何从ArrayList获取Hashmap值

时间:2014-04-28 17:20:23

标签: java jsp arraylist hashmap

我在Tomcat服务器上使用JSP并读取了INI文件中的内容并将它们放入Hashmaps的ArrayList中。当我遍历它们时,结果如下所示;

- INI文件 -

  

[General]
item0 = 0
item1 = 1
item2 = 2
item3 = 3
  ITEM4 = 4

     

[具体]
项目0 = 5
项目1 = 6
项目2 = 7
项目3 = 8
  ITEM4 = 9

- 我的结果 -

{General={item0=0, item1=1, item2=2, item3=3, item4=4}}<br>
{Specific={item0=5, item1=6, item2=7, item3=8, item4=9}}<br>

不幸的是,服务器运行的是Tomcat的有限版本,并且在Intranet上无法访问Internet,因此我无法使用JSTL,并且公司策略不允许我安装JavaBeans。

有没有办法在没有JSTL或JavaBeans的情况下从这些结果中获取特定值?

即。从General检索item2应返回2,而Specific2中的item2应返回7.

如果可能的话,我可以更改项目的值并循环列表以更新ini文件吗?

1 个答案:

答案 0 :(得分:0)

我会修改你的模型以包含某种SettingsIni类,它将包含一个ini文件中的所有设置。这个类的标题成员可能取自ini的文件名,并有一个内部Map来保存设置&#39;键和值。

您应该包含公共方法以公开存储的值并将其转换为其数据类型。诸如getInt(String key)getBoolean(String key)之类的方法将验证存储的数据并将其返回,或者在失败时返回默认值。

您可以选择扩展此类并添加便捷方法来访问已知ini文件的设置。

public class GeneralSettingsIni extends SettingsIni {
    private static String FILEPATH = "file.ini";
    private static String KEY_ITEM0 = "item0";
    public GeneralSettingsIni() {
        super(filepath);
    }

    public int getItem0() {
        return super.getInt(KEY_ITEM0);
    }
    ...
}