「flexjava流」java使用flex

博主:adminadmin 2023-01-25 18:12:13 369

今天给各位分享flexjava流的知识,其中也会对java使用flex进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

flex 在java端将数据以request.setAttribute("a",string);存入 那在flex端怎么取出来?

1、如果你是把属性放入request对象中,那你在flex端可以同过调用js函数来获取这个值

2、你可以把这个值写入flex调用接口的返回值中,比如你用HttpService方式连接,你可以返回xml到flex端,在flex端通过解析xml来获取值

flex调用Java方法连接sqlserver

基于blazeDS的flex4与spring的程序实例步骤

环境:

jdk1.6

j2ee1.5

spring2.5.6

blazeDS3.3

tomcat6.0

flex4

myeclipse8.5

flashBuilder4

步骤:

一、 启动好blazeDS(即启动tomcat,在[tomcat]/webapps目录下产生一个blazeds文件夹(三个war包产生一个blazeds文件夹));

在myeclipse8.5新建一个web Project工程,工程名为webSpring;

把此工程加入blazeDS支持(即用blazeds下的WEB-INF文件夹替换掉web工程下的WEB-INF文件夹);

加入spring支持(把spring相关的jar包拷贝到webSpring/WebRoot/WEB-INF/lib目录下即可)。

二、 1. 在javaWeb工程webSpring的str目录下分别新建一下两个包:

cn.xuediit.myFactory、cn.xuediit.myService;

2. 在cn.xuediit.myFctory包下新建两个类:FlexFactoryImpl.java和SpringFactoryInstance.java

(1). FlexFactoryImpl.java:

package cn.xuediit.myFactory;

import org.apache.commons.logging.Log;

import org.apache.commons.logging.LogFactory;

import flex.messaging.FactoryInstance;

import flex.messaging.FlexFactory;

import flex.messaging.config.ConfigMap;

public class FlexFactoryImpl implements FlexFactory {

private Log log = LogFactory.getLog(getClass());

/*override interface method*/

public void initialize(String id, ConfigMap configMap) {

System.out.println("1---flex工厂实现类重写的方法initialize");

}

/*override interface method*/

public FactoryInstance createFactoryInstance(String id, ConfigMap properties) {

System.out.println("2---flex工厂实现类重写的方法createFactoryInstance");

log.info("Create FactoryInstance.");

SpringFactoryInstance instance = new SpringFactoryInstance(this, id, properties);

instance.setSource(properties.getPropertyAsString(SOURCE, instance.getId()));

return instance;

}

/*override interface method*/

public Object lookup(FactoryInstance instanceInfo) {

System.out.println("4---flex工厂实现类重写的方法lookup");

log.info("Lookup service object.");

return instanceInfo.lookup();

}

}

(2).SpringFactoryInstance.java

package cn.xuediit.myFactory;

import org.apache.commons.logging.Log;

import org.apache.commons.logging.LogFactory;

import org.springframework.beans.BeansException;

import org.springframework.beans.factory.NoSuchBeanDefinitionException;

import org.springframework.context.ApplicationContext;

import org.springframework.web.context.support.WebApplicationContextUtils;

import flex.messaging.FactoryInstance;

import flex.messaging.FlexContext;

import flex.messaging.FlexFactory;

import flex.messaging.config.ConfigMap;

import flex.messaging.services.ServiceException;

public class SpringFactoryInstance extends FactoryInstance {

private Log log = LogFactory.getLog(getClass());

SpringFactoryInstance(FlexFactory factory, String id, ConfigMap properties) {

super(factory, id, properties);

}

public Object lookup() {

System.out.println("3---spring工厂类的方法lookup");

ApplicationContext appContext = WebApplicationContextUtils.getRequiredWebApplicationContext(FlexContext.getServletConfig().getServletContext());

String beanName = getSource();

try {

log.info("Lookup bean from Spring ApplicationContext: " + beanName);

return appContext.getBean(beanName);

} catch (NoSuchBeanDefinitionException nex) {

ServiceException e = new ServiceException();

String msg = "Spring service named '" + beanName + "' does not exist.";

e.setMessage(msg);

e.setRootCause(nex);

e.setDetails(msg);

e.setCode("Server.Processing");

throw e;

} catch (BeansException bex) {

ServiceException e = new ServiceException();

String msg = "Unable to create Spring service named '" + beanName + "'.";

e.setMessage(msg);

e.setRootCause(bex);

e.setDetails(msg);

e.setCode("Server.Processing");

throw e;

} catch (Exception ex) {

ServiceException e = new ServiceException();

String msg = "Unexpected exception when trying to create Spring service named '" + beanName + "'.";

e.setMessage(msg);

e.setRootCause(ex);

e.setDetails(msg);

e.setCode("Server.Processing");

throw e;

}

}

}

