自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 资源 (18)
  • 收藏
  • 关注

转载 【Java基础】开发中的23种设计模式详解

一、设计模式的分类总体来说设计模式分为三大类:创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式

2015-11-30 10:40:12 358

转载 【Java并发编程实战】-----“J.U.C”:Exchanger

前面介绍了三个同步辅助类:CyclicBarrier、Barrier、Phaser,这篇博客介绍最后一个:Exchanger。JDK API是这样介绍的:可以在对中对元素进行配对和交换的线程的同步点。每个线程将条目上的某个方法呈现给 exchange 方法,与伙伴线程进行匹配,并且在返回时接收其伙伴的对象。Exchanger 可能被视为 SynchronousQueue 的双向形式。Exchang

2015-11-30 10:37:04 305

转载 【Java并发编程实战】—–“J.U.C”:Phaser

Phaser由java7中推出,是Java SE 7中新增的一个使用同步工具,在功能上面它与CyclicBarrier、CountDownLatch有些重叠,但是它提供了更加灵活、强大的用法。CyclicBarrier,允许一组线程互相等待,直到到达某个公共屏障点。它提供的await()可以实现让所有参与者在临界点到来之前一直处于等待状态。CountDownLatch,在完成一

2015-11-30 10:35:57 495

转载 【Java并发编程实战】—–“J.U.C”:CountDownlatch

上篇博文LZ介绍了CyclicBarrier。CyclicBarrier所描述的是“允许一组线程互相等待,直到到达某个公共屏障点,才会进行后续任务”。而CountDownlatch和它也有一点点相似之处:CountDownlatch所描述的是“在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待”。在JDK API中是这样阐述的:用给定的计数 初始化 CountDownLa

2015-11-30 10:32:57 290

转载 【Java并发编程实战】—–“J.U.C”:CyclicBarrier

在上篇博客(【Java并发编程实战】—–“J.U.C”:Semaphore)中,LZ介绍了Semaphore,下面LZ介绍CyclicBarrier。在JDK API中是这么介绍的:一个同步辅助类,它允许一组线程互相等待,直到到达某个公共屏障点 (common barrier point)。在涉及一组固定大小的线程的程序中,这些线程必须不时地互相等待,此时 CyclicBarrier

2015-11-30 10:31:26 316

转载 【Java并发编程实战】—–“J.U.C”:ReentrantReadWriteLock

ReentrantLock实现了标准的互斥操作,也就是说在某一时刻只有有一个线程持有锁。ReentrantLock采用这种独占的保守锁直接,在一定程度上减低了吞吐量。在这种情况下任何的“读/读”、“读/写”、“写/写”操作都不能同时发生。然而在实际的场景中我们就会遇到这种情况:有些资源并发的访问中,它大部分时间都是执行读操作,写操作比较少,但是读操作并不影响数据的一致性,如果在进行读操作时采用独占

2015-11-30 10:30:07 714

转载 【Java并发编程实战】—–“J.U.C”:Semaphore

信号量Semaphore是一个控制访问多个共享资源的计数器,它本质上是一个“共享锁”。Java并发提供了两种加锁模式:共享锁和独占锁。前面LZ介绍的ReentrantLock就是独占锁。对于独占锁而言,它每次只能有一个线程持有,而共享锁则不同,它允许多个线程并行持有锁,并发访问共享资源。独占锁它所采用的是一种悲观的加锁策略,  对于写而言为了避免冲突独占是必须的,但是对于读就没

2015-11-30 10:27:26 283

转载 【Java并发编程实战】—–“J.U.C”:Condition

