自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

不忘初心的博客

想靠工作来突破技术瓶颈是不可能的,只有利用课余时间去看著作、钻研源码。

  • 博客(19)
  • 资源 (26)
  • 收藏
  • 关注

原创 java设计模式学习汇总

1.什么是设计模式设计模式是一套被反复使用的、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了重用代码、让代码更容易被他人理解、保证代码可靠性。设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样。项目中合理地运用设计模式可以完美地解决很多问题,每种模式在现实中都有相应的原理来与之对应,每种模式都描述了一个在我们周围不断重复发生的问题,以及该

2017-03-07 10:33:50 2736

原创 java多线程学习之死锁的模拟和避免

1.死锁死锁是这样一种情形:多个线程同时被阻塞,它们中的一个或者全部都在等待某个资源被释放。由于线程被无限期地阻塞,因此程序不可能正常终止。Java 死锁产生的四个必要条件:    1、互斥使用,即当资源被一个线程使用(占有)时,别的线程不能使用    2、不可抢占,资源请求者不能强制从资源占有者手中夺取资源,资源只能由资源占有者主动释放。    3、请求和保持,即当资

2017-03-03 16:45:01 862 1

转载 Lock和synchronized之间的那点事

一.synchronized的缺陷  synchronized是java中的一个关键字,也就是说是Java语言内置的特性。那么为什么会出现Lock呢?  在上面一篇文章中,我们了解到如果一个代码块被synchronized修饰了,当一个线程获取了对应的锁,并执行该代码块时,其他线程便只能一直等待,等待获取锁的线程释放锁,而这里获取锁的线程释放锁只会有两种情况:  1)获取锁

2017-03-03 14:29:33 515

原创 java多线程学习之线程池

1.介绍多线程技术主要解决处理器单元内多个线程执行的问题,它可以显著减少处理器单元的闲置时间,增加处理器单元的吞吐能力。 假设一个服务器完成一项任务所需时间为:T1 创建线程时间,T2 在线程中执行任务的时间,T3 销毁线程时间,当T1 + T3 远大于 T2,则可以采用线程池,可以提高服务器性能。 在Java 5之后,并发编程引入了一堆新的启动、调度和管理线程的API。Executor框架便

2017-03-24 15:03:12 536

原创 Java面试宝典系列之基础排序算法

1.介绍排序是一个在编程中间是非常基础的和重要的,网上也有很多有关排序算法的文章,再次我也是总结学习别人的知识,将别人的知识转为自己的知识,因此做此笔记,以便更好地掌握java常见排序算法。2.插入算法2.1 基本思想 每步将一个待排序的记录,按其顺序码大小插入到前面已经排序的字序列的合适位置(从后向前找到合适位置后),直到全部插入排序完为止。 2.2 实例 2.3 算法实现public

2017-03-20 17:44:38 736

原创 elasticsearch rest API初体验

1.介绍elasticsearch使用 JSON (或称作JavaScript Object Notation ) 作为文档序列化的格式。JSON 已经被大多数语言支持,也成为 NoSQL 领域的一个标准格式。它简单、简洁、易于阅读。 为了能让你感受一下 Elasticsearch 能做什么以及它是有多么的易用,我们会先为你简单展示一下,其中包括了基本的 创建索引,搜索 以及 聚合。2.rest

2017-03-15 17:45:48 1522

原创 mac安装elasticsearch详细步骤

1.下载官网下载地址 这里写链接内容 最新的版本已经是5.2.2,害怕最新的有兼容问题,因此选择下载的版本是2.4.3。 (区别一下不同系统版本问题,一般window下载zip,unix下载tar.dz,不过我mac下载的zip版本,测试是可以用的,可能是mac系统zip和tar都支持吧)2.运行下载以后解压,进入elasticsearch-2.4.3文件夹, cd /Users/jikuka

2017-03-15 11:28:21 23570

转载 UML简单入门

在UML类图中,常见的有以下几种关系:泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency)。1.泛化(Generalization)【泛化关系】:是一种继承关系,它指定了子类如何特化父类的所有特征和行为例如:老虎是动物的一种.【箭头指向】:带三角箭头的实线

2017-03-13 18:03:03 429

原创 java设计模式学习之观察者模式

1.介绍 观察者模式(Observer Pattern)是定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。属于类和类之间的关系,不涉及到继承,学习设计模式的时候应该记得归纳比较。 在实际生活中,比如我们乘坐卧铺,上车之后负责该车间的乘务人员会将你的卧铺票兑换成对应床铺的卡片,在快下车的时候,乘务人员会根据自己小本本上的卧铺车票过来通知你要下

2017-03-10 11:02:28 446

原创 java设计模式学习之策略模式

1.介绍 在策略模式(Strategy Pattern)中,一个类的行为或其算法可以在运行时更改。这种类型的设计模式属于行为型模式。比如我们在计算两个数字的时候,会有数字相加,数字相减,数字相乘,数字相除几种方法,一般做法,我们会用一个 if…else 来判断,但是这样有一个不好的地方就是代码复杂化,不利于维护,这时候可以使用策略模式。 2.代码实例 未使用策略模式的代码写法:public i

