自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 收藏
  • 关注

原创 Threadlocal

[b]一)什么是threadlocal[/b] java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路。使用这个工具类可以很简洁地编写出优美的多线程程序,ThreadLocal并不是一个Thread,而是Thread的[b]局部变量[/b]。 1)ThreadLocal不是线程,是线程的一个变量 2)为每个线程维...

2015-04-08 22:29:47 118

原创 Java Annotation

[b]一) annotation的作用[/b] annotation之于程序代码的作用大致可以归结为以下三点: 1) 给编译器(compiler)提供辅助信息,加强纠错和错误处理。比如注解override的函数是否符合override标准,某些warning是否抑制不抛等等。 2) 给某些软件提供信息,以生成相应的代码、xml文件或其它文档等相关内容。比如 Javado...

2013-10-24 16:21:15 107

原创 Oracle --- 数据类型

一)数据类型的分类 Oracle支持的数据类型可以分为四个基本种类:字符数据类型、数字数据类型、日期数据类型以及表示其它数据的数据类型。 属于字符数据类型的有: char/varchar/varchar2/nvarchar/nvarchar2/long 属于数字数据类型的有: number 属于日期数据类型的有: date/timestamp 属...

2013-01-21 13:29:12 189

原创 Java Exception

一)Java错误异常的分类[img]http://dl.iteye.com/upload/attachment/0079/1114/fdd93e30-5759-3c3d-88cc-fa31922e712a.png[/img] 如图,java中Throwable类的子类层次结构也就是java中错误异常分类的策略。首先是将错误异常细分为[b]错误(Error)[/b]和[b]异常(Exc...

2013-01-10 16:15:22 110

原创 Java Thread

一)进程与线程 线程是程序运行的基本执行单元。当操作系统(不包括单线程的操作系统,如微软早期的DOS)在执行一个程序时,会在系统中建立一个进程,而在这个进程中,必须至少建立一个线程(这个线程被称为主线程)来作为这个程序运行的入口点。因此,在操作系统中运行的任何程序都至少有一个主线程。 进程和线程是现代操作系统中两个必不可少的运行模型。在操作系统中可以有多个进程,这些进程包括系统...

2012-12-27 15:22:44 135

原创 Spring --- Transaction Management

一)spring的事务管理 事务管理并非spring独有,用过JDBC hibernate的朋友都知道,这些api和框架都提供了自己的事务管理机制。那么spring的事务管理又有些什么与众不同支持呢?它的优点又有哪些呢?总结来说大概有以下这么几点:1' 为不同的事务API提供一致的编程模型,如Java Transaction API (JTA)、JDBC、Hibernate、Java...

2012-12-26 09:52:55 262

原创 Spring --- AOP IV

Spring AOP APIs一)一个最简单的例子[code="java"]public interface MessageSender { void send(String message); } public class HttpMessageSender implements MessageSender { public void send(String ...

2012-12-21 16:44:17 115

原创 Spring --- AOP III

这篇文章先补充两个AOP的概念:一)引入(Introduction) 什么是引入?引入是在不修改目标对象的源代码的情况下,为目标对象增加方法和属性一种技术手段。 比如你有如下目标对象:[code="java"]public class DoThingBean { public void DoOneThing(){ System.out...

2012-12-19 13:19:00 97

原创 Spring --- AOP II

一)Spring AOP---schema-based approach Spring AOP的配置方式,我强烈推荐这篇博客[url]http://pandonix.iteye.com/blog/336873[/url]。作者对AOP的概念和Spring AOP的xml配置实现都做了清晰的介绍。我想我是不可能做更好的介绍了...这里就再作几点补充说明吧~~二)动态代理 要说动态...

2012-12-17 19:29:12 133

原创 Spring --- AOP

一)什么是AOP AOP(Aspect Oriented Programming) 面向切面编程(也叫面向方面)。众所周知,我们的编程语言从最初的面向过程编程(C)发展到了面向对象编程(C++,Java),而面向方面编程则可以视为对其编程理念的又一次发展。 在面向过程编程时,我们是这样思考的:第一步我们做什么,第二步我们做什么,第三步...,于是代码的一个个方法就按步就班的生成...

2012-12-13 16:10:23 185

原创 Spring --- SpEL

一)什么是SpEL SpEL -- Spring Expression Language. Spring的表达式语言。举个最简单的例子:[code="java"]ExpressionParser parser =new SpelExpressionParser();Expression exp = parser.parseExpression("'Hello World'");S...