在看Condition之前,我们先来看下面这个例子:工厂类,用来存放、取出商品:[java] view plaincopyprint?public class Depot {      private int depotSize;     //仓库大小      private Lock lock;         //独占锁            public

2015-11-30 10:26:10 364

转载 【Java并发编程实战】-----“J.U.C”:ReentrantLock之三unlock方法分析

前篇博客LZ已经分析了ReentrantLock的lock()实现过程,我们了解到lock实现机制有公平锁和非公平锁,两者的主要区别在于公平锁要按照CLH队列等待获取锁,而非公平锁无视CLH队列直接获取锁。但是对于unlock()而已,它是不分为公平锁和非公平锁的。[java] view plaincopyprint?public void unlock() {    

2015-11-30 10:24:48 276

转载 【Java并发编程实战】—–“J.U.C”:ReentrantLock之二lock方法分析

前一篇博客简单介绍了ReentrantLock的定义和与synchronized的区别,下面跟随LZ的笔记来扒扒ReentrantLock的lock方法。我们知道ReentrantLock有公平锁、非公平锁之分,所以lock()我也已公平锁、非公平锁来进行阐述。首先我们来看ReentrantLock的结构【图来自Java多线程系列–“JUC锁”03之 公平锁(一)】:

2015-11-30 10:22:16 317

转载 【Java并发编程实战】—–“J.U.C”:ReentrantLock之一简介

注:由于要介绍ReentrantLock的东西太多了,免得各位客官看累,所以分三篇博客来阐述。本篇博客介绍ReentrantLock基本内容,后两篇博客从源码级别分别阐述ReentrantLock的lock、unlock实现机制。ReentrantLock,可重入的互斥锁,是一种递归无阻塞的同步机制。它可以等同于synchronized的使用,但是ReentrantLock提供了比sy

2015-11-30 10:20:11 444

转载 【Java并发编程实战】—–“J.U.C”:锁,lock

在java中有两种方法实现锁机制,一种是在前一篇博客中(【java7并发编程实战】—–线程同步机制:synchronized)介绍的synchronized,而另一种是比synchronized更加强大和领过的Lock。Lock确保当一个线程位于代码的临界区时,另一个线程不进入临界区,相对于synchronized,Lock接口及其实现类提供了更加强大、灵活的锁机制。一个简单的锁在

2015-11-30 10:18:15 419

转载 【Java并发编程实战】—–synchronized

在我们的实际应用当中可能经常会遇到这样一个场景:多个线程读或者、写相同的数据,访问相同的文件等等。对于这种情况如果我们不加以控制,是非常容易导致错误的。在java中,为了解决这个问题,引入临界区概念。所谓临界区是指一个访问共用资源的程序片段,而这些共用资源又无法同时被多个线程访问。在java中为了实现临界区提供了同步机制。当一个线程试图访问一个临界区时,他将使用一种同步机制来查看是不是已经

2015-11-30 10:16:33 475

转载 【Java并发编程实战】-----线程基本概念

在学习Java并发之前我们需要先理解一些基本的概念:共享、可变、线程安全性、线程同步、原子性、可见性、有序性。共享和可变要编写线程安全的代码,其核心在于对共享的和可变的状态进行访问。“共享”就意味着变量可以被多个线程同时访问。我们知道系统中的资源是有限的,不同的线程对资源都是具有着同等的使用权。有限、公平就意味着竞争,竞争就有可能会引发线程问题。“可变”是指变量的值

2015-11-30 10:14:11 347

转载 【java基础】Java邮件开发

前面介绍了电子邮件系统的基本知识(Java邮件开发-----电子邮件的基本概念),那篇博客知识对基础理论知识做一些简要介绍,并不妨碍我们做邮件开发。现在开始Java邮件开发。          一、JavaMail简介         JavaMail,顾名思义,提供给开发者处理电子邮件相关的编程接口。它是Sun发布的用来处理email的API。它可以方便地执行一些常用的邮件传输。Ja

2015-11-30 09:46:19 503

转载 【java基础】Java邮件开发(基本概念介绍 )

电子邮件用于网上的信心传递和交流,它是最重要的Internet服务之一。据统计Internet有30%的业务是电子邮件有关的。同时我们也不可否认它在我们的日常生活、工作办公方面扮演着很重要的角色。譬如:许多办公自动化项目(OA)中都要附带发送邮件的功能,如果还要使用OutLook等手工方式就不适合,在这个高速的时代,我们需要提供工作效率,让工作能够自动化。同时在许多网站中也都需要附带发送邮件的功能

2015-11-30 09:44:08 437

转载 【JavaScript】js操作本地文件

var fso, f; var ForWriting = 2; var TriStateFalse = 0; fso = new ActiveXObject("Scripting.FileSystemObject"); //第一种方式 f = fso.CreateTextFile("d:\\lcd_log.txt", true); //第二种方式

2015-11-28 23:23:41 810

转载 【JavaScript】开发谷歌浏览器插件

摘要:作者自己动手写了一个翻译插件,读者可以从中了解到开发chrome的插件的过程。  今天早上打开博客园.看到一文章"开发chrome扩展程序"  自己看看,也还很简单,就自己动手写一个翻译插件  来看看效果  以前用谷歌的翻译接口做了一个翻译功能的网页http://liuju150.cacacoo.com  所以我就打算把这个功能做成一个谷歌浏览器的插件

2015-11-28 22:59:48 657

转载 【java基础】关于JNDI and EJB

JNDI (The Java Naming and Directory Interface,Java命名和目录接口)是一组在Java应用中访问命名和目录服务的API。为开发人员提供了查找和访问各种命名和目录服务的通用、统一的方式。借助于JNDI提供的接口,能够通过名字定位用户、机器、网络、对象服务等。 命名服务:就像DNS一样,通过命名服务器提供服务,大部分的J2EE服

2015-11-27 13:03:44 413

转载 【Jboss】在jboss上部署web应用

1、JBoss介绍JBoss完全实现了J2EE的服务栈:EJB (Enterprise JavaBeans)JMS (Java Message Service)JTS/JTA (Java Transaction Service / Java Transaction API)Servlet and JSP (JavaServer Pages)JNDI (Java Naming

2015-11-27 10:45:16 453

转载 【网络】远程通信(RPC,Webservice,RMI,JMS、EJB、JNDI的区别)对比

总结这些概念都是易混淆,最基本概念定义复习和深入理解,同时也是架构师必备课程RPC(Remote Procedure Call Protocol)       RPC使用C/S方式,采用http协议,发送请求到服务器,等待服务器返回结果。这个请求包括一个参数集和一个文本集,通常形成“classname.methodname”形式。优点是跨语言跨平台,C端、S端有更大的独

2015-11-26 17:40:16 706

转载 【java基础】JPA详解(part2)

1.JPA的实体生命周期:JPA的实体有以下4中生命周期状态:(1).New:瞬时对象,尚未有id,还未和Persistence Context建立关联的对象。(2).Managed:持久化受管对象,有id值,已经和Persistence Context建立了关联的对象。(3).Datached:游离态离线对象,有id值,但没有和Persistence Context建立关联的对象

2015-11-25 14:29:09 327

转载 【Java基础】JPA详解(part1)

1.JPA简介:Java持久化规范,是从EJB2.x以前的实体Bean(Entitybean)分离出来的,EJB3以后不再有实体bean,而是将实体bean放到JPA中实现。JPA是sun提出的一个对象持久化规范,各JavaEE应用服务器自主选择具体实现,JPA的设计者是Hibernate框架的作者,因此Hibernate作为Jboss服务器中JPA的默认实现,Oracle的Weblogic使

2015-11-25 14:26:52 34597

转载 【网络】WebService到底是什么?

一、序言  大家或多或少都听过WebService(Web服务),有一段时间很多计算机期刊、书籍和网站都大肆的提及和宣传WebService技术,其中不乏很多吹嘘和做广告的成分。但是不得不承认的是WebService真的是一门新兴和有前途的技术,那么WebService到底是什么?何时应该用?   当前的应用程序开发逐步的呈现了两种迥然不同的倾向:一种是基于浏览器的瘦客户端应用程序,一种是

2015-11-25 11:29:55 777

转载 【Hibernate】hibernate的二级缓存(spring)

hibernate3.X二级缓存的使用(一)Hibernate的二级缓存策略的一般过程如下:1) 条件查询的时候,总是发出一条select * from table_name where …. (选择所有字段)这样的SQL语句查询数据库,一次获得所有的数据对象。2) 把获得的所有数据对象根据ID放入到第二级缓存中。 3) 当Hibernate根据ID访问数据对象的时候,

