日期:2014-05-17  浏览次数:20637 次

求交流
<?xml version="1.0" encoding="UTF-8"?>
<body>
<username>${user.name}</username>
</body>

public class User{
private String name;
public String getName(){
return this.name;
}
public void setName(String name){
this.name=name;
}
}

现在有User的实例user,想要把xml里面的${user.name}用实例里面的值替换掉,有没有什么想法,求交流啊
其实就是想了解struts标签原理

------解决方案--------------------
应该是解析XML文件  根据user.name   找到user对象     name字段通过反射调用getName得到对象里面的值最后设置到XML里面
我在想是这样的
------解决方案--------------------
1、 拿到文件
2、 顺序读文件,匹配${.*}
3、 把匹配成功的.*拿出来做分析,如果是user.name这种类型就直接反射调用user.getName()
4、 把${.*}表达式替换成刚才调用的结果
5、 返回结果文件