2012-12-11 16:10:38 110

原创 Spring --- Data Binding

[b]一) BeanWrapper[/b] BeanWrapper这个类一般不会被Spring的使用者直接调用,而是使用DataBinder和BeanFactory这两个类是间接被调用的。但是知道BeanWrapper的使用方式对于理解Spring的数据绑定机制还是十分用益的。下面我们就来看个BeanWrapper被直接调用的例子:[code="java"]//首先是两个对象类Compa...

2012-12-10 14:40:41 131

原创 Spring --- Validation

一) Validator接口 Spring的Validation功能设计很简单。使用Validator功能即可:[code="java"]public class Person { private String name; private int age; // the usual getters and setters...}public class Pers...

2012-12-07 15:05:12 85

原创 Spring --- Resource

一)如何使用spring中的resource Spring的资源文件访问功能使用起来十分简单,调用ApplicationContext.getResource的方法即可:[code="java"]Resource template = ctx.getResource("some/resource/path/myTemplate.txt");Resource template = c...

2012-12-06 16:50:18 112

原创 Spring --- IOC III

承接上两篇IOC的介绍,我们继续...9)ApplicationContextAware 和 BeanNameAware 加载Spring配置文件时,如果Spring配置文件中所定义的Bean类,如果该类实现了ApplicationContextAware接口,那么在加载Spring配置文件时,会自动调用ApplicationContextAware接口中的 public ...

2012-12-04 15:34:37 88

原创 Spring --- IOC II

承接前一篇Spring --- IOC,继续IOC的介绍6) 方法注入 首先说说方法注入的使用场景: 当一个singleton bean A 在每次方法调用的时候都需要一个non-singleton bean B,此时就会产生这样一个问题,因为A为singleton,所以容器只会创建一次A,那么也只有一次机会来创建A的属性,无论你是通过setter还是constructor...

2012-11-30 15:43:18 154

原创 Spring --- IOC

[i][b]一) IOC其实很简单[/b][/i] 什么是IOC(控制反转)? 这名词听起来玄乎,其实so easy。简而言之,就是通过配置文件来反过来控制代码变化。广义上说,凡是你使用了配置文件的形式来提高代码的灵活性和通用性的,都可以说是一种控制反转。因为那部分由配置文件决定的逻辑便是你将控制权从代码手中反转到配置文件中的运用。(一家之言,仅供参考。也许片面也许错误~~)。总结来说,所...

2012-11-28 16:36:56 114

原创 vi命令的使用

一)什么是vi vi是所有Linux Unix AIX操作系统都会配备的文件编辑器。用过vi的人或多或少都会觉得它有点难用。本人也不例外,所以这里做个笔记整理,以供参考。网上这类的介绍一搜一堆,此处我也没什么新意,只是自己动手写一遍。一来是加深记忆,二来便于以后翻阅。二)三种操作模式 vi一共有三种操作模式: 1. [b]Command mode[/b]:控制...

2012-11-19 11:43:16 224

原创 JDBC

一)什么是JDBC 也许这个问题过于“入门级”。但由浅入深,咋们零基础开始~~ JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java [b]API[/b] 换句话说,写java,当需要与数据库进行交互时,我们就需要用到JDBC来实现其交互功能。也许有些框架(比如hibernate)可以提供另外形式的数...

