Flex与Java通信 BlazeDS方式 查询
2013-06-18 03:35
525 查看
Flex与java通信最简单例子(详细说明了各种需要注意的配置):http://blog.csdn.net/u010011052/article/details/9116869
Flex与java通信(java解析xml返回List,Flex调用java展示数据):http://blog.csdn.net/u010011052/article/details/9127643
这个例子要说的是:
通过java查询数据库返回实体对象集合给Flex,Flex进行展示数据:
1、java中的实体类
2、JDBC连接Oracle的工具类:
这里就不贴出来了,想看的点这个里边就是这里用的连接工具类:http://blog.csdn.net/u010011052/article/details/9116873
3、Java查询方法:
4、配置
remoting-config.xml 文件,准备工作不啰嗦了,前面已有详解:http://blog.csdn.net/u010011052/article/details/9116869
5、创建Flex项目(这个很关键,详细配置方法http://blog.csdn.net/u010011052/article/details/9116869),并编写mxml应用程序:
6、现在可以直接运行mxml文件查看数据,当然这里写的是我的数据库查询,你将你的程序稍稍改动即可。
这个写法直接拿来用。
Flex与java通信(java解析xml返回List,Flex调用java展示数据):http://blog.csdn.net/u010011052/article/details/9127643
这个例子要说的是:
通过java查询数据库返回实体对象集合给Flex,Flex进行展示数据:
1、java中的实体类
package tobaccoTrans.entity; import javax.persistence.Id; import java.io.Serializable; /** * @author DWJ */ @javax.persistence.Entity public class VIEW_CORP implements java.io.Serializable { // Fields @Id private String code; private String gbcode; private String name; private String simplename; private String style; private String parent; private String flag; public String getCode() { return code; } public void setCode(String code) { this.code = code; } public String getGbcode() { return gbcode; } public void setGbcode(String gbcode) { this.gbcode = gbcode; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getSimplename() { return simplename; } public void setSimplename(String simplename) { this.simplename = simplename; } public String getStyle() { return style; } public void setStyle(String style) { this.style = style; } public String getParent() { return parent; } public void setParent(String parent) { this.parent = parent; } public String getFlag() { return flag; } public void setFlag(String flag) { this.flag = flag; } }
2、JDBC连接Oracle的工具类:
这里就不贴出来了,想看的点这个里边就是这里用的连接工具类:http://blog.csdn.net/u010011052/article/details/9116873
3、Java查询方法:
package tobaccoTrans.dao.impl; import java.sql.Connection; import java.sql.ResultSet; import java.sql.Statement; import java.util.ArrayList; import java.util.List; import tobaccoTrans.util.*; import tobaccoTrans.entity.VIEW_CORP; /** * @author DWJ */ public class CorpDaoImpl extends ConnectionUtil { private Connection con = null; private Statement stmt = null; private ResultSet rs = null; /** * 方法说明:执行查询SQL语句 * 输入参数:Connection con 数据库连接 * 输入参数:String sql 要执行的SQL语句 * 返回类型:void */ public List getAllCorp(String code,String gbcode,String name,String simplename,String style,String parent) { List<VIEW_CORP> list = new ArrayList<VIEW_CORP>(); try { String sql = "select * from VIEW_CORP where 0 = 0 "; if (code != null && code.trim().length() != 0) sql = sql + " and code = '" + code + "' "; if (gbcode != null && gbcode.trim().length() != 0) sql = sql + " and gbcode = '" + gbcode + "' "; if (name != null && name.trim().length() != 0) sql = sql + " and name = '" + name + "' "; if (simplename != null && simplename.trim().length() != 0) sql = sql + " and simplename = '" + simplename + "' "; if (style != null && style.trim().length() != 0) sql = sql + " and style = '" + style + "' "; if (parent != null && parent.trim().length() != 0) sql = sql + " and parent = '" + parent + "' "; con = this.getConnection(); stmt = con.createStatement(); // 获取Staetment对象 rs = stmt.executeQuery(sql); // 执行数据库操作(查询操作) while(rs.next()) { VIEW_CORP corp = new VIEW_CORP(); corp.setCode(rs.getString("code")); corp.setGbcode(rs.getString("gbcode")); corp.setName(rs.getString("name")); corp.setSimplename(rs.getString("simplename")); corp.setStyle(rs.getString("style")); corp.setParent(rs.getString("parent")); corp.setFlag(rs.getString("flag")); list.add(corp); } } catch (Exception e) { e.printStackTrace(); }finally{ this.closeResultSet(rs); this.closeStatement(stmt); this.closeConn(con); } return list; } }
4、配置
remoting-config.xml 文件,准备工作不啰嗦了,前面已有详解:http://blog.csdn.net/u010011052/article/details/9116869
<?xml version="1.0" encoding="UTF-8"?> <service id="remoting-service" class="flex.messaging.services.RemotingService"> <adapters> <adapter-definition id="java-object" class="flex.messaging.services.remoting.adapters.JavaAdapter" default="true"/> </adapters> <default-channels> <channel ref="my-amf"/> </default-channels> <!-- 这里配置你的java类,source路径是包名。类名 id随便起个名字 --> <destination id="CorpDaoImpl"> <properties> <source>tobaccoTrans.dao.impl.CorpDaoImpl</source> </properties> </destination> </service>
5、创建Flex项目(这个很关键,详细配置方法http://blog.csdn.net/u010011052/article/details/9116869),并编写mxml应用程序:
<?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" initialize="init()" minWidth="955" minHeight="600"> <fx:Script> <![CDATA[ import mx.collections.ArrayCollection; import mx.events.FlexEvent; import mx.rpc.events.FaultEvent; import mx.rpc.events.ResultEvent; [Bindable] private function init():void { // TODO Auto-generated method stub // 这里拿到的是一个 List<VIEW_CORP> 实体对象集合 cdi.getAllCorp("","","","","",""); //remotingtest.showVal(); } [Bindable] var corpList:ArrayCollection = new ArrayCollection(); protected function cdi_resultHandler(event:ResultEvent):void { // TODO Auto-generated method stub corpList = event.result as ArrayCollection; } [Bindable] protected function cdi_faultHandler(event:FaultEvent):void { } ]]> </fx:Script> <fx:Declarations> <!-- 将非可视元素(例如服务、值对象)放在此处 --> <s:RemoteObject id="cdi" destination="CorpDaoImpl" result="cdi_resultHandler(event)" fault="cdi_faultHandler(event)" /> </fx:Declarations> <mx:Panel x="16" y="15" width="95%" height="95%" title="展示Cprp数据Panel"> <mx:DataGrid x="15" y="15" width="92%" height="92%" id="dataGrid" dataProvider="{corpList}"> <mx:columns> <mx:DataGridColumn headerText="code" dataField="code" /> <mx:DataGridColumn headerText="gbcode" dataField="gbcode" /> <mx:DataGridColumn headerText="name" dataField="name" /> <mx:DataGridColumn headerText="simplename" dataField="simplename" /> <mx:DataGridColumn headerText="style" dataField="style" /> <mx:DataGridColumn headerText="parent" dataField="parent" /> <mx:DataGridColumn headerText="flag" dataField="flag" /> </mx:columns> </mx:DataGrid> </mx:Panel> </s:Application>
6、现在可以直接运行mxml文件查看数据,当然这里写的是我的数据库查询,你将你的程序稍稍改动即可。
这个写法直接拿来用。
相关文章推荐
- flex和java实体类的映射关系(blazeds方式通信)
- 实现Flex与Java的通信的Demo(BlazeDS方式)
- Flex与Java通信 BlazeDS方式 解析xml
- Flex与Java通信 BlazeDS方式 最详尽的解析
- Flex与Java通信之HttpService方式
- Flex4 + Blazeds + Java 通信
- BlazeDS, Flex与Java通信
- Flex同Java通信--BlazeDS入门图文详解(上)
- flex与java通信:blazeds配置文件
- Flex 与 Java 数据交互一种方式(Blazeds)
- flex与java通信 -----BlazeDS安装
- Flex4之与后台服务器通信方式:URLRequest+URLLoader【JAVA方式】
- Flex与java通过BlazeDS实现通信(简单Demo)
- Flex同Java通信--BlazeDS,通信失败
- 用BlazeDS实现Java和Flex通信!
- Flex同Java通信--BlazeDS入门图文详解(上)
- Flex同Java通信--BlazeDS入门图文详解(上)
- 关于Flex 和java之间利用Blazeds通信的类型转换问题
- Java与Flex学习笔记(4)----Flex与Java通信之RemoteObject方式
- Flex 与 Java通信 RemoteObject 方式