super

          JSON-RPC的另類用法

          JSON-RPC 大家都知道了,我比較反感JSON-RPC的客戶端/服務器端的交互方式,個人認為還是DWR的框架似乎好一些,不過單純比較后臺代碼的風格,似乎JSON-RPC的代碼更好些---純粹個人喜好。

          ???雖然不喜歡JSON-RPC的框架,不過對于JSON的javaObject--javascriptObject的轉換代碼倒是很欣賞,因此直接把JSON-RPC的這部分代碼直接拿過來用,感覺也不錯。當然,這已經跟AJAX關系不大了。

          ???1.將jsonrpc-1.0.jar包含在你的project的classpath中,
          ???2.寫個簡單的Util類,將你的java Object 序列化成javascript的字符串。

          public class JSONUtil {
          ?public static final JSONSerializer se = new JSONSerializer();
          ?private static Logger log = Logger.getLogger(JSONUtil.class);?
          ?static
          ?{
          ??try
          ??{
          ???se.registerDefaultSerializers();
          ??}
          ??catch (Exception e)
          ??{
          ???log.error(e);
          ??}
          ?}
          ?
          ?public static String toJSON(Object obj)
          ?{
          ??try
          ??{
          ???SerializerState state = new SerializerState();
          ???Object retuObj = se.marshall(state, obj);
          ???String retuStr = retuObj.toString();
          ???//retuStr.replaceAll("\\\"", "\\'");
          ???//log.debug("JSONStr:"+retuStr);
          ???return retuStr;
          ??}
          ??catch (Exception e){
          ???log.error(e);
          ???return obj.toString();
          ??}
          ?}


          3.???客戶端的jsp中只要簡單的加上這段js
          <script language=javascript>
          ?eval('jsObject = <%=JSONUtil.toJSON(javaObject)%>'+';');
          </script>
          javaObject是你自己的java類的實例,這樣你就可以在js中直接操作jsObject 這個js對象了。



          posted on 2006-11-27 16:14 王衛華 閱讀(666) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 彭水| 南华县| 迁安市| 承德市| 德保县| 开原市| 荔浦县| 金山区| 阆中市| 新竹市| 应用必备| 海城市| 通辽市| 镇赉县| 阿拉尔市| 凤山县| 如皋市| 绥棱县| 同德县| 辰溪县| 五大连池市| 江都市| 安国市| 和硕县| 中方县| 奇台县| 仪征市| 黄山市| 定南县| 白玉县| 镇巴县| 景东| 英超| 根河市| 阜城县| 图们市| 阿拉善盟| 历史| 天全县| 涿鹿县| 秦安县|