2012-11-05 10:57:34 108

原创 WebSphere 开篇简介

一)什么是WebSphere 先网上抄一段:WebSphere 是 IBM 的集成软件平台。它包含了编写、运行和监视全天候的工业强度的随需应变 Web 应用程序和跨平台、跨产品解决方案所需要的整个中间件基础设施,如服务器、服务和工具。WebSphere 提供了可靠、灵活和健壮的集成软件。 所以,一句话:WebSphere 是一系列软件的集合。而这些软件中占最重要地位的无疑就是W...

2012-09-21 16:35:58 115

原创 建造者模式

一) 重叠构造器模式的问题 不知道大家在编程时有没有遇到过这样一个问题。我们的构造函数需要传入很多参数,有些参数是必需的,有些参数是可选的。于是为了满足各种情况下的构造,我们可能会采用重叠构造器模式的方法。就像下面这个例子:[code="java"]public class NutritionFacts{ private final int servingSize; /...

2012-03-09 15:39:36 94

原创 移位运算符

一) 移位运算符的种类 java中的移位运算符一共分3种,它们分别是: [b]1 左移 4 -100转换为2进制数: 1000 0000 0000 0000 0000 0000 0110 0100 补码(注意符号位不变):1111 1111 1111 1111 1111 1111 1001 1100 带符号右移4位: ...

2012-03-07 16:17:01 128

原创 开篇简介--Spring is not only Spring Framework

一)什么是Spring 在java领域,当我们提起Spring一词时大概会有如下的含义: [b]1) spring projects[/b]:spring众多开源项目的总称。它包含的开源项目有: Spring AMQP Spring Android ...

2012-03-06 16:42:47 119

原创 工厂模式

[b]一)工厂模式简介[/b] 工厂模式是我们用于创建对象时所使用的模式。它大致可细分为三种:简单工厂模式(因为通常是使用静态函数实现该模式,所以又名静态工厂模式)、工厂方法模式以及抽象工厂模式。简单工厂模式顾名思义,其非常简单。简单到人们甚至开始讨论它还能不能算是一种设计模式。也许我们称其为一种编程习惯更为合适。但不管怎样,它是工厂方法模式和抽象工厂模式的基础。在简单工厂模式的基础上,...

2012-03-01 23:41:02 134

原创 观察者模式

一)何为观察者模式 先来看看观察者模式的定义吧:对象之间一对多的依赖,这样一来,当一个对象(subject)改变状态时,它的所有依赖者(observer)都会收到通知并自动更新。 一个经典的例子便是: 出版者 + 订阅者 = 观察者模式。 如果你了解报纸订阅是怎么回事,其实就知道观察者模式是怎么回事。只是名称不太一样,出版者改称为subject, 订阅者改称为observer。...

2012-02-22 00:32:09 105

原创 单件模式

一) 什么是单件模式 很简单,使代码只能实例化一个实例的设计模式。怎么做,看个典型样例:[img]http://dl.iteye.com/upload/attachment/0063/3293/e5286adf-b52d-3037-964f-e9cec416a8f8.png[/img] 如上图,把握3个注意点吧: 1)uniqueInstance 必须用...

2012-02-16 23:22:41 83

原创 策略模式

一)先聊聊那只鸭子 大家还记得F4写的那本《设计模式》么。那里的第一章介绍的便是策略模式。那个会飞的鸭子可谓是说明策略模式的经典。深入浅出的阐述了策略模式的使用场景和使用方法。这里我不过是再简略的介绍下书里的策略模式,在最后加上的点个人实践中对此模式的感悟罢了。二)何为策略模式 先来看看不用策略模式时候的代码: [img]http://dl.iteye.co...

2012-02-02 21:18:16 255

原创 Java Generics