3. 在cn.xuediit.myService包下新建两个类:FService.java和FServicesImpl.java

(1). FService.java

package cn.xuediit.myService;

public interface FService {

public String sayHello(String name);

}

(2). FServicesImpl.java

package cn.xuediit.myService;

public class FServicesImpl implements FService {

public String sayHello(String name) {

System.out.println("5---服务层实现类(本质上的与flex交互的类)");

return "我是服务层的服务实现类==" + name;

}

}

三、 1、 在javaWeb工程webSpring下,在文件webSpring/WebRoot/WEB-INF/web.xml的web-app标签下添加子节点:

listener

listener-class

org.springframework.web.context.ContextLoaderListener

/listener-class

/listener

2、 在javaWeb工程webSpring下,在webSpring/WebRoot/WEB-INF目录下新建一个文件:applicationContext.xml

?xml version="1.0" encoding="UTF-8"?

beans xmlns=""

xmlns:xsi=""

xmlns:tx=""

xsi:schemaLocation="

"

bean id="fServiceImplBeanID" class="cn.xuediit.myService.FServicesImpl"/bean

/beans

四、 1、 在javaWeb工程webSpring下,在WebRoot/WEB-INF/flex/remoting-config.xml文件中的service标签下添加:

destination id="destinationID"

properties

factoryflexFactoryImplID/factory

sourcefServiceImplBeanID/source

scopeapplication/scope

/properties

/destination

2、 在javaWeb工程webSpring下,在WebRoot/WEB-INF/flex/services-config.xml文件中的services-config标签下添加:

factories

factory id="flexFactoryImplID" class="cn.xuediit.myFactory.FlexFactoryImpl"/

/factories

五、 给此javaWeb工程添加tomcat支持,启动tomcat(这个容易就不说了)。

六、 在flashBuilder下新建一个基于blazeDS的flex项目(以webSpring为后台工程),工程名为webFb;

webFb.mxml:

?xml version="1.0" encoding="utf-8"?

s:Application xmlns:fx=""

xmlns:s="library://ns.adobe.com/flex/spark"

xmlns:mx="library://ns.adobe.com/flex/halo"

minWidth="500" minHeight="200"

fx:Script

![CDATA[

import mx.core.Application;

import mx.rpc.events.FaultEvent;

import mx.collections.ArrayCollection;

import mx.rpc.remoting.mxml.RemoteObject;

import mx.controls.Alert;

import mx.rpc.events.ResultEvent;

public function submit(name:String):void{

var remote:RemoteObject = new RemoteObject();

remote.destination = "destinationID";

remote.endpoint = "";

remote.addEventListener(ResultEvent.RESULT, myResult);

remote.addEventListener(FaultEvent.FAULT,fault);

remote.sayHello(name);

}

private function myResult(evt:ResultEvent):void{

Alert.show(evt.result.toString());

}

private function fault(evt:FaultEvent):void{

Alert.show(evt.fault.message);

}

]]

/fx:Script

s:Button x="240" y="11" label="要发送到" click="submit(nameTxt.text)"/

s:Label x="16" y="11" text="姓名"/

s:TextInput id="nameTxt" x="100" y="100"/

/s:Application

单机的Flex桌面程序 和 java 怎么进行数据交互 不需要web服务器,不用socket,单机!

socket不一定架服务器,你可以本地localhost通信

可以视为你的客户端和服务器端都在本机,socket都指向本地 最简单的JAVA聊天室就是这样了,当本地用就是了

这样最简单

java做成服务器 端 ,接收本地发的socket ,然后处理数据库,返回给Flex

只是让java 与flex通过socket当桥通信 ,并不经过什么web 服务器

好比: 两台电脑用一根网线连接,并且没上网,但就可以使用网络传输数据一样,

可以选择用jason,xml通信 ,因为不论什么程序都好解析

java编程,flex是什么东西

简单的说一下,flex之所以出现,是应为编写flash对于编程人员来说太hard了,编写flash要用美术功底,还要一帧一帧的弄,对程序员来说太难,所以flex应运出世。flex就是以编程(程序员熟悉)的方式来实现flash功能,所用语言为actionscript语言,最后会编译出一个swf文件,也就是flash文件,这样对程序员来说就方便多了。听同事说google地图(网页)好像就是用flex做的。

flex 与 java 通讯失败

对啊,修改配置文件之后必须要重启服务器才可以啊。以后注意了就可以了。

另外一般情况下修改一半类是不用重启服务器的,服务器都是直接可以加载修改后的类的。修改静态类或是静态方法最好重启。写的做的多了你就知道了。经验都是这样积累起来的

