它们是一种将 JSON 字符串转换为 Java 对象的简单方法或库,以便我可以轻松地引用 JSP 页面中的元素吗?我认为Map
's 可以在 JSP 页面中用简单的点符号来引用,所以 JSON -> Map 对象应该可以工作吗?
更新:感谢所有 JSON Java 库。特别是,我正在寻找一个能够在 JSP 页面中轻松使用的库。这意味着创建的 Java 对象具有与 JSON 节点名称相对应的适当 getter 方法(这可能吗?),或者有一些其他机制可以像 Map 对象一样轻松实现。
它们是一种将 JSON 字符串转换为 Java 对象的简单方法或库,以便我可以轻松地引用 JSP 页面中的元素吗?我认为Map
's 可以在 JSP 页面中用简单的点符号来引用,所以 JSON -> Map 对象应该可以工作吗?
更新:感谢所有 JSON Java 库。特别是,我正在寻找一个能够在 JSP 页面中轻松使用的库。这意味着创建的 Java 对象具有与 JSON 节点名称相对应的适当 getter 方法(这可能吗?),或者有一些其他机制可以像 Map 对象一样轻松实现。
使用杰克逊。
更新:
如果你有一个任意的 json 字符串,Jackson 可以返回一个地图对象来访问属性值。
这里举一个简单的例子。
@Test
public void testJsonMap() throws JsonParseException, JsonMappingException, IOException {
String json = "{\"number\":\"8119123912\",\"msg\":\"Hello world\"}";
ObjectMapper mapper = new ObjectMapper();
Map<String, Object> map = mapper.readValue(json, new TypeReference<Map<String,Object>>() { });
System.out.println("number:" + map.get("number") + " msg:" + map.get("msg"));
}
输出:
号码:8119123912 消息:你好世界
试试 GSON,这里有一个教程。
这个库应该做你想做的事:http: //www.json.org/java/
DWR 可用于此目的DWR-Easy Ajax for JAVA。
让我们考虑这个java类。
class Employee
{
int id;
String eName;
// setters and getters
}
在 javascript JSON 对象中
var employee = {
id : null,
name : null
};
这是从 javascript 函数调用 java 方法。
EmployeeUtil.getRow(employee,dwrData);
在 EmployeeUtil 类的 getRow() 中,方法的返回类型将是 Employee。
Employee getRow();
所以使用 Employee 的 setter 来设置数据。
dwrData 是回调函数。
function dwrData(data) {
employee=data;
}
返回的 Employee bean 数据将在回调函数中。
只需在 javascript JSON 对象中初始化它。
现在可以在jsp中解析并显示JSON对象。
此示例显示动态编辑表
希望这可以帮助 ....