我在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文件吗?
答案 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);
}
...
}