亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 面向 java 開發人員的 ajax ajax 的 java 對象序列化.htm

?? 主要是我最近兩月在公司通過百度學習的內容,有AJAX,DWR,JAVA實現文件的上傳和下載.主要目的在與告訴大家一個成功程序員(JAVA)是如何學習的,需要學習什么內容.以及學習的態度.
?? HTM
?? 第 1 頁 / 共 5 頁
字號:
              <TR>
                <TD class=code-outline><PRE class=displaycode>				
public Element toXml() {
  Element elOrder = new Element("order");
  elOrder.setAttribute("id",id);
  elOrder.setAttribute("cost",getFormattedCost());
  Element elDate = new Element("date").addContent(date);
  elOrder.addContent(elDate);
  Element elItems = new Element("items");
  for (Iterator&lt;Item&gt; iter = 
   items.iterator() ; iter.hasNext() ; ) {
    elItems.addContent(iter.next().toXml());
  }
  elOrder.addContent(elItems);
  return elOrder;
}
</PRE></TD></TR></TBODY></TABLE><BR>
            <P>在這里可以看到用 JDOM 創建元素、使用屬性和添加元素內容有多么簡單。遞歸地調用復合 JavaBean 的 
            <CODE>toXml()</CODE> 方法是為了取得它們子圖的 <CODE>Element</CODE> 
            表示。例如,<CODE>items</CODE> 元素的內容是通過調用 <CODE>Order</CODE> 聚合的每個 
            <CODE>Item</CODE> 對象上的 <CODE>toXml()</CODE> 得到的。</P>
            <P>一旦所有的 JavaBean 都實現了 <CODE>toXml()</CODE> 方法,那么把任意對象圖序列化成 XML 
            文檔并返回給 Ajax 客戶機就簡單了,如清單 2 所示。</P><BR><BR><A name=code2><B>清單 2. 從 
            JDOM 元素生成 XML 響應</B></A><BR>
            <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
              <TBODY>
              <TR>
                <TD class=code-outline><PRE class=displaycode>				
public void doGet(HttpServletRequest req, HttpServletResponse res)
  throws java.io.IOException, ServletException {
    String custId = req.getParameter("username");
    Customer customer = getCustomer(custId);
    Element responseElem = customer.toXml();
    Document responseDoc = new Document(responseElem);
    res.setContentType("application/xml");
    new XMLOutputter().output(responseDoc,res.getWriter());
}
</PRE></TD></TR></TBODY></TABLE><BR>
            <P>JDOM 再次把工作變得非常簡單。只需要在對象圖返回的 XML 元素外面包裝一個 
            <CODE>Document</CODE>,然后用 <CODE>XMLOutputter</CODE> 把文檔寫入 servlet 
            響應即可。清單 3 顯示了用這種方式生成的 XML 示例,用 JDOM 
            <CODE>Format.getPrettyFormat()</CODE> 對 <CODE>XMLOutputter</CODE> 
            進行初始化,格式化得非常好。在這個示例中,顧客只做了一個訂單,包含兩個商品。</P><BR><BR><A 
            name=code3><B>清單 3. 代表顧客的 XML 文檔</B></A><BR>
            <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
              <TBODY>
              <TR>
                <TD class=code-outline><PRE class=displaycode>				
&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;customer username="jimmy66"&gt;
  &lt;realname&gt;James Hyrax&lt;/realname&gt;
  &lt;orders&gt;
    &lt;order id="o-11123" cost="$349.98"&gt;
      &lt;date&gt;08-26-2005&lt;/date&gt;
      &lt;items&gt;
        &lt;item id="i-55768"&gt;
          &lt;name&gt;Oolong 512MB CF Card&lt;/name&gt;
          &lt;description&gt;512 Megabyte Type 1 CompactFlash card. 
          Manufactured by Oolong Industries&lt;/description&gt;
          &lt;price&gt;$49.99&lt;/price&gt;
        &lt;/item&gt;
        &lt;item id="i-74491"&gt;
          &lt;name&gt;Fujak Superpix72 Camera&lt;/name&gt;
          &lt;description&gt;7.2 Megapixel digital camera featuring six 
          shooting modes and 3x optical zoom. Silver.&lt;/description&gt;
          &lt;price&gt;$299.99&lt;/price&gt;
        &lt;/item&gt;
      &lt;/items&gt;
    &lt;/order&gt;
  &lt;/orders&gt;