2017-03-09 17:37:35 489

原创 java设计模式学习之适配器模式

1.介绍适配器模式将某个类的接口转换成客户端期望的另一个接口表示,目的是消除由于接口不匹配所造成的类的兼容性问题。主要分为三类:类的适配器模式、对象的适配器模式、接口的适配器模式。实际生活中,比如有一个二孔插座,我现在需要用洗衣机去洗衣服,但是洗衣机插头需要一个三孔插座,二孔插座肯定不适合,这个时候我又不想把原来墙上的二孔插座砸了,换成三孔插座,怎么办了这时候我们去超市买一个插孔转换器就行了,这个插

2017-03-09 16:41:02 504

原创 java设计模式学习之代理模式

1.介绍代理模式(Proxy Pattern)是指一个类代表另一个类的功能,这种类型的设计模式属于结构型模式。核心作用就是通过代理,控制对对象的访问。比如现实生活中,我们买卖房子,那么我们会找中介,我要卖房子,但是我们没有时间去卖,我主动交给中介,中介会帮我发布,会帮我找买家,带买家看房,最后我只要收到钱就行了。 在程序中也是如此,通过代理,可以详细控制访问某个或者某类对象的方法,在调用这个方法前

2017-03-09 14:14:19 417

原创 java设计模式学习之装饰者模式

1.介绍装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装。 假如当我们想给一个类扩展新的方法的时候,常用的做法是新建一个子类,在子类中使用继承方式实现,由于继承为类引入静态特征,并且随着扩展功能的增多,子类会很膨胀。当我们在不想增加很多子类的情况下使用装饰器模式扩展类,相比生成子类更为

2017-03-08 17:14:14 526

原创 java设计模式学习之单例模式

