自定义博客皮肤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)
  • 资源 (28)
  • 收藏
  • 关注

原创 多线程操作中为什么使用while而不是if来做判断状态是否就绪

假设有三个线程ABC,A为生产者线程,B为消费者线程,C为破坏者线程。三个线程都进入一个共享对象的方法(当然不是同时进入),C进入的时候,通过调用notifyAll的方法,把所有的wait唤醒,如果用了if,代码会往下进行,会导致无法获取到元素或者删除元素。如果是while就不一样了,就会继续检查条件。1.容器类EventStoage.javapackage sss;import java....

2018-05-24 23:34:00 2300 2

转载 一个经典例子让你彻彻底底理解java回调机制

以前不理解什么叫回调,天天听人家说加一个回调方法啥的,心里想我草,什么叫回调方法啊?然后自己就在网上找啊找啊找,找了很多也不是很明白,现在知道了,所谓回调:就是A类中调用B类中的某个方法C,然后B类中反过来调用A类中的方法D,D这个方法就叫回调方法,这样子说你是不是有点晕晕的,其实我刚开始也是这样不理解,看了人家说比较经典的回调方式:Class A实现接口CallBack callback——背景...

2018-05-24 19:30:54 131

转载 整数分解为若干项之和

将一个正整数N分解成几个正整数相加,可以有多种分解方法,例如7=6+1,7=5+2,7=5+1+1,…。编程求出正整数N的所有整数分解式子。输入格式:每个输入包含一个测试用例,即正整数N (0 < N ≤ 30)。输出格式:按递增顺序输出N的所有整数分解式子。递增顺序是指:对于两个分解序列 N1=n1,n2,⋯ 和 N2=m1,m2,⋯,若存在 i 使得 n1=m1, ⋯ , ni=mi,但...

2018-05-22 22:09:40 2989

转载 对于 Netty ByteBuf 的零拷贝(Zero Copy) 的理解

目录通过 CompositeByteBuf 实现零拷贝通过 wrap 操作实现零拷贝通过 slice 操作实现零拷贝通过 FileRegion 实现零拷贝此文章已同步发布在我的 segmentfault 专栏.根据 Wiki 对 Zero-copy 的定义:"Zero-copy" describes computer operations in which the CPU does not per...

2018-05-22 10:38:18 296

转载 java.nio.Buffer 中的 flip()方法

在Java NIO编程中,对缓冲区操作常常需要使用  java.nio.Buffer中的 flip()方法。  Buffer 中的 flip() 方法涉及到 Buffer 中的capacity、position、limit三个概念。       capacity:在读/写模式下都是固定的,就是我们分配的缓冲大小(容量)。       position:类似于读/写指针,表示当前读(写)到什么位置。...

2018-05-22 09:42:21 333

原创 Git 学习之旅

0.git不可不知道的东西  a.工作区      也就是的本地磁盘用到的地方,比如说你的Java项目demo在d:\demo,那么这个地址就是你的工作区,当然前提是你这个目录被git纳入了版本库管理(在d:\demo 目录运行 git init 就可以在当前目录生成一个.git目录,表明已经创建了一个版本库)。  b.暂存区        这个概念非常重要,一个文件加入了暂存区表明该文件可以被g...

2018-05-20 11:32:04 179

转载 细说java动态代理和cglib的动态代理

  提到代理,想必大家对设计模式中的静态代理和动态代理都比较熟悉,小编之前在博客中对动态和静态代理进行了对比,这篇博文就只探讨java动态代理和cglib动态代理之间的区别;♚  静态代理的温习        在我们使用静态代理的时候,每一个代理类只能为一个接口提供服务,这这样一来在程序开发中会产生过多的代理,而且所有的代理操作除了调用的方法不一样之外,其他的操作都是相同的,这样就会造成过多的重...

2018-05-19 13:54:45 372

转载 jvm住内存与工作内存,内存模型反映的java多线程问题

