- 博客(14)
- 资源 (31)
- 收藏
- 关注
原创 JDK5新特性之线程阻塞队列(四)
一. 阻塞队列和普通队列:队列是一种基本的数据类型,其典型特征是先进先出。阻塞队列和普通队列的区别在于:当队列为空时,从队列中获取元素的线程会被阻塞,直到其他的线程往空的队列里插入新的元素;当队列是满的时,往队列里添加元素的操作会被阻塞,直到其他的线程从队列移除一个或多个元素;
2014-10-31 09:41:47 1452
原创 JDK5新特性之线程同步工具类(三)
一. Semaphore实现信号灯Semaphore可以控制同时访问资源的线程个数, 例如: 实现一个文件允许的并发访问数.Semaphore实现的功能就类似厕所有5个坑, 加入有十个人要上厕所, 那么同时只能有5个人能够占用, 当5个人中的任何一个人离开后, 其中在等待的另外5个人中就有一个可以占
2014-10-29 23:28:20 1253
原创 fifaonline3 操作备忘
Z=LT 自定义射门 Q=LB 换人键C=RT 花式键E=RB 加速键D:常规射门DD:低射、速射(双击射门键)ZD:弧线射门(自定义射门键+射门键)CAA:正面吊射(花式键+双击长传键) 守门员跑出一半的位置开始按QD:吊射 -- (换人键+射门键) --> (基本进不了,放弃吧)CD:外脚背抽射 --(花式键+射门键)--> (基本进不
2014-10-29 20:09:08 2380
原创 JDK5新特性之线程锁技术(二)
一. Lock实现线程同步通信Lock比传统线程模型中的synchronized方式更加面向对象,与生活中的锁类似,锁本身也是一个对象。两个线程执行的代码片段要实现同步互斥的效果,他们必须用同一个Lock对象。锁是上在代表要操作的资源的类的内部方法中,而不是线程代码中。
2014-10-28 22:54:29 1086
原创 Effective Java (7) - 避免使用终结方法
一. 基本概念1. 所谓的终结方法其实是指finalize()。2. Java的垃圾回收机制只负责内存相关清理,其他资源的清理(释放文件、释放DB连接)需要程序员手动完成。3. 调用System.gc() 只是建议JVM执行垃圾回收(GC),但什么时候执行、是否要执行由JVM决定。4. 用户可以自己调用对象的finalize方法,但是这种调用是正常的方法调用,和对象的销毁过程无关。5. 如果一个类实现了finalize方法,那么当JVM执行垃圾回收的时候,该方法一定会被调用。
2014-10-28 16:30:11 1547
原创 JDK5新特性之线程池(一)
一. 线程池的概念:其实到目前为止我们接触过很多关于池的概念:string池、连接池,之所以要用这个池,目的只有一个:资源的重复使用。线程池:首先创建一些线程,当服务器接收到一个客户请求后,就从线程池中取出一个空闲的线程为之服务,服务完后并不关闭该线程,而是将该线程还回到线程池中。在线程池的编程模式下,任务是提交给整个线程池的,而不是直接交给某个线程,线程池在拿到任务后,它就在内部找有无空闲的线程,找到后再把任务交给内部某个空闲的线程,这就是封装。记住:任务是提交给整个线程池的,一个线程同时只能执行一
2014-10-24 10:30:28 1479
原创 Java enum枚举的用法
一. 出现背景:在JDK1.5之前,我们定义常量是这样的:public static final String RED = “RED”;在JDK1.5中加入了枚举类型,我们可以把相关的常量分组到一个枚举类中:public enum Color { RED, GREEN, BLUE;}使用的时候可以这样:Color c = Color.RED二. 枚举特点:1
2014-10-23 18:20:49 2634
原创 springMVC整合JAXB
一.背景因为项目中要用到将Java对象转为xml返回给调用者,选择使用JAXB,因为它是JDK自带的,不需要引入其他Jar包它提供了快速而简便的方法将xml和对象互转的方法。
2014-10-21 15:12:33 3777
原创 传统线程同步通信技术(三)
一. 线程通信:在同步方法中,线程之间的通信主要依靠以下三个方法来实现:1. wait() 调用该方法会使当前线程暂停执行并释放对象锁,让其他线程可以进入Synchronized代码块,当前线程放入对象等待池中。2. notify() 调用该方法会从对象等待池中移走任意一个线程3. notifyAll() 调用该方法会从对象等待池中移走所有等待的线程。
2014-10-20 22:16:44 1209
原创 传统线程之同步锁(二)
一. 线程安全线程安全问题是指程序中公用的东西被多个线程访问,比如:类的静态变量二. 同步锁有什么办法可以解决线程安全问题呢?那就是在程序中加锁Java有两种加锁的方法:1. 在代码块中加锁 synchronized (this) { ... }2. 在方法上加锁 public synchronized void xxx(){ ... }
2014-10-19 22:44:25 1071
原创 传统线程技术(一)
一. 传统线程创建方法1. 覆盖Thread子类的run方法中编写具体代码2. 在传递给Thread的Runnable对象的run方法中编写具体代码
2014-10-18 23:44:11 1105
原创 Java 时间戳和Date之间转换
一. 背景:在数据库中为了保证数据在取和存的过程中没有被其他人修改过,通常会加入一个控制版本的字段version,这个字段的值通常会使用时间戳,类似这样的格式:yyyy-MM-dd HH:mm:ss, 因为它具有惟一性,有些时候我们会涉及把时间戳传给其他的系统,那么用日期就不太方便,那就需要把它转成长整形,相当于一个token二. 代码:public class T
2014-10-16 10:46:09 3254
原创 python与其他语言进行比较
最近python语言貌似比较火, 今天闲来无事,简单的看了下,算是个入门吧。一门语言之所以值得这么多人去学,必定有它的独到之处,下面我们就用python和其他语言做个比较。 Pythond VS C# 1. Python跨平台,可以运行在linux、weindows等平台 2. Pythond开源,C#则相反 3. Python是解释型语言,C#需要编译,所以Python运行要慢点 Pythond VS Java Python更简洁,Java过于庞大复杂,语法很多 Py
2014-10-12 18:49:11 3504
java事务 - 传递Connection
2014-09-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人