Flex前端与Java服务端交互反射机制

c#小王子 c#小王子 2021-11-09 702 Java


Flex前端与Java服务端交互反射机制


Flex 前端与 Java 服务端交互反射机制


Flex 作为 RIA 的一支,提供了非常丰富多彩的客户端实现,并且编写起来非常灵活.Java提供了强大的功能实现,与 Flex 结合也让 Java 开发穿上了华丽外衣.BlazeDS 是 LCDS 的一个衍生版 ,为 Flex 和 Java 的交互提供通信桥梁 .BlazeDS 起到的作用并没有多么难理解,和 SSH 框架内部机制类似的是,都是提供了一种反射服务.比如,在Spring 中我们使用 IoC 特性,这些都是依靠的 Java 底层的反射机制.


简单说 Flex / BlazeDS /Java ,三者之间,BlazeDS 提供一种映射,使得 Flex 前端编码能够使用服务端的 Java 类



remoting-config.xml 文件: 
<span 
style="font-family:Comic Sans MS;font-size:18px;"><?xml
version="1.0" encoding="UTF-8"?>

<service id="remoting-service"
 
class="flex.messaging.services.RemotingService"> 

<adapters>
 <!--Java 对象 的适配器-->
 
<adapter-definition 
id="java-object"
class="flex.messaging.services.remoting.adapters.JavaAdapter"
default="true"/>

</adapters>

<default-channels>

<channel ref="my-amf"/>

</default-channels>

<destination id="userService">

<properties>

<source>com.java.Service.UserService</source>

</properties>

</destination>

</service>
</span>

在 Flex 前端,通过使用 Flex 提供的 RemoteObject 关键字,来获取映射中的 Java 对 
象,(关于 Flex 内部的一些有意思的机制,还是要好好细心学习的,这方面了解不多,就不卖弄

了.)

<span 
style="font-family:Comic Sans

MS;font-size:18px;"><fx:Declarations>
 <mx:RemoteObject 
destination="userService"

result="processResult(event)"

id="us" fault="Alert.show(event.fault.message.toString())"

endpoint="http://localhost:8080/BlazeDS_Java_Flex/messagebroker/amf">

</mx:RemoteObject>

</fx:Declarations>

</span>

现在,我们的 Flex 前端就已经能够调用服务端的 Java 方法了.


在最初接触 Flex 与 Java 交互时,都是需要做一个传参示例.主要是传自定义类型参数


(user:Users)和普通数据类型参数(str:String).


这里,大家要注意,我们自定义类型(Java 类) ,要在 Flex 端进行 OO 编程,需要拆箱装箱,


那么就需要 Flex 端能够识别 Java 类,这里就要提到 Flex 内部的一种映射机制.


创建一个 ActionScript 类,如下

 <span style="font-family:Comic Sans MS;font-size:18px;">package
com.flex.vo
{
[Bindable]
[RemoteClass(alias="com.java.entity.Users")]
public class Users
{
//注意,需要写好构造函数
public function Users()
{
} 
private var _name:String; 
private var _password:String;
public function get name():String
{ 
return _name; 
}
public function set name(value:String):void
{
_name = value;

}
public function get password():String
{
return _password;

}
public function set password(value:String):void
{

_password = value; 
}
}
 }</span>

这样经过 Flex 的内部映射,在 Java 端和 Flex 端,我们有了对应的一个实体类 Users 类,


那么我们就可以 OO 编程,在 Flex 前端,使用 AS 的实体类进行装箱,然后做参传递给 Java 类,


这样就能够完成了二者之间的自定义数据类型参数的传递.


框架应用都是浮云,底层提供的反射机制是王道啊.


不管你信不信,反正我是信了.


【下载地址】

链接:https://pan.baidu.com/s/1UQ4hriXYUanKRrN3fGNejw

提取码:78j0



相关文章


使用-JFreeChart来创建基于web的图表

使用-JFreeChart来创建基于web的图表

XStream使用文档

XStream使用文档

WebService发布过程及常见问题

WebService发布过程及常见问题

webpack实战入门进阶调优分享

webpack实战入门进阶调优分享

weblogic调优参数及监控指标

weblogic调优参数及监控指标

weblogic节点管理

weblogic节点管理

weblogic管理控制台概述

weblogic管理控制台概述

weblogic-部署和启动

weblogic-部署和启动

WebLogic-Server-性能及调优-调优-Java-虚拟机

Java 虚拟机(Java virtual machine,简称 JVM)是一种虚拟“执行引擎”实例,可在微处理器上执行 Java 类文件中的字节码。调整 JVM 的方式会影响 Weblogic Server 和应用程序的性能。

Velocity用户教程

Velocity是一个基于java的模板引擎(template engine)。它允许任何人仅仅简单的使用模板语言(template language)来引用由java代码定义的对象。

Velocity用户手册

Velocity 用户手册是帮助页面设计者和内容提供者认识 Velocity 和其简单而功能强大的脚本语言――Velocity 模板语言(VTL)。在手册上的许多例子,都是用 Velocity 插入动态的内容到网页上,但是所有的 VLT 例子都能应用到其他的页面和模板中。


文章热度: 166291
文章数量: 333
推荐阅读

FlashFXP绿色版网盘下载,附激活教程 1782

FlashFxp百度网盘下载链接:https://pan.baidu.com/s/1MBQ5gkZY1TCFY8A7fnZCfQ。FlashFxp是功能强大的FTP工具

Adobe Fireworks CS6 Ansifa绿色精简版网盘下载 1565

firework可以制作精美或是可以闪瞎眼的gif,这在广告领域是需要常用的,还有firework制作下logo,一些原创的图片还是很便捷的,而且fireworks用法简单,配合dw在做网站这一块往往会发挥出很强大的效果。百度网盘下载链接:https://pan.baidu.com/s/1fzIZszfy8VX6VzQBM_bdZQ

navicat for mysql中文绿色版网盘下载 1623

Navicat for Mysql是用于Mysql数据库管理的一款图形化管理软件,非常的便捷和好用,可以方便的增删改查数据库、数据表、字段、支持mysql命令,视图等等。百度网盘下载链接:https://pan.baidu.com/s/1T_tlgxzdQLtDr9TzptoWQw 提取码:y2yq

火车头采集器(旗舰版)绿色版网盘下载 1707

火车头采集器是站长常用的工具,相比于八爪鱼,简洁好用,易于配置。火车头能够轻松的抓取网页内容,并通过自带的工具对内容进行处理。站长圈想要做网站,火车头采集器是必不可少的。百度网盘链接:https://pan.baidu.com/s/1u8wUqS901HgOmucMBBOvEA

Photoshop(CS-2015-2023)绿色中文版软件下载 1823

安装文件清单(共46G)包含Window和Mac OS各个版本的安装包,从cs到cc,从绿色版到破解版,从安装文件激活工具,应有尽有,一次性打包。 Photoshop CC绿色精简版 Photoshop CS6 Mac版 Photoshop CC 2015 32位 Photoshop CC 2015 64位 Photoshop CC 2015 MAC版 Photoshop CC 2017 64位 Adobe Photoshop CC 2018 Adobe_Photoshop_CC_2018 Photoshop CC 2018 Win32 Photoshop CC 2018 Win64

知之

知之平台是全球领先的知识付费平台。提供各个领域的项目实战经验分享,提供优质的行业解决方案信息,来帮助您的工作和学习

使用指南 建议意见 用户协议 友情链接 隐私政策 Powered by NOOU ©2020 知之