「javaflex教程」flex java教程

博主:adminadmin 2023-01-06 12:18:10 945

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

本文目录一览:

java编程,flex是什么东西

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

java+flex项目如何下手,步骤和思路(详细点)。哪位高手帮忙解决下。多谢。

分客户端与服务器端两部分。服务器端得开发就是用java(JSP),当然也可以用其他的服务器端技术,如ASP,他的功能仅仅是向flex传递数据,不必关心界面的内容,传递数据时,可以采用XML,也可以采用其他方式;剩下的就是所谓客户端开发了,采用AS语言,用MXML语言设计flex界面,采用AS语言开发界面流程、。事件响应等,需要数据时,向后台(服务器)端发出请求,在收到数据时更新界面就可以了,很简单,一周就能搞定,不要觉得难,自己定个小目标,做完就上手了。flex的开发优势在于界面,不必换页,操作简单,界面美观,缺点是其调试手段缺乏,开发过程比较艰难。

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详细完整的简单实例

详细 和 简单是同义词么?...无语中

给你一个最简单的吧。

2.1 请先新建一个Flex Project,我们姑且命名这个Flex项目为HelloWorldTest,然后点击下一步按钮,直至结束。Flex IDE会自动为我们创建一个HelloWorldTest.mxml文件,mxml是Macromediag公司于2004年发明的,专门用来标记图形用户界面(GUI)的XML语言。此时的界面如下图所示:

2.2 请点击上面窗口中的Design Button,切换到设计视图,然后请从Components视窗中拖拽一个Label组件,一个Button组件和一个Text组件到Flex设计窗口中,并在Flex Properties视窗中调节这些组件的大小及样式,详情如下图所示:

2.3 然后请点击上面窗口中的Source按钮切换到代码视图,在Button按钮上加一个click事件,并写一小段ActionScript脚本,其中包含buttonClick()函数,让click事件指向buttonClick()函数。buttonClick()函数代码异常简单,其功能就是但按钮被点击时,该函数不断改变myText文本框中的文字。具体代码如下:

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

mx:Application xmlns:mx="" layout="absolute"

mx:Script

![CDATA[

private function buttonClick():void {

if(myText.text==null || myText.text==""){

myText.text="Hello World";

}else{

myText.text="";

}

}

]]

/mx:Script

mx:Label text="My First Flex Program" width="213" textAlign="center" fontWeight="bold" fontSize="18" fontFamily="Arial" color="#E2E023" x="191" y="48"/

mx:Button click="buttonClick()" label="Press Me" x="250.5" y="119"/

mx:Text id="myText" text="Text" width="213" height="51" color="#F52E13" fontFamily="Arial" fontSize="17" x="204" y="184" alpha="0.99"/

/mx:Application

请注意上面代码中的id=”myText”,如果您想在ActionScript脚本中应用某个页面组件,您可以通过该组件的id直接调用,这和javascript调用html控件非常类似(document.getElementById("myText"))。

2.4 代码输入完成后,请右击代码,然后点击Run As…àFlex Application,将上面的代码作为Flex应用程序运行,这是我们可以在浏览器中看到Hello World应用程序。如果您想让这个小的HelloWorld程序在服务器上运行,也非常简单,您只需要将\HelloWorldTest\bin-debug目录下的文件拷贝到服务器上的相应目录中即可运行。

2.5 总之,在Flex中开发RIA程序异常简单。我以前从来没有接触过Flex及ActionScript,但是花了几个小时学习了一下,就能很快写一个小的Hello World。比起复杂的JavaFX来,我更 看好Flex,Flex的语法类似于Java,比较容易学习,而且,ActionScript似乎比JavaFX的语法简单。所以,我个人认为,以前从事RIA应用的Java开发者可以开始学习Flex,掌握Flex,可能是一个比较好的选择。

javaflex教程的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于flex java教程、javaflex教程的信息别忘了在本站进行查找喔。