利用计时器实现对象状态的检测当对象在创建后,每隔一定的时间需要变化一次状态,并且该状态的变化还要通知到用户,可以利用Java的计时器实现对对象状态变化的监测。举个例子,如种植了一颗植物,植物每隔两分钟需要变化一次状态,让后根据状态的不同通知客户端进行响应的事件处理。植物生长状态生长时间客户端的处理种子2分钟显示植物的幼苗状态幼苗3分钟显示植物的成年状态成熟4分钟显示植物的成熟状态收获5分钟提示用户收获该作物该事件处理的流程图如下:植物的类图articleI
系统 2019-08-29 23:10:28 2474
转自:http://hi.baidu.com/coolnote/blog/item/a62d26fc66cee1ebfc037f32.html看不到的图请到原文看.1、温故知新广播接收者:一个广播接收者是这样一个组件,它不做什么事,仅是接受广播公告并作出相应的反应。许多广播源自于系统代码,例如公告时区的改变、电池电量低、已采取图片、用户改变了语言偏好。应用程序也可以发起广播,例如为了他其他程序知道某些数据已经下载到设备且他们可以使用这些数据Broadcas
系统 2019-08-29 23:04:12 2474
进入我们基于Annotation的Struts2.0+Hibernate3.3+Spring2.5整合开发的最后一个阶段了,这阶段主要为我们的项目引进Struts2的Annotation。相对于带Annotation的Hibernate与带Annotation的Spring整合来说,带Annotation的Struts与带Annotation的Spring整合还是比较容易实现的。我们先来引进Struts2.0的相关jar包:xwork-2.0.5.jar,
系统 2019-08-29 22:58:47 2474
第一章测试背景SQLSERVER日志传送功能可自动复制数据库的日志文件,并回存到备份服务器(standbyserver)的另外一个数据库。因此可大幅提高SQLServer数据库的可用性。因为备份数据库完整地接收来源数据库的变化情况,所以它就是一份来源数据库的复本。它们之间的差别仅在于日志复制与加载过程所产生的时间差。然而,当主服务器因故障停机时,您就可以将备份服务器更改为新的主服务
系统 2019-08-29 22:52:20 2474
在Android中使用语音播放功能只需要使用类TextToSpeech,该类实现了很多关于语音的功能,使用该类必须为其设置语言,现在支持五种语言,杯具的是不支持中文实现很简单不过首先要安装语言包这个在设置--》语音输入和输出设置--》文字转语音设置如下图左边图中安装语音数据我这里已经安装成功了所以是灰色的如果没有安装这里就可以点其他地方都是灰色的安装文件4.28M下载安装完成后就可以选择语言了右图所示的五种语言没有中文啊下面来看实现很简单首先是layout
系统 2019-08-29 22:44:22 2474
很久以前就尝试过使用AOP进行权限控制的管理,那时候只是试试而已,并没有在项目中应用过,最近跟的一个B/S项目中要求我们把权限管理加进去,于是我考虑以前的AOP方法是否真的可行。思考许久后的结果是,可行,但是太麻烦。主要原因在于需要在UI层<=>逻辑层<=>数据层之外增加额外的一层来使得AOP拦截可以以恰当的粒度、恰当的时机切入。如果不增加额外的这一层而使用AOP就可能会得到这样的结果--比如,在业务逻辑层或数据层使用AOP切入,就有可能出现这样的情形,用
系统 2019-08-29 22:43:01 2474
表达式语言主要有以下几大好处:避免(MyType)request.getAttribute()和myBean.getMyProperty()之类的语句,使页面更简洁;支持运算符(如+-*/),比普通的标志具有更高的自由度和更强的功能;简单明了地表达代码逻辑,使用代码更可读与便于维护。Struts2中的表达式语言Struts2支持以下几种表达式语言:OGNL(Object-GraphNavigationLanguage),可以方便地操作对象属性的开源表达式语
系统 2019-08-29 22:31:43 2474
一。Android绘制文本对象FontMetrics介绍FontMetrics对象它以四个基本坐标为基准,分别为:・FontMetrics.top・FontMetrics.ascent・FontMetrics.descent・FontMetrics.bottom实例JAVA代码如下:PainttextPaint=newPaint(Paint.ANTI_ALIAS_FLAG);textPaint.setTextSize(35);textPaint.setCo
系统 2019-08-29 22:24:31 2474
在开发多线程应用时,开发人员一般都会考虑线程安全,会使用pthread_mutex去保护全局变量。如果应用中使用了信号,而且信号的产生不是因为程序运行出错,而是程序逻辑需要,譬如SIGUSR1、SIGRTMIN等,信号在被处理后应用程序还将正常运行。在编写这类信号处理函数时,应用层面的开发人员却往往忽略了信号处理函数执行的上下文背景,没有考虑编写安全的信号处理函数的一些规则。本文首先介绍编写信号处理函数时需要考虑的一些规则;然后举例说明在多线程应用中如何构
系统 2019-08-29 22:23:03 2474
一什么是Service二如何使用Service三Service的生命周期一什么是ServiceService,看名字就知道跟正常理解的“服务”差不多,后台运行,可交互这样的一个东西。它跟Activity的级别差不多,也需要在配置文件里注册,但是他不能自己运行,需要通过某一个Activity或者其他Context对象来调用,Context.startService()和Context.bindService()。两种启动Service的方式有所不同。这里要说
系统 2019-08-12 09:29:46 2474