2015-11-24 12:39:36 327

转载 【Java基础】JPA入门例子(采用JPA的hibernate实现版本)

(1)、JPA介绍:      JPA全称为Java Persistence API ,Java持久化API是Sun公司在Java EE 5规范中提出的Java持久化接口。JPA吸取了目前Java持久化技术的优点,旨在规范、简化Java对象的持久化工作。使用JPA持久化对象,并不是依赖于某一个ORM框架。     为什么要使用JAP?      在说为什么要使用JPA之前,我们有必

2015-11-24 12:36:35 462

原创 【日志】Java日志工具(common-logging/log4j/slf4j)在常用框架(Struts2/Spring/Hibernate/Mybatis)中的灵活运用

Java日志工具(common-logging/log4j/slf4j)在常用框架(Struts2/Spring/Hibernate/Mybatis)中的灵活运用Spring :Commons-LoggingStruts :有自身默认的日志工具,间接的优先支持 Commons-LoggingHibernate :直接的使用 Slf4JiBatis/MyBatis :有自

2015-11-20 11:45:12 1085

转载 【日志】Java 流行框架(Spring/Struts2/Hibernate/iBatis)都在使用什么日志组件

做 Java Web 应用我想多会采用这两种框架组合,SSH 和 SSI,其实我是不太喜欢用这两种缩写方式:SSH = Spring + Struts + Hibernate,SSH 由久已久所代表的是 Secure Shell,像 httpsSSI = Spring + Struts + iBatis,SSI 在很久以前就是 Server Side Include,像 shtml,而 i

2015-11-20 10:41:21 869

转载 【JAVA基础】 IO操作小结——节点流和处理流

JAVA IO操作小结——节点流和处理流 JAVA IO操作总结——节点流和处理流  按照流是否直接与特定的地方(如磁盘、内存、设备等)相连,分为节点流和处理流两类。   节点流:可以从或向一个特定的地方(节点)读写数据。如FileReader   处理流:是对一个已存在的流的连接和封装,通过所封装的流的功能调用实现数据读写。如BufferedReader。处理流的构造方法总是

