- 博客(14)
- 资源 (13)
- 收藏
- 关注
原创 学习MongoDB--(1):MongoDB简介
随着应用需要处理数据量的指数级膨胀和分析这种海量数据需求的膨胀,关系型数据库渐渐显露出了疲态。系统进行横向扩展时,关系型数据库也往往成为性能提升的瓶颈。这时,NoSQL相关技术成为这轮更迭的发起者和成功者。这其中MongoDB风头最劲了。MongoDB非常适合于大数据量,高并发,弱事务的互联网应用,并且其内置的水平扩展机制提供了从百万到十亿级别的数据量处理能力!这点可以保证采用MongoDB的应用
2012-07-31 16:45:02 2577
原创 Serializable接口基本理解(3)--序列化代理的使用
Effective Java一书一直在强调,你的类实现Serializable接口前,一定要进行价值评估,是否值得这么做,尤其你的类是一个需要进行大量继承扩展的类。因为实现了Serializable接口,就会大大的增加出错和出现安全漏洞的可能性。蓄意攻击者可以通过伪造修改字节码的方式使你的代码出现安全漏洞!从一个角度看, readObject方法是一个参数为“字节流”的构造函数,因此篡改了字节流,
2012-07-30 21:52:47 2430
原创 敏捷开发--(1)敏捷开发入门谈
公司所有开发组目前都在提倡敏捷开发,我所在的开发组也没有out,刚刚发版的产品我们就引入了敏捷开发的一些概念--虽然还比较粗糙,但整体感觉还是蛮好的。发版后,有一段空闲期,闲来无事,看到同事桌上有本《轻松Scrum之旅--敏捷开发故事》,就借过来读了一下,通篇就是一个产品的敏捷开发过程,从概念和使用方法上看,能有不小收获。这次就写一下自己初次体验敏捷的一些感受和这本书的一点读后感。先说一下自己
2012-07-30 15:41:59 3600
原创 Java多线程编程--(6)学习Java5.0 并发编程包--原子操作的一些类型
Java虽然语言本质就支持多线程并发,但支持力度一直不够,各类数据结构对并发的支持和处理效率也不好。所以从JDK 5.0 开始,Java推出了一批类来支持并发编程,统一放在java.util.concurrent 包及其子包下。今天开始我就介绍一下这些类及基本用法。Java5.0推出的这些并发编程相关的类,放置在3个包中:java.util.concurrent, java.util.conc
2012-07-28 22:41:37 1231
原创 MES系列--(2)JNA使用介绍
JNA:java native access! 有人说是JNI的升级版,其实用过后,你发现不是这样的,JNA没有JNI强大,在某些情况下,用起来比JNI简单一些而已。上篇JNI入门,大家可以看到编写JNI去访问本地代码的步骤已经很规矩死板了,如果你提前有了本地代码如dll文件,那“恭喜”你,你得封装一层了,JNI中,你本地代码的函数名称,参数都是有要求的!JNA就在这里有了突破,你可以先拥有本地代
2012-07-27 22:39:03 1979
原创 Java多线程编程--(5)Java多线程互斥小例子
前几篇写了Java从出生就支持的多线程的一些技术,打算往后就写一下Java 5.0新推出的多线程编程相关的包和类,今天就写一个小例子作为老技术部分的小结吧。上题:“A线程循环n次输出语句,然后B线程循环m次输出语句,然后再由A线程循环n次输出语句,B循环m次输出语句.....如此反复50次即可。”package cn.test;public class ThreadExclusiv
2012-07-27 10:14:37 2340 1
原创 Java多线程编程--(4)ThreadLocal的使用
ThreadLocal是Java从1.2版本就开始提供的一个类,顾名思义,就是线程级别的本地变量。目前在两种情况下采用了ThreadLocal类,以下分别进行介绍:1》 为多线程并发的互斥控制提供了另一种全新的解决思路。前面提到多线程对同一个资源进行访问的互斥是通过关键字synchronized进行的。但使用这个关键字有一个副作用,那就是性能的损耗并且会遏制虚拟机对字节码的优化处理。我们来看一
2012-07-26 18:44:43 2569
原创 Java多线程编程--(3)线程互斥、同步的理解
多线程并行编程中,线程间同步与互斥是一个很有技巧的也很容易出错的地方。线程间互斥应对的是这种场景:多个线程操作同一个资源(即某个对象),为保证线程在对资源的状态(即对象的成员变量)进行一些非原子性操作后,状态仍然是正确的。典型的例子是“售票厅售票应用”。售票厅剩余100张票,10个窗口去卖这些票。这10个窗口,就是10条线程,售票厅就是他们共同操作的资源,其中剩余的100张票就是这个资源的一个
2012-07-24 23:24:41 16488 7
原创 Java多线程编程--(2)Timer & TimerTask
Java中还封装提供了另一种非常有用的线程使用方法,这就是定时任务:Java在util包中提供了Timer类和TimerTask类。Timer类代表定时器,TimerTask是定时器任务。先讲一下比较简单的TimerTask类,这是一个抽象类,实现了Runnable接口,但并没有实现run方法。你的定时器任务就是继承TimerTask类,实现run方法即可。Timer类,定时器,其中定义了
2012-07-23 08:57:13 3115
原创 Java多线程编程--(1)初识线程
随着多核处理器的流行,多线程编程在我们现实编码中也变得越来越普遍。和其他编程语言一样,Java本身就内置了多线程的支持。一个线程就是程序的一个执行线索,如果你的程序只有一个main方法,则这个程序就只有一个执行线索,就是这个主线程。Java中通过类 java.lang.Thread 代表一个线程。Thread类中的run方法就是该线程运行的执行代码。Thread类中有一个java.lang.R
2012-07-23 08:56:54 1329
原创 关系型数据库系列--(1)开篇杂记
工作3年了,接触的数据库不算多,第一份工作从事Web相关开发,用过MySQL,后来投身传统软件行业,就随波逐流用起来Oracle。但目前各家公司基本都有自己的框架或开发平台,对数据库的访问基本都隔离到DAO层中了,操作数据库基本都是面向对象操作(O/R Map),需要自己写SQL的地方都不多了,更别说其他一些更细节的操作。但对数据库相关的一些东西理解一下还是必要的。首先说一下数据库的事务,事务
2012-07-23 08:56:18 779
原创 Enjoy Beautiful Sentences--(1)
"You must be willing to let go of the life you have planned so as to have the life that is waiting for you! " I saw this sentence in a website when I was surfing the net this afternoon. I really e
2012-07-23 08:55:49 713
原创 MES系列--(1)JNI使用入门
在公司从事MES产品开发,先解释一下MES含义吧,MES:Manufacture Execution System,生产执行系统。这层系统是和工业生产中的硬件设备进行交互,控制硬件设备或从硬件设备获取数据。在真实的企业级分层应用中,这一层工作在ERP层之下,向ERP层提供数据,供上层应用节点进行分析处理。、身为Java Coder,一提到硬件编程,大家立马就想到了JNI(java native
2012-07-23 08:55:25 1529 2
原创 Serializable接口的基本理解(2)
Effective Java一书在讲解Serializable接口时,开篇就强调这个接口要慎用!因为这个不需要实现类去实现任何方法的接口太容易被误用了。有时是我们有意为之,认为这样我们的类就会强大一些,有时我们基于某个平台或框架去写代码而被迫接受。但不论哪种,我们必须明白,实现这个接口是我们对他人,对未来的一个承诺!如果你的类实现了Serializable接口,其实默认你给你自己脑袋上套了个紧
2012-07-23 08:54:51 1034
GoF23种经典模式+简单工厂模式讲解还有一篇心得
2012-09-18
Windows系统运行JNI程序,Windows/WinSxS中需要的额外文件
2012-09-18
CGLib和ASM相关jar包
2012-08-07
MongoDB-2.0.6-安装文件及源码
2012-07-31
JNA使用详解,包括jna.jar 和一个完整的JNA例子
2012-07-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人