学习Json的一些体会:
1.Hibernate中的应用
目录结构
ps:有点混乱下面就直接进入例子
- 首次我先写了这样的代码
-
- 首次我先写了这样的代码
public void test6(){
Map<String,String> map = new HashMap<String,String>();
map.put("id", "1");
map.put("name","小强");
Map<String,String> map2 = new HashMap<String,String>();
map2.put("id", "2");
map2.put("name", "小华");
List<Map<String,String>> list = new ArrayList<Map<String,String>>();
list.add(map);
list.add(map2);
JSONArray json = JSONArray.fromObject(list);
System.out.println(list.toString());
JSONObject resObj = json.getJSONObject(0);
System.out.println(resObj.get("id"));
}
结果是
上面的代码用到的是JSONArray,那么我们直接用JSONObject会用什么效果呢,下面就是:
- 代码
- public void test8(){
Map<String,String> map = new HashMap<String,String>();
map.put("id", "1");
map.put("name","小强");
Map<String,String> map2 = new HashMap<String,String>();
map2.put("id", "2");
map2.put("name", "小华");
List<Map<String,String>> list = new ArrayList<Map<String,String>>();
list.add(map);
list.add(map2);
JSONObject json = JSONObject.fromObject(list);
System.out.println(json);
}
这时就会报错
ps: 如果List集合中只有一个Map呢,当我们使用JSONObject json = JSONObject.fromObject(list);转换时也会报错,告诉我们对象是一个数组,这里是因为使用List集合,所以我们只能用JSONArray来转换。
- 如果我们使用的是Map集合,我们就可以用JSONObject来进行转换
public void test8(){
Map<String,String> map = new HashMap<String,String>();
map.put("id", "1");
map.put("name","小强");
map.put("id", "2");
map.put("name", "小华");
JSONObject json = JSONObject.fromObject(map);
System.out.println(json);
}
结果是
ps:通过上面,我们可以知道json同List和Map之间的转换,其实还有其他方法,小白目前也只看了这一种。在Hibernate中的使用:
- 我们先写如下代码:
public void test9(){
//封装好的工具类
Session session = HibernateUtils.getSession();
//查询
String hql = "from Foo";
List<Foo> list = session.createQuery(hql).list();
System.out.println(list.toString());
}
结果是
[Foo [t_id=1, t_name=周星驰, t_salary=3000.0, t_hire_date=2017-04-17, t_marry=true, t_last_login_time=2017-04-17], Foo [t_id=2, t_name=小强, t_salary=200.0, t_hire_date=2017-04-17, t_marry=true, t_last_login_time=2017-04-17]]
- 但是啊,我们有时结果会是
List<Map<String,Object>>
,我们该如何解决呢,还在学习中。。。 - -