`
文章列表
SqlMap的配置是iBatis中应用的核心。这部分任务占据了iBatis开发的70的工作量。 1、命名空间:   <sqlMap namespace="Account">,在此空间外要引用此空间的元素,则需要加上命名空间名。   2、实体的别名:   <typeAlias alias=& ...
# Copyright (c) 1993-2009 Microsoft Corp. # # This is a sample HOSTS file used by Microsoft TCP/IP for Windows. # # This file contains the mappings of IP addresses to host names. Each # entry should be kept on an individual line. The IP address should # be placed in the first column followed by the c ...

Volatile使用场景

 
Volatile的特性:可见性,但不互斥.怎么理解这句话,首先可见性的原因是以为,这个关键字可以让变量不缓存在寄存器里面,每次取值都是直接从主存里面获取,所以每次都是最新的值.但是不互斥是因为没有锁,这里有个改变值的流程(读取-修改-写入),这是一个比读更耗时的一个操作,在没有加锁的情况下别的线程读取这个值可能是任何一个时刻的值;所以根据这个特性可以推导出使用Volatile在少写多读的情况下,性能非常好,当然首先要保证不会是多线程同时写.
BroadcastReceiver也就是“广播接收者”的意思,顾名思义,它就是用来接收来自系统和应用中的广播。 在Android系统中,广播体现在方方面面,例如当开机完成后系统会产生一条广播,接收到这条广播就能实现开机启动服务的功能;当网络状态改变时系统会产生一条广播,接收到这条广播就能及时地做出提示和保存数据等操作;当电池电量改变时,系统会产生一条广播,接收到这条广播就能在电量低时告知用户及时保存进度,等等。 Android中的广播机制设计的非常出色,很多事情原本需要开发者亲自操作的,现在只需等待广播告知自己就可以了,大大减少了开发的工作量和开发周期。而作为应用开发者,就需要数练掌握An ...
1、 http://ahlearns.wordpress.com/2011/07/29/spring-3-mvc-requestbody-deserialization-of-custom-list-objects/ // The wrapper class, so that type info (of User) is passed thru the message converters to Jackson public class Users extends ArrayList<User> { private static final long serial ...

Linux 的cp命令

功能: 复制文件或目录说明: cp指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息参数:     -a 或 --archive     此参数的效果和同时指定"-dpR"参数相同     -b 或 --backup      删除、覆盖目的文件先备份,备份的文件或目录亦建立为符号链接,并指向源文件或目录链接的源文件或目录。假如没有加上这个参数,在复制过程中若遇到符号链接,则会直接复制源文件或目录     - ...

linux中ls命令详解

 
s 命令可以说是linux下最常用的命令之一。 -a 列出目录下的所有文件,包括以 . 开头的隐含文件。-b 把文件名中不可输出的字符用反斜杠加字符编号(就象在C语言里一样)的形式列出。-c 输出文件的 i 节点的修改时间,并以此排序 ...
  三,复制文件或目录命令:  复制文件:  (1)将本地文件拷贝到远程  scp 文件名用户名@计算机IP或者计算机名称:远程路径     本地192.168.1.8客户端  scp /root/install.* root@192.168.1.12:/usr/local/src   (2)从远程将文件拷回本地  scp 用户名@计算机IP或者计算机名称:文件名本地路径     本地192.168.1.8客户端取远程服务器12、11上的文件  scp root@192.168.1.12:/usr/local/src/*.log /root/  scp root@192.168.1.1 ...
有人会问:JDK5之后有了更完善的处理多线程问题的类(并发包),我们还需要去了解传统线程吗?答:需要。在实际开发中,无外乎两种情况,一个是开发新内容,另一个是维护原有程序。开发新内容可以使用新的技术手段,但是我们不能保证原有程序是用什么实现的,所以我们需要了解原有的。另外一点,了解传统线程的工作原理,使我们在使用并发包时更加得心应手。 线程中断        线程中断涉及到三个方法,如下: void interrupt()          中断线程。 static boolean interrupted()          测试当前线程是否已经中断。 boo ...
上一篇讲述了线程的互斥(同步),但是在很多情况下,仅仅同步是不够的,还需要线程与线程协作(通信),生产者/消费者问题是一个经典的线程同步以及通信的案例。该问题描述了两个共享固定大小缓冲区的线程,即所谓的“生 ...
  上篇通过一个简单的例子说明了线程安全与不安全,在例子中不安全的情况下输出的结果恰好是逐个递增的(其实是巧合,多运行几次,会产生不同的输出结果),为什么会产生这样的结果呢,因为建立的Count对象是线程共享的 ...
当我们查看JDK API的时候,总会发现一些类说明写着,线程安全或者线程不安全,比如说StringBuilder中,有这么一句,“将StringBuilder 的实例用于多个线程是不安全的。如果需要这样的同步,则建议使用StringBuffer。 ”,那么下面手动创建一个线程不安全的类,然后在多线程中使用这个类,看看有什么效果。 public class Count { private int num; public void count() { for(int i = 1; i <= 10; i++) { num += i; } System.out ...
 接着上一篇继续并发包的学习,本篇说明的是Callable和Future,它俩很有意思的,一个产生结果,一个拿到结果。         Callable接口类似于Runnable,从名字就可以看出来了,但是Runnable不会返回结果,并且无法抛出返回结果的 ...
1.ContentProvider接口调用过程     ContentProvider依赖ContentResolver/ActivityThread/ActivityManagerService对外提供服务。虽然ContentProvider的用法以及表现形式不是一个Service,实际上它可以看作是ActivityManagerService提供的一种服务, 它实现了IBinder接口。     首先调用者通过特定uri调用特定ContentProvider的接口函数,比如insert(),  此时ContentResolver会通过uri获取特定ContentProvider的实例, ...
开始,先稍稍讲一点android中Service的概念和用途吧~ Service分为本地服务(LocalService)和远程服务(RemoteService): 1、本地服务依附在主进程上而不是独立的进程,这样在一定程度上节约了资源,另外Local服务因为是在同一进程因此不需要IPC, 也不需要AIDL。相应bindService会方便很多。主进程被Kill后,服务便会终止。 2、远程服务为独立的进程,对应进程名格式为所在包名加上你指定的android:process字符串。由于是独立的进程,
Global site tag (gtag.js) - Google Analytics