flex是什么?说得具体点

flex通常是指Adobe Flex,是最初由Macromedia公司在2004年3月发布的,基于其专有的Macromedia Flash平台,它是涵盖了支持RIA(Rich Internet Applications)的开发和部署的一系列技术组合。flex的另一个意思是是一款生成扫描器的工具,能够识别文本中的词法模式。

Flex 是一个高效、免费的开源框架,可用于构建具有表现力的 Web 应用程序,这些应用程序利用 Adobe Flash Player和 Adobe AIR, 运行时跨浏览器、桌面和操作系统实现一致的部署。虽然只能使用 Flex 框架构建 Flex 应用程序,但Adobe Flash Builder™(之前称为 Adobe Flex® Builder™)软件可以通过智能编码、交互式遍历调试以及可视设计用户界面布局等功能加快开发。 使用 Flex 创建的 RIA 可运行于使用 Adobe Flash Player 软件的浏览器中,或在浏览器外运行于跨操作系统运行时 Adobe AIR® 上,它们可以跨所有主要浏览器、在桌面上实现一致的运行。连接到 Internet 的计算机中超过 98% 装有 Flash Player,这是一个企业级客户端运行时,它的高级矢量图形能处理要求最高、数据密集型应用程序,同时达到桌面应用程序的执行速度。通过利用 AIR,Flex 应用程序可以访问本地数据和系统资源。

Macromedia Flash是强大的矢量动画编辑工具,在做动画起家之后,Flash一直在谋求RIA(rich internet application)富客户端的霸主地位,最有影响的是,已经推出了面向对象的编程脚本ActionScript3.0,并且建立起类似于java swing的类库和相应component(组件)。Flex是通过java或者.net等非Flash途径,解释.mxml文件组织components,并生成相应的.swf文件。Flex的component和flash的component很相似,但是有所改进增强。目前Macromedia公司已经被ADOBE公司收购。当前(2011年11月)的flex版本为4.6。 运用Flash是完全可以做到flex的效果的,为什么还需要flex呢?这里面有两个原因: 1:为了迎合更多的developers(开发者)。Flash天生是为了designer(设计者)设计的,界面还有flash的动画概念和程序开发人员格格不入,为了吸引更多的jsp/asp/php等程序员,Macromedia推出了Flex,用非常简单的.mxml来描述界面给jsp/asp/php程序人员使用.(x/d)html非常相似,而且mxml更加规范化、标准化。 2:为了一个标准。大家一定听说过微软操作系统vista(后续的win7也是同一核心),在vista推出的同时微软也推出了新的语言xaml,一种界面描述语言,与之相应的就是smart client和flex非常相似的东西(即SilverLight)。Mxml和Xaml的也很相似… …这是人机交互技术的进步的重要体现,即内部逻辑与外部界面交互相分离。 Flex和j2ee/.net其实没什么关系,Macromedia用java做出来个应用把flash的技术融合到J2EE里面,再用.net的技术做出来个.net应用把flash技术融合到.net里面去;应该说flex解决了J2EE里面和.net里面最繁琐的问题那就是web 客户端的问题。

成因

传统的程序员在开发动画应用方面存在困难,Flex 平台最初就是因此而产生。Flex 试图通过提供一个程序员们已经熟知的工作流和编程模型来改善这个问题。 RIA相互之间关系

Flex 最初是作为一个J2EE(Java 2 Platform, Enterprise Edition)应用,或者可以说是JSP(JavaServer Pages)标签库而发布的。它可以把运行中的MXML(Flex标记语言)和ActionScript编译成FLASH应用程序(即二进制的SWF文件)。最新版的FLEX支持创建静态文件,该文件使用解释编译方式并且不需要购买服务器许可证就可以在线部署。 Flex的目标是让程序员更快更简单地开发RIA应用。在多层式开发模型中,Flex应用属于表现层。 Flex 采用GUI界面开发,使用基于XML的MXML语言。Flex 具有多种组件,可实现Web Services,远程对象,drag and drop,列排序,图表等功能;FLEX内建动画效果和其它简单互动界面等。相对于基于HTML的应用(如PHP、ASP、JSP、ColdFusion及CFMX等)在每个请求时都需要执行服务器端的模板,由于客户端只需要载入一次,FLEX应用程序的工作流被大大改善。FLEX的语言和文件结构也试图把应用程序的逻辑从设计中分离出来。 Flex 服务器也是客户端和XML Web Services及远程对象(Coldfusion CFCs,或Java类,等支持Action Message Format的其他对象)之间通讯的通路。 一般被认为是 Flex 替代品的是OpenLaszlo和AJAX技术。

关于flexjava流和java使用flex的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。