&lt;/customer&gt;
</PRE></TD></TR></TBODY></TABLE><BR>
            <P><A name=N1011E><SPAN class=smalltitle>自行序列化的不足</SPAN></A></P>
            <P>有趣的是,清單 3 中的代碼展示了讓 JavaBean 把自己序列化為 XML 
            的一個主要不足。假設要用這個文檔表示顧客的訂單歷史視圖。在這種情況下,不太可能要顯示每個歷史訂單中每個商品的完整說明,或者告訴顧客他或她自己的姓名。但是如果應用程序有一個 
            <CODE>ProductSearch</CODE> 類,它就是以 <CODE>Item</CODE> bean 
            列表的形式返回搜索結果,那么在 <CODE>Item</CODE> 的 XML 
            表示中包含說明可能會有幫助。而且,<CODE>Item</CODE> 
            類上代表當前庫存水平的額外字段,在產品搜索視圖中可能就是需要顯示的有用信息。但是,不管當前的庫存水平是否與當前情況相關(比如對顧客的訂單歷史來說),這個字段都會從包含 
            <CODE>Item</CODE> 的任何對象圖中序列化出來。</P>
            <P>從設計的角度來看,這是數據模型與視圖生成耦合的經典問題。每個 bean 只能用一種途徑序列化自己,一成不變的方式意味著 Ajax 
            交互最終要交換它們不需要交換的數據,因此造成客戶端代碼要從文檔中找到需要的信息更加困難,而且也會增加帶寬消耗和客戶端的 XML 
            解析時間。這種耦合的另一個后果就是 XML 的語法不能脫離 Java 類獨立變化。例如,對顧客文檔的方案做修改,可能會影響多個 Java 
            類,造成它們也不得不做修改和重新編譯。</P>
            <P>我稍后會解決這些問題,但是首先來看一個對自行序列化方式的可伸縮性問題的解決方案:XML 綁定框架。</P><BR>
            <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
              <TBODY>
              <TR>
                <TD><IMG height=1 alt="" 
                  src="面向 Java 開發人員的 Ajax Ajax 的 Java 對象序列化.files/blue_rule.gif" 
                  width="100%"><BR><IMG height=6 alt="" 
                  src="面向 Java 開發人員的 Ajax Ajax 的 Java 對象序列化.files/c.gif" width=8 
                  border=0></TD></TR></TBODY></TABLE>
            <TABLE class=no-print cellSpacing=0 cellPadding=0 align=right>
              <TBODY>
              <TR align=right>
                <TD><IMG height=4 alt="" 
                  src="面向 Java 開發人員的 Ajax Ajax 的 Java 對象序列化.files/c.gif" 
                  width="100%"><BR>
                  <TABLE cellSpacing=0 cellPadding=0 border=0>
                    <TBODY>
                    <TR>
                      <TD vAlign=center><IMG height=16 alt="" 
                        src="面向 Java 開發人員的 Ajax Ajax 的 Java 對象序列化.files/u_bold.gif" 
                        width=16 border=0><BR></TD>
                      <TD vAlign=top align=right><A class=fbox 
                        href="http://www.ibm.com/developerworks/cn/java/j-ajax2/#main"><B>回頁首</B></A></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE><BR><BR>
            <P><A name=N10141><SPAN class=atitle>XML 綁定框架</SPAN></A></P>
            <P>近些年來,已經開發了多個 Java API 來簡化 XML 文檔到 Java 對象圖的綁定過程。多數都提供了 XML 
            編排和拆解;也就是說,它們可以在 Java 對象圖和 XML 之間執行雙向會話。這些框架封裝了 XML 
            處理的全部工作,這意味著應用程序代碼只需要處理普通的 Java 
            類。它們還希望提供有用的輔助功能,例如文檔驗證。籠統來說,這些框架采用了兩種不同的方式:代碼生成和對象到 XML 
            映射。我將分別解釋這兩種方式。</P>
            <P><A name=N1014A><SPAN class=smalltitle>代碼生成方式</SPAN></A></P>
            <P>使用代碼生成的框架包括 XMLBeans、JAXB、Zeus 和 JBind。Castor 
            也能使用這項技術。這類框架的起點是描述文檔數據類型的 XML 方案。使用框架提供的工具,就可以生成代表這些方案定義類型的 Java 
            類。最后,用這些生成的類編寫應用程序,表示自己的模型數據,并通過框架提供的一些輔助機制把數據序列化成 XML。</P>
            <P>如果應用程序要使用大型 XML 語法,那么代碼生成方式是個很好的方法。在數十個類上編寫定制 XML 
            序列化代碼的可伸縮性問題由此消除。另一方面,也不再需要定義自己的 JavaBean。框架生成的 Java 類通常非常符合 XML 
            的結構,所以對它們進行編碼很難。而且,生成的類變成啞數據容器,因為一般不能向它們添加行為。一般來說,在應用程序代碼中要做些妥協,才能很好地處理方案生成的類型。另一個缺陷是如果修改方案,會造成生成的類也要修改,所以也就會對圍繞它們編寫的代碼帶來相應的影響。</P>
            <P>這種類型的 XML 綁定框架在數據拆解時最有用(例如,使用 XML 文檔并把它們轉化成 Java 
            對象)。除非擁有大型數據模型而且有可能從生成的類中獲益,否則基于代碼生成的框架對于 Ajax 應用程序來說可能有很大的殺傷力。</P>
            <P><A name=N10159><SPAN class=smalltitle>映射方式</SPAN></A></P>
            <P>采用映射方式的框架包括 Castor 和 Apache Commons 
            Betwixt。映射通常是比代碼生成更靈活和更輕量的解決方案。首先,可以像通常一樣編寫 
            JavaBean,包括任何行為以及任何自己喜歡的方便的方法。然后,在運行時,調用框架中基于內省的編排器,并根據對象成員的類型、名稱和值生成 
            XML 文檔。通過定義類的映射文件,可以覆蓋默認的綁定策略,并就類在 XML 中的表示方式對編排器提出建議。</P>
            <P>這種方法是在可伸縮性與靈活性之間的良好折中。可以按照自己喜歡的方式編寫 Java 類,編排器負責處理 
            XML。雖然映射定義文件編寫起來簡單,可伸縮性也足夠好,但是映射規則最多只能改變標準的綁定行為,而且在對象結構和它們的 XML 
            表示之間總要殘留一些耦合。最終,可能不得不在 Java 表示或 XML 格式之間任選一個做些折中,才能讓映射方法起作用。</P>
            <P><A name=N10165><SPAN class=smalltitle>數據綁定總結</SPAN></A></P>
            <P>Dennis Sosnoski 就 XML 數據綁定 API 
            的主題,在代碼生成和代碼映射兩個方面寫了深入的文章。如果想進一步研究這個領域,我推薦他在 Castor 
            和代碼生成框架方面的精彩文章(請參閱 <A 
            href="http://www.ibm.com/developerworks/cn/java/j-ajax2/#resources">參考資料</A> 
            中的鏈接)。</P>
            <P>總之,代碼生成方式損失了過多的靈活性和方便性,對于典型的 Ajax 
            應用程序用處不大。另一方面,基于映射的框架可能工作得很好,但是要恰到好處地調整它們的映射策略,以便從對象生成需要的 XML。</P>
            <P>所有的 XML 綁定 API 都具有手工序列化技術的一個主要不足:模型和視圖的耦合。被限制為一個類型一個 XML 
            表示,就意味著在網絡上總要有冗余數據傳輸。更嚴重的問題是,在情況要求客戶端代碼使用專門視圖時,客戶端代碼卻無法得到它,所以可能要費力地處理給定對象圖的一成不變的視圖。</P>
            <P>在傳統的 Web 應用程序開發中,采用頁面模板系統把視圖生成與控制器邏輯和模型數據干凈地分離。這種方法在 Ajax 
            場景中也會有幫助。</P><BR>
            <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
              <TBODY>
              <TR>
                <TD><IMG height=1 alt="" 
                  src="面向 Java 開發人員的 Ajax Ajax 的 Java 對象序列化.files/blue_rule.gif" 
                  width="100%"><BR><IMG height=6 alt="" 
                  src="面向 Java 開發人員的 Ajax Ajax 的 Java 對象序列化.files/c.gif" width=8 
                  border=0></TD></TR></TBODY></TABLE>
            <TABLE class=no-print cellSpacing=0 cellPadding=0 align=right>
              <TBODY>
              <TR align=right>
                <TD><IMG height=4 alt="" 
                  src="面向 Java 開發人員的 Ajax Ajax 的 Java 對象序列化.files/c.gif" 
                  width="100%"><BR>
                  <TABLE cellSpacing=0 cellPadding=0 border=0>
                    <TBODY>
                    <TR>
                      <TD vAlign=center><IMG height=16 alt="" 
                        src="面向 Java 開發人員的 Ajax Ajax 的 Java 對象序列化.files/u_bold.gif" 
                        width=16 border=0><BR></TD>
                      <TD vAlign=top align=right><A class=fbox 
                        href="http://www.ibm.com/developerworks/cn/java/j-ajax2/#main"><B>回頁首</B></A></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE><BR><BR>
            <P><A name=N1017B><SPAN class=atitle>頁面模板系統</SPAN></A></P>
            <P>任何通用目的的頁面模板技術都可以用來生成 XML,從而使 Ajax 應用程序根據自己的數據模型生成任何 XML 
            響應文檔。額外收獲是:模板可以用簡單的、表現力強的標記語言編寫,而不是用一行行的 Java 代碼編寫。清單 5 是一個 JSP 
            頁面,采用了 <CODE>Customer</CODE> bean 并表示出定制的 XML 
            視圖,適合客戶端代碼生成訂單歷史組件。</P><BR><BR><A name=code4><B>清單 4. 生成訂單歷史文檔的 
            JSP</B></A><BR>
            <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
              <TBODY>
              <TR>
                <TD class=code-outline><PRE class=displaycode>				
