- 博客(61)
- 资源 (9)
- 收藏
- 关注
原创 JDK5 读写锁 ReadWriteLock
JDK5了Lock对象。而读写锁就是其中的一个优秀的例子。读写锁:多个读锁不互斥,读锁和写锁互斥,写锁和写锁互斥 面的代码展示了如何利用重入来执行升级缓存后的锁降级(为简单起见,省略了异常处理): class CachedData { Object data; volatile boolean cacheValid; ReentrantReadWriteLock
2012-08-16 21:50:20 992
原创 锁 synchronized和Lock
多线程编程带来线程安全问题,而synchronized的出现给我们带来了极大的便利。 那synchronized究竟有什么用呢: 1、当俩个并发线程访问同一个对象object中的这个synchronized(this)同步代码块时,同一时间内只能有一个线程执行。另外一个线程必须等待当前线程执行完这个代码块以后才能执行该代码块。 2、当一个线程访问object的一个synchr
2012-08-16 19:24:27 486
原创 JDK5 如何获取所有线程池的结果再继续执行
JDK5的Callable和Future组合使用可以获取单个线程的执行的结果。那如何获取多个线程的执行结果呢?别急,CompletionService的存在,让这一切变的那么简单。首先CompletionService需要一个Executor线程池为参数构造一个新对象,如 ExecutorService objExecutorService = Executors.newFixed
2012-08-15 21:01:30 1496
原创 JDK5 获取线程返回结果
在JDK5之后,提供了Callable和Futrue俩个类。 使用这俩个类可以获取线程的执行结果! 如: public static void main(String[] args) { ExecutorService objExecutorService = Executors.newSingleThreadExecuto
2012-08-14 21:51:05 514
原创 ThreadLocal 线程变量
ThreadLocal可以让一个变量成为一个线程变量(每个线程保存一份该变量引用,互不干扰)。 package com.skydream.thread.threadLocal;public class ThreadOwnData { private static ThreadLocal objThreadData = new ThreadLocal(); p
2012-08-12 09:48:50 381
原创 java线程笔记
1、Thread和Runnable的区别 Runnable更加面向对象。它把执行者和任务分开独立对象。2、线程通信把互斥、相互通信的逻辑任务放在同一个任务中更容易实现。如:package com.skydream.traditional.thread.communication;public class Task { private boolean flag = t
2012-08-11 11:09:45 378
原创 cxf 动态客户端
大家在使用webservice都是希望客户端代码是无侵入的。cxf为此提供了动态客户端 DynamicClientFactory objDynamicClientFactory = JaxWsDynamicClientFactory.newInstance(); Client objClient = objDynamicClientFactory.creat
2012-08-02 20:29:44 2569
原创 cxf与spring集成
Spring框架在java开发中随处可见,带来了spring与cxf集成问题.cxf提供和spring无缝整合。 1、新建一个web项目,把spring jar和cxf jar 拷贝至webapp 的lib目录下: spring jar列表 spring-aop-3.0.5.RELEASE.ja
2012-08-02 20:23:22 3770 2
原创 Cxf 拦截器
拦截器是Cxf对其自身功能扩展的一个补充。如果你想在一个cxf服务增加一些功能(如:权限验证),你就可以考虑拦截器。 Cxf拦截器很简单,并且内置实现了很多拦截器,如日志拦截器 服务器端: EndpointImpl objEndpointImpl = (EndpointImpl)Endpoint.publish(a
2012-08-01 19:42:16 2595
原创 CXF例子
随着SOA架构在企业级生活的越来越流行,具体使用SOA能力是程序员不可或缺的能力。下面简单介绍发布一个简单CXF服务的步骤。 1、开发一个业务服务接口,并在接口上写上注解@WebService package com.skydream.cxf; import javax.jws.WebService; @We
2012-07-29 10:42:07 766
原创 Blazeds复杂数据类型传输及类映射
在做flex与后台交互过程中,大多会碰到前台model对象与后台VO对象的映射。 有俩种方法可以做到这种映射: 先给出俩个映射对象定义 TestVO.java package com.skydream.xu.model;public class TestVO { private String name; priva
2012-05-27 11:56:59 938
原创 Blazeds 使用介绍
1.下载Blazeds.war;并解压2.新建一个Web工程3.拷贝解压后的Blazeds下的WEB_INF文件下下的flex、lib、web.xml到新建web工程的webapp下的WEB-INF目录下4.把Flex工程的编译文件放到webapp下5、新建提供服务的java类,如:com.skydream.appsevice.LogService6.修改remote-co
2012-05-27 10:40:48 750
转载 DataGrid自动调整行高
这是Alex Harui写的一个关于自定义的基于流式的renderer使用演示。 首先,它在左上角画了一个正方形,然后设置显示文本在右侧。每一行的文本值都都不一样,有多的,也有少的。 这个例子使用了数据绑定来设置 mx:Text文本的宽度,所以它会获取到正确的measuredHeight值。这样的话,通过调
2012-04-12 19:00:35 5218
转载 给DataGrid加一个自动序列rowIndex的列
在桌面应用程序开发的时候,我们经常会给DataGrid或者表格的第一列加上行序列号,以此给用户一个提示当前数据所在的行号,就类似于Excel的左边列。Flex的DataGrid并没有自动提供这样的属性。那么如何解决这个问题呢,方法有很多种,我们可以在DataGrid的数据源dataProvider中添加这样的行序列号,这个方法的弊端就是这个序列号和行数据(row data)绑定在一起,当DataG
2012-03-31 22:14:34 1235
转载 LockableDataGrid可锁定列的DataGrid
在DataGrid的实际使用过程中,有时候会需要将前面几列锁住,或者前几行锁住,就像Excel的表设计一样。在滚动条拖动的时候能始终保持前面锁定的列显示在界面中。在flex的DataGrid设计中实际上已经考虑到了这个功能。属性lockedColumnCount和lockedRowCount就是实现这个功能的最快捷径。但是lockedColumnCount属性却不能解决始终保持某一列如Id
2012-03-31 22:12:53 1260
转载 给DataGrid设置背景色(汇总)
DataGrid颜色专题在Flex运用中经常提到的有关DataGrid问题是如何改变DataGrid单元格(cell),列(column)和行(row)的背景颜色(backgroundcolor)很久之前就做过这样的总结,一直没有整理出来,现在在这里对这3种颜色做一个总结(后面有demo和源码下载)。 设置行(row)的背景色主要是通过对DataGrid扩展,对prot
2012-03-31 22:07:10 1710
转载 DataGrid据数据变化动态变色
在很多实时数据更新系统如股票,我们需要在数据变化时,有闪烁效果,比如股票升了,用红色闪以下,跌了用绿色闪一下。这里提供一个例子,是用Labe作为DataGridItemRenderer,当数据变大时用红色字体闪一下,变小时用绿色闪一下。效果图如下,简单的用Button修改数据源。源代码如下: xmlns:mx="http://www.adobe.com/2006/mxml" lay
2012-03-31 22:04:34 824
转载 DataGrid过滤
在filter input 输入字符,可对DataGrid进行过滤。道理很简单,就是利用自定义的filterFunction给DataGrid进行过滤。直接来看代码 xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" xmlns:local="*" backgroundColor="#999999">
2012-03-31 21:59:01 1048
原创 Flex屏蔽右键
Flex 自带的ContextMenu和ContexMenuItem可以实现对右键菜单的控制,具体使用可以看API。用ContextMenu.hideBuiltInItems()可以隐藏部分菜单,当时对“设置”等系统菜单屏蔽不了。 要完全屏蔽右键菜单,让人犯难。 “山重水复疑无路, 柳暗花明又一村。” Flex中的事件流默认捕获
2012-03-29 21:50:45 2668 1
转载 Flex AdvancedDataGrid表头合并
AdvancedDataGridColumnGroup这个专用类将多列grid的表头合并在一个表头中,废话不多说了,直接上源码http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx
2012-03-26 20:29:44 3989
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人