JAVA和Flex敏捷调用(二)
Flex在和java调用过程中,其实有更加灵活的办法来提高系统的敏捷度,极大提高系统的耦合和开发效率。在这里我继续给大家介绍一下,敏捷调用中的java动态代码调用。
先看java的类(BeanShell)这里主要是接收java代码来动态调用的
package com.shine.framework.beanShell;
import bsh.Interpreter;
public class BeanShell {
public Object executBeanShell(String code) {
try {
Interpreter inter = new Interpreter();
inter.eval(code);
return inter.get("result");
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
}
然后把该类配置到remoting-config.xml
<destination id="beanShell">
<properties>
<source>com.shine.framework.beanShell.BeanShell</source>
</properties>
</destination>
再写一个静态的beanShell在actionscript,以单例模式
package com.shine.framework.beanShell
{
import mx.rpc.events.FaultEvent;
import mx.rpc.events.ResultEvent;
import mx.rpc.remoting.mxml.RemoteObject;
import mx.controls.Alert;
public class BeanShell
{
private static var _instance:BeanShell;
private var method:Function;
public function BeanShell(enforcer:SingletonEnforcer)
{
}
public static function getInstance():BeanShell
{
if (BeanShell._instance == null)
{
BeanShell._instance=new BeanShell(new SingletonEnforcer());
}
return BeanShell._instance;
}
public function beanShell(code:String, method:Function=null):void
{
this.method=method;
var beanShell:RemoteObject=new RemoteObject;
beanShell.destination="beanShell";
beanShell.addEventListener(FaultEvent.FAULT, error);
beanShell.endpoint="messagebroker/amf";
beanShell.executBeanShell(code);
beanShell.addEventListener(ResultEvent.RESULT, getRomoteHelloRes);
}
private function getRomoteHelloRes(e:ResultEvent):void
{
if(this.method!=null){
this.method.call(this, e.result);
}
}
相关文档:
1、首先大家最好去下载一个designer 的eclipse 插件
2、然后放入eclipse 安装目录下的plugin目录下
3、重新启动eclipse
4 新建一个java swing project
5, 新建一个window,然后点运行,就会出现一个最简单的窗口。
当然,你也可以新建一个class Window,然后输入如下代码
import java.awt.Dimension;
import ......
这里主要对8种排序算法做个总结,分别是插入排序,选择排序,冒泡排序,希尔排序,归并排序,堆排序,快速排序以及基数排序。
1、 插入排序
比较和交换的时间复杂度为O(n^2),算法自适应,对于数据已基本有序的情况,时间复杂度为O(n),算法稳定,开销很低,适合于数据已基本有序或者数据量小的情况。
public void ins ......
清华大学出版社《Java程序员,上班那点事儿》作者:钟声 章节:1.1小节
我们刚刚进入本书的正题就拿出一个俗不可耐“钱”字来和大家大谈特谈,未免不雅。但是,我还是要在一开始就要说这个问题,因为这是很多朋友关心的问题,为什么不先说 ......
测试中发现如果几个处于可运行状态的线程的优先级都小于或者等于6时,yield()方法可将运行机会让给优先级为6和优先级为5的线程。
而如果调用了yield()方法的线程的优先级大于或等于7时,则不会将运行机会让给其他线程。 ......