1.介绍单例对象(Singleton)是一种常用的设计模式。在Java应用中,单例对象能保证在一个JVM中,该对象只有一个实例存在。这样的模式有几个好处: 1)、某些类创建比较频繁,对于一些大型的对象,这是一笔很大的系统开销。 2)、省去了new操作符,降低了系统内存的使用频率,减轻GC压力。 3)、有些类如交易所的核心交易引擎,控制着交易流程,如果该类可以创建多个的话,系统完全乱了。(比如一

2017-03-08 15:08:55 431

原创 java设计模式学习之工厂模式和抽象工厂模式

1.工厂模式 1.1 介绍 1.1.1 概念 工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。 1.1.2 生活化 比如我们去超市买东西,作为顾客,我们不需要关注商品从何而来,只要是超市上架

2017-03-08 11:33:50 884

原创 java多线程之火车售票系统模拟

1.前言为了学习多线程共享与通信,我们模拟一个火车售票系统,假设有10张火车票,三个窗口(也就是三个线程)同时进项售票。2.非同步代码package com.tl.skyLine.thread;/** * Created by tl on 17/3/6. */public class SellTicket { public static void main(Stri

2017-03-06 14:58:11 18022 4

原创 java并发学习之BlockingQueue实现生产者消费者

1.介绍     阻塞队列 (BlockingQueue)是Java util.concurrent包下重要的数据结构,BlockingQueue提供了线程安全的队列访问方式:当阻塞队列进行插入数据时,如果队列已满,线程将会阻塞等待直到队列非满;从阻塞队列取数据时,如果队列已空,线程将会阻塞等待直到队列非空。并发包下很多高级同步类的实现都是基于BlockingQueue实现的。JDK7提供

2017-03-03 11:05:57 7914 1

原创 java多线程面试汇总

1.线程是什么线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。Java中,每个线程都有一个调用栈,即使不在程序中创建任何新的线程,线程也在后台运行着。一个Java应用总是从main()方法开始运行,mian()方法运行在一个线程内,它被称为主线程。一旦创建一个新的线程,就产生一个新的调用栈。线程总体分两类:用户线程和守候线程。当所有用户线程

2017-03-02 17:57:16 607

原创 java模拟多线程socket通信

1.socket和serverSocket通信socket和serverSocket通信简单介绍如下,注意客户端与服务器端是怎么交换数据的:2.服务器端代码package com.tl.skyLine.socket;import java.io.DataInputStream;import java.io.DataOutputStream;import java.io.

2017-03-01 16:28:03 4248 2

SSH简单员工框架,直接运行

SSH员工管理框,登录,员工,部门增删改查,分页,基本内容,可直接运行1

2017-07-05

SSH简单框架,可运行

## SSH框架员工系统之实现 ## 实现功能 * 员工的增删改查 * 部门的增删改查

2017-07-05

redis-2.4.5-win32-win64.zip

下载到的Redis支持32bit和64bit。根据自己实际情况选择。都是windows环境的,放心使用!

2016-03-21

完整ajaxfileupload.js

ajax上传文件必须js文件,修复其中缺少handleError方法,json处理带有,问题,亲测可以,直接引用即可!

2015-11-21

bootstrap时间控件

bootstrap-daterangepicker基于Bootstrap 框架的日期范围选择插件 。这个日期范围选择器组件引导创建一个下拉菜单,用户可以选择一个日期范围。它将呈现出两个日历从选择开始日期和结束日期。或者,你可以提供一系列的日期范围,用户可以从相反的选择从日历上的日期选择。

2015-11-18

Slik-Subversion-1.8.14-win32.msi

slick-1.8,ide专用,官网下载地址:https://sliksvn.com/pub/

2015-11-17

ajaxfileupload.js

$.ajaxFileUpload( { url:'update.do?method=uploader', //需要链接到服务器地址 secureuri:false, fileElementId:'houseMaps', //文件选择框的id属性 dataType: 'json', //服务器返回的格式,可以是json, xml success: function (data, status) //相当于java中try语句块的用法 { $('#result').html('添加成功'); }, error: function (data, status, e) //相当于java中catch语句块的用法 { $('#result').html('添加失败'); } } );

2015-11-16

poi-bin-3.13-20150929.zip

poi-bin-3.13-20150929.zip,最新poi所需jar包和api说明

2015-11-09

MyBatis3.2.3帮助文档(中文版)CHM 下载

MyBatis 本是apache的一个开源项目iBatis,中文文档,下载即可打开,如果打开页面显示不出来,执行以下操作即可:右键-属性-解除约束即可

2015-11-05

Xftp安装exe

是一个基于 MS windows 平台的功能强大的SFTP、FTP 文件传输软件。使用了 Xftp 以后,MS windows 用户能安全地在 UNIX/Linux 和 Windows PC 之间传输文件。Xftp 能同时适应初级用户和高级用户的需要。它采用了标准的 Windows 风格的向导,它简单的界面能与其他 Windows 应用程序紧密地协同工作,此外它还为高级用户提供了众多强劲地功能特性。

2015-10-20

java反编译文件编辑器-jd-gui

jd-gui可以预览java经过编译的后缀为.class的文件,使用时直接拖过来即可实现在线预览!

2015-09-26

Subversion-1.9.1-win32.msi

Subversion为版本控制软件的服务器端。

2015-09-21

mysql-connector-java-5.1.18.zip

mysql-connector-java-5.1.18.zip

2015-09-16

动态小狗404demo

动态404页面,一只小狗绕地球转动动态页面,

2015-09-07

拉钩网前台代码

拉钩网网站前台相关代码,包括js,html,css,图片,可供大家学习。拉钩网网站前台相关代码,包括js,html,css,图片,可供大家学习。拉钩网网站前台相关代码,包括js,html,css,图片,可供大家学习。

2015-09-07

LICEcap_ha,专业制作gif工具

LICEcap[1] 是一款简洁易用的动画屏幕录制软件[2] ,它可将屏幕录像的内容直接保存为高质量(每帧颜色数量可超过256)GIF动态图片格式。并且支持特别标记鼠标操作动态效果。支持加入时间显示和标题名称帧及自定义热键功能,并自由调整录制窗口大小,你完全可以使用LICEcap录制出GIF图片格式的视频教程,看起来显得很专业!

2015-09-07

postgresql-9.0-801.jdbc4.jar

pg数据库加载驱动类

2015-09-07

java_api中文1.7

java_api中文1.7

2015-09-07

java_api中文1.6

java api,中文1.6和1.7

2015-09-07

eclispe反编译插件和工具

在eclipse里面安装之后,就可以打开一个.java类对应的.class类,在eclipse里面安装之后,就可以打开一个.java类对应的.class类,在eclipse里面安装之后,就可以打开一个.java类对应的.class类,

2015-09-07

JForum_SSO_-_JForum单点登陆原理与配置

一般来说,两个不同系统的整合的难点部分,便是需要解决单点登陆问题。 对于我们已有的WEB应用中的用户,若该用户已经登陆,并通过 联结迁移到JForum页面时,JForum要能够识别该用户已经登陆(不需要二次登陆)才不会让用户感到别扭(对用户来说,就好像使用的是同一个系统似的)。 但由于分属于2个不同的系统,所以它们之间不能共用同一套Session,这就需要使用一种特殊的机制来实现它们之间的互相通信。

2015-07-28

jforum数据字典

jforum数据字典

2015-07-28

删除SVN信息

管理SVN在java开发中是很流行,很重要的,但是有时候会很出现桌面图面异常的情况,点击该文件即可解决

2015-07-24

Spring+Mybatis+MySql+Maven项目源码

利用Maven来管理项目中的JAR包,同时使用Spring在业务处理层进行事务管理。数据库使用MySq,数据处理层使用Spring和Mybatis结合。

2015-06-29

MyEclipse2014 破解工具

MyEclipse2014 非常强大,也集成了开发 javaweb 的很多强大框架。比如Hibernate,Struts,Spring 等。给开发者带来很大的方便,节省不少开发时间。不过MyEclipse2014并不是免费的,这让搞java开发的程序员很头痛,不过出名的软件自然就有人破解,下载下面工具,按照网上百度操作即可。

2015-06-29

hibernate3

hibernate3开发必要jar包,使用时直接导入即可

2015-05-25

空空如也

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

TA关注的人

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