2015-11-18 16:53:44 382

转载 【java基础】计算机各种编码来历及区别

计算机各种编码来历及区别 GB2312:一个小于127的字符的意义与原来相同,但两个大于127的字符连在一起时,就表示一个汉字,这样我们就可以组合出大约7000多个简体汉字了。在这些编码里,我们还把数学符号、罗马希腊的字母、日文的假名们都编进去了,连在 ASCII 里本来就有的数字、标点、字母都统统重新编了两个字节长的编码,这就是常说的"全角"字符,而原来在127号以下的那

2015-11-18 16:39:34 384

转载 【java基础】java中的char类型

java中的char类型一:char的初始化char是Java中的保留字,与别的语言不同的是,char在Java中是16位的,因为Java用的是Unicode。不过8位的ASCII码包含在Unicode中,是从0~127的。Java中使用Unicode的原因是,Java的Applet允许全世界范围内运行,那它就需要一种可以表述人类所有语言的字符编码。Unicode。但是

2015-11-18 16:30:33 416

转载 【java基础】Java中Unicode、编码的理解

(转)谈谈对Java中Unicode、编码的理解     我们经常会遇到编码问题。Java号称国际化的语言,是因为它的class文件采用UTF-8,而JVM运行时使用UTF-16(至于为什么JVM中要采用UTF-16,我没看过 相关的资料,但我猜可能是因为JAVA里面一个字符(char)就是16位的,而UTF-16正是双字节编码),都是unicode的编码。     unicode

2015-11-18 16:27:27 498

java实现微信打飞机源码

java实现微信打飞机源码,桌面程序,可直接运行

2016-01-21

Git教程By廖雪峰

廖雪峰老师的Git教程完整版,网页转换制成,适合Git入门到工作

2016-01-18

AngularJS权威教程(高清)

AngularJS权威教程(高清),一本很好的书,对做前端开发的人员很有帮助

2016-01-18

Nginx开发从入门到精通

淘宝内部资料,高清非扫描,适合学习Nginx的开发人员,希望对大家有帮助

2016-01-18

微信平台开发手册

官网的微信开发手册,网页转换制成,希望对微信开发的伙伴有帮助

2016-01-18

j2ee_6java包

j2ee_6.jar在进行javaweb开发时需要导入的包

2015-11-30

javaee源码

javaee官方源码,适合想深入学习Servlet,Filter等javaee知识的朋友

2015-11-30

MPlayer音乐播放器(Android)

自己写的一个Android播放器,内含原项目、应用安装包、应用截图。基本实现播放器所有功能:播放、暂停、下一曲、上一曲、播放模式切换(单曲循环、全部循环、随机播放、顺序播放)、歌词显示、歌词搜索、歌词下载、歌曲管理、歌曲列表、播放列表、专辑列表、艺术家列表、在线音乐、应用分享等等。

2014-07-19

Apollo音乐播放器

Apollo的android开源音乐播放器,实现的很好,很适合学习研究

2014-04-21

XXPlayer-android音乐播放器源码.zip

android 音乐播放器 仅供学习

2014-04-12

junit4.8.2(JUnit.jar及源码)

Junit工具包及其源码,很好的java测试工具

2013-08-21

JDK_1.6EN.CHM中文完整版

JDK_1.6EN.CHM中文绝对完整版,很好很强大。

2013-04-29

java图形界面美化包 nimrodlf-1.0b

该报用于美化java界面,载入包后加入如下代码: try { UIManager.setLookAndFeel("org.jvnet.substance.skin.SubstanceFieldOfWheatLookAndFeel"); } catch (ClassNotFoundException e) { // TODO 自动生成的 catch 块 e.printStackTrace(); } catch (InstantiationException e) { // TODO 自动生成的 catch 块 e.printStackTrace(); } catch (IllegalAccessException e) { // TODO 自动生成的 catch 块 e.printStackTrace(); } catch (UnsupportedLookAndFeelException e) { // TODO 自动生成的 catch 块 e.printStackTrace(); }

2012-10-31

java连接sql server数据库源代码

用eclipse连接之前需要先加载驱动包,驱动包sqljdbc4

2012-10-31

sqljdbc4.jar

java连接sql server数据库的驱动包,需要先加载

2012-10-31

Java 2 图形设计卷Ⅱ:SWING.chm

 第1章 简介    1.1 Swing的历史    1.2 轻量组件与重量组件的比较    1.3 Swing组件     1.3.1 AWT的替代组件     1.3.2 Swing增加的组件    1.4 J组件    1.5 Swing包概览    1.6 Swing与AWT    1.7 开始学习    1.8 Swing资源    1.9 本章回顾   第2章 Swing的基本知识

2012-10-31

空空如也

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

TA关注的人

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