flex3 Grid获取jsp数据的简单应用

很多时候我们需要在jsp展现数据用的都是table,来看看
用flex3的Grid怎么做。

测试数据:

flex3 Grid获取jsp数据的简单应用 if object_id('product'is not null 
flex3 Grid获取jsp数据的简单应用   
drop table product
flex3 Grid获取jsp数据的简单应用
flex3 Grid获取jsp数据的简单应用
create table product
flex3 Grid获取jsp数据的简单应用(
flex3 Grid获取jsp数据的简单应用  id 
int primary key identity(1,1),
flex3 Grid获取jsp数据的简单应用  productName 
varchar(50),
flex3 Grid获取jsp数据的简单应用  remark 
varchar(100)
flex3 Grid获取jsp数据的简单应用)
flex3 Grid获取jsp数据的简单应用
flex3 Grid获取jsp数据的简单应用
declare @i int
flex3 Grid获取jsp数据的简单应用
set @i = 1
flex3 Grid获取jsp数据的简单应用
while @i < 100
flex3 Grid获取jsp数据的简单应用
begin
flex3 Grid获取jsp数据的简单应用   
insert into product values('产品' + convert(varchar(3),@i),'备注' + convert(varchar(3),@i))
flex3 Grid获取jsp数据的简单应用   
set @i = @i + 1
flex3 Grid获取jsp数据的简单应用
end
flex3 Grid获取jsp数据的简单应用
flex3 Grid获取jsp数据的简单应用
flex3 Grid获取jsp数据的简单应用
select * from product

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

看一提供数据的Servlet:
flex3 Grid获取jsp数据的简单应用package com;
flex3 Grid获取jsp数据的简单应用
flex3 Grid获取jsp数据的简单应用
import java.io.IOException;
flex3 Grid获取jsp数据的简单应用
import java.io.PrintWriter;
flex3 Grid获取jsp数据的简单应用
import java.util.List;
flex3 Grid获取jsp数据的简单应用
flex3 Grid获取jsp数据的简单应用
import javax.servlet.ServletException;
flex3 Grid获取jsp数据的简单应用
import javax.servlet.http.HttpServlet;
flex3 Grid获取jsp数据的简单应用
import javax.servlet.http.HttpServletRequest;
flex3 Grid获取jsp数据的简单应用
import javax.servlet.http.HttpServletResponse;
flex3 Grid获取jsp数据的简单应用
flex3 Grid获取jsp数据的简单应用
import com.dao.ProductDao;
flex3 Grid获取jsp数据的简单应用
import com.vo.Product;
flex3 Grid获取jsp数据的简单应用
flex3 Grid获取jsp数据的简单应用@SuppressWarnings(
"serial")
flex3 Grid获取jsp数据的简单应用
public class ProductServlet extends HttpServlet
flex3 Grid获取jsp数据的简单应用flex3 Grid获取jsp数据的简单应用
flex3 Grid获取jsp数据的简单应用{
flex3 Grid获取jsp数据的简单应用    
public void doGet(HttpServletRequest request, HttpServletResponse response)
flex3 Grid获取jsp数据的简单应用            
throws ServletException, IOException
flex3 Grid获取jsp数据的简单应用flex3 Grid获取jsp数据的简单应用    
flex3 Grid获取jsp数据的简单应用{
flex3 Grid获取jsp数据的简单应用
flex3 Grid获取jsp数据的简单应用        response.setContentType(
"text/html");
flex3 Grid获取jsp数据的简单应用        response.setCharacterEncoding(
"utf-8");
flex3 Grid获取jsp数据的简单应用        PrintWriter out 
= response.getWriter();
flex3 Grid获取jsp数据的简单应用        String str 
= "<?xml version=\"1.0\" encoding=\"utf-8\"?>";
flex3 Grid获取jsp数据的简单应用        str 
+= "<catalog>";
flex3 Grid获取jsp数据的简单应用        ProductDao srv 
= new ProductDao();
flex3 Grid获取jsp数据的简单应用        List
<Product> list = null;
flex3 Grid获取jsp数据的简单应用        list 
= srv.getAll();
flex3 Grid获取jsp数据的简单应用        Product product;
flex3 Grid获取jsp数据的简单应用        
for (int i = 0; i < list.size(); i++)
flex3 Grid获取jsp数据的简单应用flex3 Grid获取jsp数据的简单应用        
flex3 Grid获取jsp数据的简单应用{
flex3 Grid获取jsp数据的简单应用            product 
= (Product) list.get(i);
flex3 Grid获取jsp数据的简单应用            str 
+= "<product productId=\"" + product.getId() + "\">";
flex3 Grid获取jsp数据的简单应用            str 
+= "<productName>" + product.getProductName() + "</productName>";
flex3 Grid获取jsp数据的简单应用            str 
+=     "<remark>" + product.getRemark() +"</remark>";
flex3 Grid获取jsp数据的简单应用            str 
+= "</product>";
flex3 Grid获取jsp数据的简单应用        }

flex3 Grid获取jsp数据的简单应用        str 
+= "</catalog>";
flex3 Grid获取jsp数据的简单应用        out.write(str);
flex3 Grid获取jsp数据的简单应用        
flex3 Grid获取jsp数据的简单应用    }

flex3 Grid获取jsp数据的简单应用
flex3 Grid获取jsp数据的简单应用    
public void doPost(HttpServletRequest request, HttpServletResponse response)
flex3 Grid获取jsp数据的简单应用            
throws ServletException, IOException
flex3 Grid获取jsp数据的简单应用flex3 Grid获取jsp数据的简单应用    
flex3 Grid获取jsp数据的简单应用{
flex3 Grid获取jsp数据的简单应用        
this.doGet(request, response);
flex3 Grid获取jsp数据的简单应用    }

flex3 Grid获取jsp数据的简单应用
flex3 Grid获取jsp数据的简单应用}

flex3 Grid获取jsp数据的简单应用
当然你也可以写成jsp的形式:
flex3 Grid获取jsp数据的简单应用flex3 Grid获取jsp数据的简单应用<%flex3 Grid获取jsp数据的简单应用@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
flex3 Grid获取jsp数据的简单应用flex3 Grid获取jsp数据的简单应用
<%flex3 Grid获取jsp数据的简单应用@page import="com.dao.ProductDao"%>
flex3 Grid获取jsp数据的简单应用flex3 Grid获取jsp数据的简单应用
<%flex3 Grid获取jsp数据的简单应用@page import="com.vo.Product"%>
flex3 Grid获取jsp数据的简单应用
flex3 Grid获取jsp数据的简单应用
<?xml version="1.0" encoding="utf-8"?>
flex3 Grid获取jsp数据的简单应用
<catalog>
flex3 Grid获取jsp数据的简单应用flex3 Grid获取jsp数据的简单应用
<%flex3 Grid获取jsp数据的简单应用
flex3 Grid获取jsp数据的简单应用    ProductDao srv 
= new ProductDao();
flex3 Grid获取jsp数据的简单应用    List
<Product> list = null;
flex3 Grid获取jsp数据的简单应用    list 
= srv.getAll();
flex3 Grid获取jsp数据的简单应用    Product product;
flex3 Grid获取jsp数据的简单应用    
for (int i = 0; i < list.size(); i++)
flex3 Grid获取jsp数据的简单应用    {
flex3 Grid获取jsp数据的简单应用        product 
= (Product) list.get(i);
flex3 Grid获取jsp数据的简单应用
%>
flex3 Grid获取jsp数据的简单应用
<product productId="<%=product.getId()%>">
flex3 Grid获取jsp数据的简单应用    
<productName><%=product.getProductName()%></productName>
flex3 Grid获取jsp数据的简单应用    
<remark><%=product.getRemark()%></remark>
flex3 Grid获取jsp数据的简单应用
</product>
flex3 Grid获取jsp数据的简单应用flex3 Grid获取jsp数据的简单应用
<%flex3 Grid获取jsp数据的简单应用
flex3 Grid获取jsp数据的简单应用    }
flex3 Grid获取jsp数据的简单应用
%></catalog>
flex3 Grid获取jsp数据的简单应用

HTTPService标签实例化一个对象它将会请求jsp和反序列化请求对象。url属性需要指定jsp或Servlet Action并且返回xml数据。其中list是HTTPService标签的id,lastResult属性包含了一个对象叫"catalog",相当于xml的catalog节点。在catalog节点下有节点数组product.这个list.lastResult.catalog.product相当于从HTTPService请求jsp返回的数组。

 如图:

flex3 Grid获取jsp数据的简单应用