&lt;?xml version="1.0"?&gt;
&lt;%@ page contentType="application/xml" %&gt;
&lt;%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %&gt;
&lt;c:set var="cust" value="${requestScope.customer}"/&gt;
&lt;orderhistory username="${cust.username}"&gt;
&lt;c:forEach var="order" items="${cust.orders}"&gt;
  &lt;order id="${order.id}" cost="${order.formattedCost}"&gt;
    &lt;date&gt;${order.date}&lt;/date&gt;
    &lt;items&gt;
    &lt;c:forEach var="item" items="${order.items}"&gt;
      &lt;item id="${item.id}"&gt;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
免费成人小视频| 91精品免费在线| 欧日韩精品视频| 精品国产91久久久久久久妲己| 亚洲国产精品99久久久久久久久 | 日韩高清一级片| 韩国一区二区在线观看| 99久久精品国产精品久久| 一本大道综合伊人精品热热| 91麻豆精品91久久久久久清纯| 26uuu精品一区二区在线观看| 亚洲欧洲无码一区二区三区| 日韩国产精品久久| 不卡的av中国片| 欧美日韩国产精选| 国产精品沙发午睡系列990531| 久久久久久久国产精品影院| 一本久道中文字幕精品亚洲嫩| 欧美日精品一区视频| 久久综合色天天久久综合图片| 亚洲免费电影在线| 五月激情综合色| 91在线视频18| 久久久亚洲高清| 日本麻豆一区二区三区视频| 91在线视频观看| 久久久91精品国产一区二区精品 | 欧美韩日一区二区三区四区| 免费成人在线网站| 在线欧美日韩国产| 国产亚洲精久久久久久| 日韩**一区毛片| 91久久国产综合久久| 中文字幕一区二区三中文字幕| 激情丁香综合五月| www国产成人| 理论片日本一区| 色综合久久中文综合久久牛| 国产精品免费视频网站| 国产成人亚洲综合a∨婷婷| 欧美tk—视频vk| 国产一区二区福利视频| 久久久99精品免费观看不卡| 国产精品亚洲视频| 最新国产精品久久精品| 91在线免费看| 亚洲午夜激情网站| 欧美xfplay| 国产成人精品午夜视频免费| 国产日产欧美一区| 日本乱人伦aⅴ精品| 首页国产欧美久久| 久久影音资源网| 99riav久久精品riav| 一区二区三区在线免费视频| 91.com视频| 国产91对白在线观看九色| 亚洲欧美成aⅴ人在线观看 | 欧美日本一区二区三区四区| 六月婷婷色综合| 亚洲青青青在线视频| 欧美精品粉嫩高潮一区二区| 国产精品一二三四| 一个色综合av| 欧美精品一区二区三区蜜臀| 99国产欧美久久久精品| 久久av资源站| 亚洲大片精品永久免费| 国产亚洲人成网站| 欧美人牲a欧美精品| 国产成人av在线影院| 午夜精品福利一区二区三区蜜桃| 国产视频一区二区在线观看| 91成人免费电影| 岛国精品在线播放| 日本中文一区二区三区| 亚洲精品高清在线| 久久精品人人爽人人爽| 日韩亚洲欧美在线观看| 色综合久久88色综合天天6| 国产91高潮流白浆在线麻豆| 久久99精品国产91久久来源| 亚洲综合网站在线观看| 亚洲男人的天堂在线观看| 国产日产精品1区| 久久久精品tv| 久久奇米777| 国产三级精品视频| 国产日本亚洲高清| 中文字幕第一区综合| 国产片一区二区| 久久久国产午夜精品| 日韩美女一区二区三区四区| 欧美一区二区久久久| 4438x成人网最大色成网站| 8v天堂国产在线一区二区| 亚洲欧美日本在线| 一区二区三区欧美日韩| 亚洲国产精品久久一线不卡| 一区二区三区四区国产精品| 亚洲一区在线视频观看| 男人的天堂久久精品| 美女视频一区二区| 国产精品自拍在线| 99综合电影在线视频| 欧美午夜在线一二页| 51精品国自产在线| 欧美精品一区二区在线观看| 中文字幕乱码久久午夜不卡| 亚洲摸摸操操av| 亚洲免费在线播放| 男男成人高潮片免费网站| 久久99国产精品免费网站| 成人a免费在线看| 欧美丰满美乳xxx高潮www| 久久蜜桃av一区精品变态类天堂| 国产精品欧美精品| 日韩精品久久久久久| 成人污视频在线观看| 欧美喷潮久久久xxxxx| 日本一区二区免费在线观看视频| 亚洲国产另类av| 国产一区二区女| 91精品国产综合久久精品app| 久久一夜天堂av一区二区三区| 国产精品影视天天线| 欧美美女黄视频| 亚洲色图视频网| 国产精品影视在线观看| 欧美精品日日鲁夜夜添| 亚洲欧洲美洲综合色网| 狠狠色丁香久久婷婷综| 日韩欧美中文字幕一区| 亚洲一二三四区不卡| gogo大胆日本视频一区| 26uuu色噜噜精品一区二区| 一区二区三区鲁丝不卡| 成人久久久精品乱码一区二区三区| 日韩欧美激情四射| 另类的小说在线视频另类成人小视频在线 | 午夜精品久久久久久久久| 国产精品网站在线| 国产999精品久久久久久| 精品国产露脸精彩对白| 麻豆精品视频在线观看| 欧美一区二区三区视频在线| 亚洲高清免费视频| 日本韩国一区二区三区视频| 欧美视频在线一区二区三区 | 国产精品午夜在线| 94-欧美-setu| 日韩在线观看一区二区| 久久久久久久久久久99999| 91在线精品一区二区三区| 亚洲国产综合色| 在线成人av网站| 成人h版在线观看| 亚洲在线成人精品| 欧美成人aa大片| 国产成人免费视频网站高清观看视频| 久久午夜免费电影| 成人免费毛片aaaaa**| 一区二区三区四区亚洲| 日韩欧美在线网站| 成人午夜精品在线| 亚洲电影你懂得| 国产性色一区二区| 欧美日韩黄色一区二区| 国产91精品一区二区麻豆网站| 亚洲免费伊人电影| 久久蜜臀中文字幕| 亚洲视频免费在线观看| 日韩免费观看2025年上映的电影 | 91玉足脚交白嫩脚丫在线播放| 亚洲成a人在线观看| 亚洲国产电影在线观看| 宅男在线国产精品| 欧日韩精品视频| 国内精品写真在线观看| 五月开心婷婷久久| 亚洲欧洲美洲综合色网| 精品国产电影一区二区| 欧美精品欧美精品系列| 91亚洲永久精品| 国产91高潮流白浆在线麻豆| 日韩高清欧美激情| 性感美女久久精品| 亚洲精品自拍动漫在线| 国产精品女上位| 99re热视频这里只精品| 亚洲国产成人av网| 欧美一区2区视频在线观看| 国产一区二区精品久久99| 国产精品一区二区男女羞羞无遮挡| 轻轻草成人在线| 激情久久久久久久久久久久久久久久| 精品在线播放午夜| 国产传媒日韩欧美成人| 91在线视频18| 欧美高清你懂得|