</span><span style="color: #0000ff">public</span> <span style="color: #0000ff">class</span><span style="color: #000000"> Person {
1</span><span style="color: #0000ff">private</span><span style="color: #000000"> String name; 2 3</span><span style="color: #0000ff">private</span> <span style="color: #0000ff">int</span><span style="color: #000000"> age; 4 5</span><span style="color: #0000ff">public</span><span style="color: #000000"> String getName() { 6 7 </span><span style="color: #0000ff">return</span><span style="color: #000000"> name; 8} 9 10</span><span style="color: #0000ff">public</span> <span style="color: #0000ff">void</span><span style="color: #000000"> setName(String name) { 11 12 </span><span style="color: #0000ff">this</span>.name =<span style="color: #000000"> name; 13} 14 15</span><span style="color: #0000ff">public</span> <span style="color: #0000ff">int</span><span style="color: #000000"> getAge() { 16 17 </span><span style="color: #0000ff">return</span><span style="color: #000000"> age; 18} 19 20</span><span style="color: #0000ff">public</span> <span style="color: #0000ff">void</span> setAge(<span style="color: #0000ff">int</span><span style="color: #000000"> age) { 21 22 </span><span style="color: #0000ff">this</span>.age =<span style="color: #000000"> age; 23}
}
</span><span style="color: #0000ff">package</span><span style="color: #000000"> no.integrasco.ingentia.news.qaedition;
</span><span style="color: #0000ff">import</span><span style="color: #000000"> java.util.List;
</span><span style="color: #0000ff">import</span><span style="color: #000000"> net.sf.json.JSONArray; </span><span style="color: #0000ff">import</span><span style="color: #000000"> net.sf.json.JsonConfig;
</span><span style="color: #0000ff">public</span> <span style="color: #0000ff">class</span><span style="color: #000000"> JsonTest {
1</span><span style="color: #008000">/**</span><span style="color: #008000"> 2 * </span><span style="color: #808080">@param</span><span style="color: #008000"> args 3 </span><span style="color: #008000">*/</span> 4<span style="color: #0000ff">public</span> <span style="color: #0000ff">static</span> <span style="color: #0000ff">void</span><span style="color: #000000"> main(String[] args) { 5 6 </span><span style="color: #008000">//</span><span style="color: #008000"> 转换方法1</span> 7 JSONArray array = JSONArray.fromObject("[{'name':'hehe','age':22}]"<span style="color: #000000">); 8 List</span><Person> list = JSONArray.toList(array, Person.<span style="color: #0000ff">class</span>);<span style="color: #008000">//</span><span style="color: #008000"> 过时方法</span> 9 System.out.println(list.get(0<span style="color: #000000">).getName()); 10 11 </span><span style="color: #008000">//</span><span style="color: #008000"> 转换方法2</span> 12 List<?> list2 = JSONArray.toList(array, <span style="color: #0000ff">new</span> Person(), <span style="color: #0000ff">new</span> JsonConfig());<span style="color: #008000">//</span><span style="color: #008000">参数1为要转换的JSONArray数据,参数2为要转换的目标数据,即List盛装的数据</span> 13 Person person = (Person) list2.get(0<span style="color: #000000">); 14 System.out.println(person.getAge()); 15}
}</span></pre>
<div class="cnblogs\_code\_toolbar"><span class="cnblogs\_code\_copy"><a href="javascript:void(0);" onclick="copyCnblogsCode(this)" title="复制代码"><img src="https://my.oschina.net//common.cnblogs.com/images/copycode.gif" alt="复制代码"></a></span></div></div> <p><span style="font-size: 18pt">2.从页面接收json格式的数据,在java类里面进行解析</span></p> <div class="cnblogs\_code"><div class="cnblogs\_code\_toolbar"><span class="cnblogs\_code\_copy"><a href="javascript:void(0);" onclick="copyCnblogsCode(this)" title="复制代码"><img src="https://my.oschina.net//common.cnblogs.com/images/copycode.gif" alt="复制代码"></a></span></div> <pre>String jsonStr = {"name":"zfj","dd":\[{"ddr":"1","encrypt":"2","ff":"1","length":"23","ffe":"editStyled","ill":"1","pkor":"2","name":"zfj","isKey":"2","alias":"ffff"}\],"addRelations":\[{"type":"2","ld":"zfj","ld":"2"<span style="color: #000000">}\]};</span><span style="color: #008000">//</span><span style="color: #008000">将此字符串放在ruquest或者其他的变量里面,传递到后台。
</span><span style="color: #008000">//</span><span style="color: #008000">如放在reques中: </span> request.getRequestDispatcher("/geServlet?data="+<span style="color: #000000">jsonStr).forward(request,response);
</span><span style="color: #008000">//</span><span style="color: #008000">在servlet或java类里这样接收: </span> String json = request.ge[size=large][/size]tParameter("data"<span style="color: #000000">); JSONObject jsonObject </span>=<span style="color: #000000"> JSONObject.fromObject(data); String name </span>=<span style="color: #000000"> jsonObject.getString(“name”); ...... </span><span style="color: #008000">//</span><span style="color: #008000">对于数组这样接收用 </span> <span style="color: #000000"> JSONArray jan </span>= (JSONArray) jsonObject.get("dd"<span style="color: #000000">); </span><span style="color: #0000ff">if</span>(jan!=<span style="color: #0000ff">null</span>||jan.size()!=0<span style="color: #000000">){ </span><span style="color: #0000ff">for</span>(<span style="color: #0000ff">int</span> i=0;i<ja.size();i++<span style="color: #000000">){ JSONObject jo </span>=<span style="color: #000000"> JSONObject.fromObject(ja.get(i)); String ff </span>= jo.getString("ff"<span style="color: #000000">); ...... } } </span></pre>
<div class="cnblogs\_code\_toolbar"><span class="cnblogs\_code\_copy"><a href="javascript:void(0);" onclick="copyCnblogsCode(this)" title="复制代码"><img src="https://my.oschina.net//common.cnblogs.com/images/copycode.gif" alt="复制代码"></a></span></div></div> <div class="cnblogs\_code"><div class="cnblogs\_code\_toolbar"><span class="cnblogs\_code\_copy"><a href="javascript:void(0);" onclick="copyCnblogsCode(this)" title="复制代码"><img src="https://my.oschina.net//common.cnblogs.com/images/copycode.gif" alt="复制代码"></a></span></div> <pre>String jsonStr = {"name":"zfj","dd":\[{"ddr":"1","encrypt":"2","ff":"1","length":"23","ffe":"editStyled","ill":"1","pkor":"2","name":"zfj","isKey":"2","alias":"ffff"}\],"addRelations":\[{"type":"2","ld":"zfj","ld":"2"<span style="color: #000000">}\]};</span><span style="color: #008000">//</span><span style="color: #008000">将此字符串放在ruquest或者其他的变量里面,传递到后台。
</span><span style="color: #008000">//</span><span style="color: #008000">如放在reques中: </span> request.getRequestDispatcher("/geServlet?data="+<span style="color: #000000">jsonStr).forward(request,response);
</span><span style="color: #008000">//</span><span style="color: #008000">在servlet或java类里这样接收: </span> String json = request.getParameter("data"<span style="color: #000000">); JSONObject jsonObject </span>=<span style="color: #000000"> JSONObject.fromObject(data); String name </span>=<span style="color: #000000"> jsonObject.getString(“name”); ...... </span><span style="color: #008000">//</span><span style="color: #008000">对于数组这样接收用 </span> <span style="color: #000000"> JSONArray jan </span>= (JSONArray) jsonObject.get("dd"<span style="color: #000000">); </span><span style="color: #0000ff">if</span>(jan!=<span style="color: #0000ff">null</span>||jan.size()!=0<span style="color: #000000">){ </span><span style="color: #0000ff">for</span>(<span style="color: #0000ff">int</span> i=0;i<ja.size();i++<span style="color: #000000">){ JSONObject jo </span>=<span style="color: #000000"> JSONObject.fromObject(ja.get(i)); String ff </span>= jo.getString("ff"<span style="color: #000000">); ...... } } </span></pre>
<div class="cnblogs\_code\_toolbar"><span class="cnblogs\_code\_copy"><a href="javascript:void(0);" onclick="copyCnblogsCode(this)" title="复制代码"><img src="https://my.oschina.net//common.cnblogs.com/images/copycode.gif" alt="复制代码"></a></span></div></div> <p> </p></div>