一)泛型的作用 相对于依赖程序员来记住对象类型、执行类型转换——这会导致[b]程序运行时[/b]才发现错误,很难调试和解决。 泛型的主要好处就是让编译器保留参数的类型信息,执行类型检查,执行类型转换操作:[b]编译器保证[/b]了这些类型转换的绝对无误。而编译器能够帮助程序员在编译时强制进行大量的类型检查,发现其中的错误。并且Java泛型是一种便捷语法,能节省你某些Java类型转换(...

2012-01-14 16:06:17 106

原创 Java Serialize

一) 何为序列化(Serialize) 将Java 对象序列化为[b]二进制文件[/b]的技术称为序列化。二)何时需要使用到序列化技术 大致三种情况吧: a)当你想把的内存中的对象写入到硬盘的时候; b)当你想用套接字在网络上传送对象的时候; c)当你想通过RMI传输对象的时候;三)Hello, Serialize 话不多...

2012-01-07 15:22:47 156

原创 JDK 常用命令

一) 引言: 当我们安装完JDK时,除了必须的编译运行以外,它就已经自带了很多辅助工具。正所谓“工欲善其事,必先利其器。”如果能用好这些工具,它们将大大方便你的开发。它们的实用和方便有时甚至会使你惊讶的发现:JDK的这些自带的辅助工具将会是IDE的一个很好的补充。了解了这些命令你也就知道了IDE理论上能做些什么不能做些什么(不管你用的是什么IDE),因为归根结底IDE调用的就是这些命令啦。...

2011-12-31 21:10:37 171

原创 Commons FileUpload

一) 基础简介: 1、FileUpload 是 Apache commons下面的一个子项目,用来实现Java环境下面的[b]文件上传功能[/b],与常见的SmartUpload齐名。 2、组件FileUpload依赖于Commons IO组件。 目前FileUpload的最新版本是1.2.2 ,对于此版本官方推荐的依赖的IO组件版本是1.3.2 3、FileUplo...

2011-12-25 15:30:50 241

原创 “Hello Java” -- Java安装

一) 新手入门,基本概念很重要: JDK -- Java Development Kit = Java编译器 + JRE + 大量的Java工具(比如API文档生成工具等) JRE -- Java Runtime Environment = JVM + Java基础API(core java) JVM -- Java Virtual Machine,Java虚拟机包括...

2011-12-23 20:02:54 141

原创 Commons Collections

一)此包的下载 [url]http://commons.apache.org/collections/download_collections.cgi[/url] 此包目前最新的版本是3.2.1 二)此包的功能 为Java标准的Collections API提供了相当好的补充。在此基础上对其常用的数据结构操作进行了很好的封装、抽象和补充。保证性能的同时大大简化代码...

2011-12-22 21:13:14 91

原创 Commons BeanUtils

一)此包的下载 [url]http://commons.apache.org/beanutils/download_beanutils.cgi[/url] 此包目前最新的版本是1.8.3 二)此包的功能 用于处理JavaBeans。它利用Java的反射机制,从动态的生成对bean的getter和setter的调用代码,到模拟创建一个动态的bean,等等。这个包看似...

2011-12-21 13:24:38 125

原创 Commons Lang

一)此包的下载 [url]http://commons.apache.org/lang/download_lang.cgi[/url] 此包目前最新的版本是3.1二)此包的功能 跟java.lang这个包的作用类似,提供一些基础的、通用的操作和处理,如自动生成toString()的结果、自动实现hashCode()和equals()方法、数组操作、日期和时间的处理等等...

2011-12-18 20:07:21 163

原创 Apache 开篇

(一) 什么是Apache? Apache软件基金会(也就是Apache Software Foundation,简称为ASF),是专门为运作一个开源软件项目的团体提供支持的非盈利性组织,这个开源软件项目就是 Apache 项目。这个组织把自己作为有着相同目标的开发者与用户的团体,而不是简单的共享在一个服务器上的一组项目的组织团体。在它所支持的 Apache 项目与子项目中,所发行的软件...

2011-12-16 17:54:01 105

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除