找了多篇文章,自己将重点以及可以让人深入理解jvm以及多线程的知识做总结,作为自己的学习笔记:一、jvm主内存与工作内存    首先,JVM将内存组织为主内存和工作内存两个部分。主内存中主要包括本地方法区和堆。每个线程都有一个工作内存,工作内存中主要包括两个部分,一个是属于该线程的栈和对主存部分变量拷贝的寄存器。  1.所有的变量都存储在主内存中(虚拟机内存的一部分...

2018-05-18 19:25:11 230

转载 Socket 服务端使用多线程实现多客户端通讯实例

socket通信原理    Java多线程实现Socket通讯  1、服务端import java.io.IOException;import java.net.ServerSocket;import java.net.Socket;/** * <p> * 基于socket通讯-服务端 * <p> * * @author <a href="mailt...

2018-05-17 10:41:56 340

原创 读写锁和两种同步方式的对比

读写锁ReentrantReadWriteLock概述大型网站中很重要的一块内容就是数据的读写,ReentrantLock虽然具有 完全互斥排他的效果(即同一时间只有一个线程正在执行lock后面的任务),但是效率非常低。所以在JDK中提供了一种读写锁 ReentrantReadWriteLock,使用它可以加快运行效率。读写锁表示两个锁,一个是读操作相关的锁,称为共享锁;另一个是写操作相关的锁,称...

2018-05-16 20:03:05 157

转载 图解JVM垃圾回收算法

1 简单介绍下----->垃圾回收概念GC中的垃圾,指的是存在于内存中的、不会再被使用的对象。而垃圾回收就是把那些不再被使用的对象进行清除,收回占用的内存空间。如果不及时对内存中的垃圾进行清理,那么这些垃圾对象所占的内存空间会一直保留到应用程序结束,被保留的空间无法被其他对象使用。如果大量不会被使用的对象一致占着空间不放,如果应用程序需要内存空间,没有多余的内存空间供其使用的话,就会导致内存...

2018-05-15 23:21:19 113

原创 Spring AOP源码分析文字版

/** * AOP:【动态代理】 *         指在程序运行期间动态的将某段代码切入到指定方法指定位置进行运行的编程方式; *  * 1、导入aop模块;Spring AOP:(spring-aspects) * 2、定义一个业务逻辑类(MathCalculator);在业务逻辑运行的时候将日志进行打印(方法之前、方法运行结束、方法出现异常,xxx) * 3、定义一个日志切面类(LogAsp...

2018-05-15 23:12:58 123

原创 Spring IOC容器启动源码分析文字版

Spring容器的refresh()【创建刷新】;1、prepareRefresh()刷新前的预处理;    1)、initPropertySources()初始化一些属性设置;子类自定义个性化的属性设置方法;    2)、getEnvironment().validateRequiredProperties();检验属性的合法等    3)、earlyApplicationEvents= new...

2018-05-15 23:11:00 733 1

原创 springMVC实现 MultipartFile 多文件上传

1、Maven引入所需的 jar 包(或自行下载)     <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.4</ve...

2018-05-12 19:19:38 861

转载 ConcurrentHashMap实现原理及源码分析

ConcurrentHashMap实现原理及源码分析  ConcurrentHashMap是Java并发包中提供的一个线程安全且高效的HashMap实现(若对HashMap的实现原理还不甚了解,可参考我的另一篇文章HashMap实现原理及源码分析),ConcurrentHashMap在并发编程的场景中使用频率非常之高,本文就来分析下ConcurrentHashMap的实现原理,并对其实现原理进行分...

2018-05-11 16:35:50 149

转载 hashMap

一、传统 HashMap的缺点(1)JDK 1.8 以前 HashMap 的实现是 数组+链表,即使哈希函数取得再好,也很难达到元素百分百均匀分布。(2)当 HashMap 中有大量的元素都存放到同一个桶中时,这个桶下有一条长长的链表,这个时候 HashMap 就相当于一个单链表,假如单链表有 n 个元素,遍历的时间复杂度就是 O(n),完全失去了它的优势。(3)针对这种情况,...

2018-05-11 15:53:21 139

转载 SpringMVC学习系列----3---视图解析流程分析

本篇主要讲述SpringMVC如何解析、渲染视图并转发返回结果对象。请求处理方法执行完成后,最终返回一个ModelAndView对象。对于那些返回String,view或者ModelMap等类型的处理方法,SpringMVC也会在内部将他们装配成一个ModelAndView对象。它包含了逻辑名和模型对象,其中的mo...

2018-05-11 14:03:36 313

原创 SpringMVC学习系列----1---发送get/post/put/delete请求

1.前端页面        Test Rest Get2.  控制器/** * Rest 风格的 URL. 以 CRUD 为例: 新增: /order POST 修改: /order/1 PUT update?id=1 获取: * /order/1 GET get?id=1 删除: /

2018-05-09 20:05:39 422

原创 ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql'

提示:ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql'。前两天也出现过这个问题,网上找了一个比较流行的方法(见方法一),搞定了。今天又用这个试了试,却搞不定,在网上找了半天,终于发现是因为mysql数据库的user表里,存在用户名为空的账户即匿名账户,导致登录的时候是虽然用的是root,但实际

2018-05-07 19:54:00 472

spring整合redis小demo

本资源的功能是利用spring整合redis,进行了基本的操作,具体见博客地址 https://blog.csdn.net/u012150590/article/details/79862294

2018-04-09

基于Eclipse、Maven搭建SSM

基于Eclipse、Maven搭建SSM,数据库为mysql,实现了一个简单的查询功能。

2018-03-31

Groovy插件,适合Eclipse4.7 版本

在线下了好久都没成功,终于用离线版安装搞定了,哈哈哈

2018-03-29

dubboHello-master

dubbo和zookeeper,eclipse,maven搭建的一个微服务架构。

2018-03-13

dubbo/zookeeper

这个压缩文件包括zookeeper和dubbo,可以完美运行,好好享受吧。详情去我的博客寻找 http://blog.csdn.net/u012150590

2018-03-13

JavaFX快速入门Demo

JavaFX快速入门Demo,快速搭建自己的UI界面,快速熟悉JAVAFX开发。

2017-12-28

架构师特刊:深入浅出Netty.pdf

最近几年,Netty社区的发展如火如荼,无论是大数据领域,还是微服务架构,底层都需要一个高效的分布式通信框架作为基础组件。 Netty凭借优异的性能、灵活的可扩展新得到了广泛的应用。短短几年间,Netty已经成为众多Java高性能异步通信框架的首选

2017-12-24

Netty5.0架构剖析和源码解读.pdf

NIO通信框架Netty相关博文,李林峰老师的,有架构剖析和源码解读。

2017-12-24

mysql5.5 绿色精简版

精简版的MYSQL,安装好后82M,哈哈,装完整版需要花费好多的存储空间

2017-12-09

收银系统JSP

jsp实现的收银系统,我做的部分是商品资料和货流两个模块

2017-04-18

jquery实现的柱状图页面

静态柱状图网页

2017-04-02

Java版剑指Offer全部测试用例

花了我太多心血了,全是JAVA版本的,每一个都有测试用例,你们好好享受吧

2016-07-20

JSP+Servlet+Tomcat应用开发从零开始学修正版

JSP+Servlet+Tomcat应用开发从零开始学 这本书给的源码项目很多功能不能实现,我基本上都实现了,唯一还没实现的是立即购买的问题,其实只需要在前端把那个控件不显示就行,数据库脚本也有,做完后我不敢独享,希望能帮助那些买了这本书却不能运行出该项目的人,哈哈,我也是个菜鸟,希望一起进步。。。

2016-06-02

minGW离线安装版

minGW离线安装版

2016-05-18

Eclipse空格上屏问题

解决Eclipse空格上屏问题

2016-05-18

带括号的四则运算表达式js实现

输入一个字符串形式的四则运算表达式,如"1.0+2.1*(3+4)" 直接谈出结果,输入在文件底部,自己写的。思路是先把中缀表达式转成后缀表达式,然后根据后缀表达式建立一个栈求出结果

2016-04-29

音频格式器

万能的音频格式转换器,包含DVD转换成其他格式,太牛逼了,好软件值得收藏

2015-11-10

月出月落时间js

月出月落时间计算,js版的,在浏览器直接运行

2015-10-29

jsp ajax 文件上传(包含图片)

网上找了好多jsp ajax上传好多都用不了,我自己摸索了一番,终于搞出来了,意义就在于ajax的异步刷新,如果用表单上传必须要跳转页面,废话不多说了,里面有图有真相。在这里我说明一下,我举得例子是即时上传头像功能,记住,只能显示服务器上的图片,所以你的图像路径为服务器的路径,例如我的是img/wenjianming.jpg,看到了吧,img就是webcontent的一个文件夹,我把文件上传到这个文件夹所映射的另一个img,有javaweb基础的人都明白代码运行时所有文件都会映射到服务器,说简单一点吧,所映射的img在我的电脑路径为F:\liuyan00\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\upload\img,图片内也有,好好学习吧

2015-10-29

ajax jsp 文件上传

ajax jsp servlet 文件上传

2015-10-29

js jsp 文件上传

js 实现文件上传,该项目是javaweb项目,下载下来直接导入eclipse,在D盘创建一个upload文件夹,就可以接收到上传的文件了

2015-10-16

jquery 复选框 全选,全不选

jquery 复选框 全选,全不选,在同一个按钮实现,格式是html

2015-09-07

带下拉菜单的选项卡html

带下拉菜单的选项卡html,打开该页面就可以知道

2015-09-01

计算月出月落时间

根据经纬度时间算出月出月落时间,三个版本,C,JAVA,HTML,敬请笑纳。

2015-09-01

websocket 多人聊天室 网页版

javaweb 实现的多人聊天系统,代码中相应的url改成你自己的就可以了,直接导入myeclipse就可以运行

2015-07-18

JSP+Servlet+Tomcat应用开发从零开始学

JSP+Servlet+Tomcat应用开发从零开始学 这本书给的源码项目很多功能不能实现,我基本上都实现了,唯一还没实现的是立即购买的问题,其实只需要在前端把那个控件不显示就行,数据库脚本也有,做完后我不敢独享,希望能帮助那些买了这本书却不能运行出该项目的人,哈哈,我也是个菜鸟,希望一起进步。。。

2015-07-11

django 1.8通讯录 增删改查登陆注册

亲自做的,可以用,数据库可以根据自己的需要改,只需要同步一下就可以了

2015-04-25

安卓模拟器上实现的通信录源码带项目

可以在安卓模拟器上运行出来的资源,带完整的项目,在Eclipse直接导入即可运行

2014-10-16

空空如也

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

TA关注的人

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