我的漫漫程序之旅

          專注于JavaWeb開發
          隨筆 - 39, 文章 - 310, 評論 - 411, 引用 - 0
          數據加載中……

          flex3 Grid獲取jsp數據的簡單應用

          很多時候我們需要在jsp展現數據用的都是table,來看看
          用flex3的Grid怎么做。

          測試數據:

           if object_id('product'is not null 
             
          drop table product

          create table product
          (
            id 
          int primary key identity(1,1),
            productName 
          varchar(50),
            remark 
          varchar(100)
          )

          declare @i int
          set @i = 1
          while @i < 100
          begin
             
          insert into product values('產品' + convert(varchar(3),@i),'備注' + convert(varchar(3),@i))
             
          set @i = @i + 1
          end


          select * from product

          grid需要的是xml數據源:
          <?xml version="1.0" encoding="utf-8"?>
          <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="list.send()">
              
          <!--jsp請求-->
              
          <!--<mx:HTTPService id="list" url="../index.jsp" />-->
              
          <!--Servlet請求-->
              
          <mx:HTTPService id="list" url="../productServlet" />
              
          <!--grid數據綁定-->
              
          <mx:DataGrid dataProvider="{list.lastResult.catalog.product}"  width="395" height="307" x="223" y="54" color="#F2C50F"></mx:DataGrid>
          </mx:Application>

          看一提供數據的Servlet:
          package com;

          import java.io.IOException;
          import java.io.PrintWriter;
          import java.util.List;

          import javax.servlet.ServletException;
          import javax.servlet.http.HttpServlet;
          import javax.servlet.http.HttpServletRequest;
          import javax.servlet.http.HttpServletResponse;

          import com.dao.ProductDao;
          import com.vo.Product;

          @SuppressWarnings(
          "serial")
          public class ProductServlet extends HttpServlet
          {
              
          public void doGet(HttpServletRequest request, HttpServletResponse response)
                      
          throws ServletException, IOException
              
          {

                  response.setContentType(
          "text/html");
                  response.setCharacterEncoding(
          "utf-8");
                  PrintWriter out 
          = response.getWriter();
                  String str 
          = "<?xml version=\"1.0\" encoding=\"utf-8\"?>";
                  str 
          += "<catalog>";
                  ProductDao srv 
          = new ProductDao();
                  List
          <Product> list = null;
                  list 
          = srv.getAll();
                  Product product;
                  
          for (int i = 0; i < list.size(); i++)
                  
          {
                      product 
          = (Product) list.get(i);
                      str 
          += "<product productId=\"" + product.getId() + "\">";
                      str 
          += "<productName>" + product.getProductName() + "</productName>";
                      str 
          +=     "<remark>" + product.getRemark() +"</remark>";
                      str 
          += "</product>";
                  }

                  str 
          += "</catalog>";
                  out.write(str);
                  
              }


              
          public void doPost(HttpServletRequest request, HttpServletResponse response)
                      
          throws ServletException, IOException
              
          {
                  
          this.doGet(request, response);
              }


          }

          當然你也可以寫成jsp的形式:
          <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
          <%@page import="com.dao.ProductDao"%>
          <%@page import="com.vo.Product"%>

          <?xml version="1.0" encoding="utf-8"?>
          <catalog>
          <%
              ProductDao srv 
          = new ProductDao();
              List
          <Product> list = null;
              list 
          = srv.getAll();
              Product product;
              
          for (int i = 0; i < list.size(); i++)
              {
                  product 
          = (Product) list.get(i);
          %>
          <product productId="<%=product.getId()%>">
              
          <productName><%=product.getProductName()%></productName>
              
          <remark><%=product.getRemark()%></remark>
          </product>
          <%
              }
          %></catalog>

          HTTPService標簽實例化一個對象它將會請求jsp和反序列化請求對象。url屬性需要指定jsp或Servlet Action并且返回xml數據。其中list是HTTPService標簽的id,lastResult屬性包含了一個對象叫"catalog",相當于xml的catalog節點。在catalog節點下有節點數組product.這個list.lastResult.catalog.product相當于從HTTPService請求jsp返回的數組。

           如圖:




          posted on 2008-11-10 10:14 々上善若水々 閱讀(2245) 評論(0)  編輯  收藏


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


          網站導航:
           
          主站蜘蛛池模板: 淄博市| 伊通| 安义县| 龙里县| 县级市| 高陵县| 方山县| 桃江县| 固始县| 西乡县| 克拉玛依市| 隆昌县| 隆安县| 盐亭县| 印江| 台南市| 敦化市| 出国| 六枝特区| 尉氏县| 体育| 璧山县| 仙游县| 沿河| 镇平县| 武清区| 平顶山市| 晋城| 汨罗市| 枣强县| 九台市| 博爱县| 阳城县| 韶山市| 正安县| 呼和浩特市| 馆陶县| 上蔡县| 邻水| 瑞丽市| 丁青县|