自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Snowball

学习阶段的积累

  • 博客(204)
  • 资源 (27)
  • 收藏
  • 关注

原创 推荐文章3

另外两篇: 推荐文章1、 推荐文章2 (说明:推荐文章,系博主看过的博客,论文等,写在这里主用于记录文章入口)Java异常那些不得不说的事、Java异常处理总结 Java实现shadow clone(浅克隆)与深克隆(deep clone)、String 在clone()中的特殊性 Nginx反向代理关于端口的问题、nginx中proxy_set_header Host $host...

2020-01-13 15:05:21 1944

原创 开发总结

改变适配器Adapter内容时不要在后台线程中,必须在UI线程中处理,这点可以通过Handler传出来解决。尝试Adapter的notifyDataSetChanged()方法,当然主要看你代码的具体情况。ActivityGroup对子A的管理是通过Map的方式来管理的,在启动子Activity时,对每个子Activity都分配了一个ID号。这种映射的机制使得我们可以通过ID来获取到子A的实例。当

2012-07-26 21:05:21 1187

原创 设计模式总结

一、设计模式的定义设计模式(Design Pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结,使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。二、设计模式的基本要素 设计模式一般有如下几个基本要素:模式名称、问题、目的、解决方案、效果、实例代码和相关设计模式,其中的关键元素包括以下四个方面:模式名称 (Patte

2012-07-08 20:12:03 1764

原创 友链

简明现代魔法 搞仕途的 瘦子 传说 恩伟 大牛

2019-11-09 14:30:33 590

原创 Logback源码解析

本文分析源码,Logback版本为1.2.3,SLF4J的版本为1.7.251. Logback与SLF4J的关联1.1 关联类使用SLF4J作为Log Facade,使用Logback作为具体Log Implementation,配置好logback.xml之后,执行以下代码,就可以使用Logback打印日志。import org.junit.Test;import o...

2018-08-09 19:44:22 2193

原创 SLF4J与Logback、Log4j1、Log4j2、JCL、J.U.L是如何关联使用的

日志是Java程序员日常开发当中必须要接触的一个环节。Java的日志五花八门,有各种各样的实现,现在梳理一下Java日志相关的框架,及其使用使用细节。我们在日常使用过程中,主要会接触到SLF4J、Logback、Log4j1、Log4j2、JCL和J.U.L等日志框架。对于日志框架的最佳实践,推荐使用使用Log Facade,而不是具体Log Implementation,即在代码中直接使用 ...

2018-08-08 10:28:07 7743 2

翻译 理解Java的类加载过程

理解Java的类加载过程你在考虑写类加载器吗?或者你正在面对不在预期之内的ClassCastException或者带有”loader constraint violation”的LinkageError。那么,是时候仔细观察一下了Java类加载过程。什么是ClassLoader以及它是如何进行加载工作的一个Java类是通过一个java.lang.ClassLoader实例进行加载的...

2018-06-10 17:49:08 429

原创 Java串行程序并行化执行

在程序开发过程当中,往往存在这样一种情况,程序首先执行完method1得到结果result1之后,在执行method2获得结果result2,然后再按照result1和result2的结果来判定程序下一步的执行。在这里method1和method2是相互不关联的,即method1的执行和method2的执行位置可以调整,而不影响程序的执行结果。传统意义上的写法,我们得到的往往会是串行执行的程序

2016-01-09 22:01:57 9890 1

原创 生产者消费者模式

Java线程之间的通信分为共享内存,消息机制,管道(PipedInputStream / PipedOutputStream)大概三种模式。生产者消费者模式是多线程问题当中一个非常经典的问题,从我们大学的《操作系统》的课本当中的位置和课时,我们便可以知道这个思想的重要性,而且在实际生产当中生产者消费者模式为我们解决了大量的并发问题。一个简单的例子,并发编程大师Doug Lea的阻塞队列便是生产者消费者模式的典型实现,这里主要使用记录一下生产者消费者模式的集中写法,并探讨一下,这集中写法所产生的不同。

2015-12-28 13:41:07 1644

原创 Tomcat源码阅读系列(五)Catalina容器

本文是Tomcat源代码阅读系列的第五篇文章,前面四篇文章主要介绍了如何使用IDEA运行Tomcat、Tomcat的总体架构、Tomcat启动关闭流程和Tomcat的Connector连接器相关,本文主要介绍Tomcat的Catalina容器。跟之前的文章类似,本文首先介绍Catalina容器中的关键类,然后会绘制出Catalina容器的时序图。时序图分为两部分,第一部分为Catalina容器的初始

2015-09-23 14:03:12 2571

原创 Tomcat源码阅读系列(八)设计模式

本文主要介绍Tomcat中用到的主要设计模式

2015-09-05 04:53:04 2418

原创 Tomcat源码阅读系列(七)Session管理机制

本文是Tomcat源码阅读系列的第七篇文章,本文首先介绍Session管理的主要架构和相关类及其功能,然后介绍Session的创建以及销毁过程。

2015-09-05 02:49:51 3396

原创 Tomcat源码阅读系列(六)类加载器

本文是Tomcat源代码阅读系列的第六篇文章,前面五篇文章主要介绍了如何使用IDEA运行Tomcat、Tomcat的总体架构、Tomcat启动关闭流程、Tomcat的Connector连接器相关和Tomcat的Catalina容器,本文主要介绍Tomcat的类加载器。关于Java的类加载器的介绍,大家可以Google一下,网上关于其介绍比较多且比较详细,本文就不再重复介绍,本文主要介绍Tomcat的

2015-09-04 22:41:07 2109

原创 Tomcat源码阅读系列(四)Connector连接器

Tomcat源码阅读系列(四)Connector连接器

2015-05-29 09:19:56 2904

原创 Tomcat源码阅读系列(三)启动和关闭过程

Tomcat源码阅读系列(三)启动和关闭流程

2015-04-30 20:00:29 3236

原创 Tomcat源码阅读系列(二)Tomcat总体架构

Tomcat源码阅读系列(二)Tomcat总体架构

2015-03-31 19:51:54 3384

原创 Tomcat源码阅读系列(一)使用IntelliJ IDEA运行Tomcat6源码

Tomcat源码阅读系列(一)使用IntelliJ IDEA运行Tomcat6源码

2015-02-28 10:17:49 9736 5

原创 Java中的逃逸分析和TLAB以及Java对象分配

我们在学习使用Java的过程中,一般认为new出来的对象都是被分配在堆上,但是这个结论不是那么的绝对,通过对Java对象分配的过程分析,可以知道有两个地方会导致Java中new出来的对象并一定分别在所认为的堆上。这两个点分别是Java中的逃逸分析和TLAB(Thread Local Allocation Buffer)。本文首先对这两者进行介绍,而后对Java对象分配过程进行介绍。

2015-01-27 21:24:12 23209 6

原创 JS打印页面绑定事件和点击事件

JavaScript打印页面绑定事件和点击事件 JS打印页面绑定事件和点击事件

2014-12-30 20:32:15 4637

原创 Java多线程中的synchronized、volatile和无锁编程

synchronized volatile 无锁编程 并发安全性的几个相关因素:可见性、顺序性、原子性。关于这三者的详细描述,见原子性与可见性。其中原子性可以引申为互斥性,而顺序性的产生是原子性的结果即有了原子性才有了顺序性,因此以上三个因素可以推导为可见性和互斥性。

2014-10-25 19:29:59 7004 6

原创 ThreadPoolExecutor的分析与使用

关于ThreadPoolExecutor的分析已经有很多,比较著名的诸如支付宝 清英 的聊聊并发(三)Java线程池的分析和使用,饭饭泛的《深入浅出 Java Concurrency》等,对于ThreadPoolExecutor的分析和介绍已经非常的清楚,但是博主笨拙,对于ThreadPoolExecutor源码研读了一段时间之后才理解其中的奥妙所在,本博客主要从以下两个方面ThreadPoolExecutor进行介绍,①、ThreadPoolExecutor当中corePoolSize中线程的保持,即Th

2014-09-28 21:29:38 5273 3

原创 CopyOnWriteArrayList与Collections.synchronizedList的性能对比

列表实现有ArrayList、Vector、CopyOnWriteArrayList、Collections.synchronizedList(list)四种方式,其中

2014-09-21 21:46:46 11546 1

原创 NanoHTTPD源码阅读

package fi.iki.elonen;import java.io.*;import java.net.InetAddress;import java.net.InetSocketAddress;import java.net.ServerSocket;import java.net.Socket;import java.net.SocketException;import

2014-08-25 20:47:01 3148

原创 Java/JavaScript两种方式判断浏览器是否是移动端浏览器

1、Java方式判断浏览器是否为移动端浏览器UAgentInfo代码

2014-05-07 21:37:18 4726

原创 《Struts2技术内幕》学习笔记

是通过IOC容器管理得到实例的,根据bean节点中class类型的不同采用不同的InternalFactory的匿名实现,当class中含有@Inject注解时,InternalFactory的create方法调用了Container.inject()方法以实现注入。ObjectFactory.buildBean()的执行过程分两步,第一步调用Class.netInstance()建立要创建对象的实例,第二部调用Container.inject()实现依赖注入。两者的不同主要体现在实例的创建上,前者是通过在

2014-04-24 16:50:34 1679

原创 Android应用程序当中GridView显示不同大小图片时Item挤出问题解决办法

Android应用程序当中GridView显示不同大小图片时Item挤出问题解决办法

2014-04-03 20:32:43 2232

原创 在Android应用中添加修改主题功能

在Android应用中添加修改主题功能

2014-03-31 21:32:47 2625 3

原创 OSGi简介

使用Equinox开发B/S架构的OSGi应用

2014-02-28 21:28:35 2918 1

原创 MATLAB遗传算法之 无放回式随机余数选择算子(remainder stochastic sampling with replacement)最新版

MATLAB遗传算法之 无放回式随机余数选择算子(remainder stochastic sampling with replacement)

2013-12-27 14:28:05 3731 2

原创 推荐文章2

另外一篇:推荐文章1(说明:推荐文章,系博主看过的博客,论文等,写在这里主用于记录文章入口)深入浅出 Java Concurrency博主整理的关于Java并发编程的笔记。并发编程网 淘宝内容人员建立的关于Java并发编程相关的博客。推荐以上两个。java并发编程JCU系列,以上三个博客全是阿里系的员工写的,阿里的Java技术可见一斑。聊聊并发(四)——深入分析ConcurrentHa

2013-12-09 11:31:19 2815

原创 将Openfire中的MUC改造成类似QQ群一样的永久群

将Openfire中的MUC改造成类似QQ群一样的永久群1、新建立永久房间,同时保证房间中的成员存储到“ofmucmember”表当中。2、新建一个用户登陆监听的插件,这个插件监听用户的登陆行为,同时在用户登陆时查询“ofmucmember”表,查询用户所在的房间。3、将房间信息封装到自定义的IQ包中,发送到客户端。4、不管使用Android客户端,还是对Spark进行二次开发,对Openfire发送过来的自定义IQ包进行解析。5、显示群信息。

2013-11-27 19:33:22 23406 66

原创 Android插件式开发备忘

一、使用android-application-plug-ins-frame-work URL:https://code.google.com/p/android-application-plug-ins-frame-work/ 通过sharedUserId实现,会产生一系列的apk安装包,同时下载安装时有可能展现给用户安装新apk的过程,用户体验不好(有一种静默安装模式,不好实现)。二、

2013-11-27 09:12:39 1141

原创 自动装箱拆箱在Java集合类框架引起的性能问题

自动装箱拆箱在Java集合类框架引起的性能问题

2013-10-18 17:15:24 1648

原创 Spark源代码编译生成错误解决方案

最近项目需要对Spark进行二次开发,在对Spark二次开发完成之后,需要对其进行打包成exe文件的操作。互联网真是一个宝贵的知识库,千辛万苦之下找到了Spark开发记录(windows环境)和install4j打包Spark详解,前者介绍了两种版本spark的打包方式,而后者的打包方式适用于较早的2.5.x版本的Spark,对于2.6.x版本的Spark可以按照第一篇文章介绍的内容进行打包操作。但是按照操作进行下去之后发现项目无法ant打包成功。错误代码如下:

2013-09-14 22:35:35 2528 4

原创 模仿Instant Heart Rate效果的心跳检测器

模仿Instant Heart Rate效果的心跳检测器

2013-09-04 19:49:38 2311 1

原创 排序算法总结

常见排序算法总结

2013-08-26 15:15:44 1660

原创 查找的相关操作总结

操作包含递归折半查找非递归折半查找二叉排序树的建立、查找、删除、插入哈希表的建立和输出判断一个二叉树是不是平衡二叉树#include#include#include#define MAX_SIZE 100int nums1[] = {5,7,3,2,9,4,8,1,10,6};int nums2[] = {1,2,3,4,5,6,7,8,9,10};

2013-08-23 19:49:13 950

原创 平衡二叉排序树

AVL树介绍BST是一种查找效率比较高的组织形式,但其平均查找长度受树的形态影响较大,形态比较均匀时查找效率很好,形态明显偏向某一方向时其效率就大大降低。因此,希望有更好的二叉排序树,其形态总是均衡的,查找时能得到最好的效率,这就是平衡二叉排序树。    平衡二叉排序树(Balanced Binary Tree或Height-Balanced Tree)是在1962年由Adelson-Ve

2013-08-23 17:17:09 1708

原创 图的相关操作总结

图的相关操作总结递归深度优先遍历非递归深度优先遍历广度优先遍历判断无向图是否有环输出vi到vj的长度为l的路径找出经过vi的回路普利姆算法拓扑排序部分操作参考:http://blog.csdn.net/Kay_Sprint/article/category/851272/1#include#include#include#define MAX_SIZ

2013-08-20 17:19:47 998

原创 关于二叉树的相关操作汇总

递归前序遍历 非递归前序遍 历递归中序遍历 非递归中序遍历 递归后序遍历 非递归后序遍历 递归层次遍历 非递归层次遍历 递归计算二叉树的高度 非递归计算二叉树高度 递归查找某点在二叉树的那一层 非递归查找某点在二叉树的那一层 判断两棵二叉树是否相似 判断二叉树是不是完全二叉树 输出某一结点的到跟结点的路径 得到两个结点的最近的共同祖先 拆分二叉树 统计二叉树的结点个数

2013-08-16 20:36:04 1326

Java串行程序并行化执行

使用CGLIB实现串行程序的异步并行执行,博客地址:http://blog.csdn.net/yangzl2008/article/details/50489583

2016-01-11

并行程序串行化执行

使用CGLIB实现并行执行,博客地址:http://blog.csdn.net/yangzl2008/article/details/50489583

2016-01-09

UML2.2-Visio2010.zip

UML2.2-Visio2010.zip 源地址:http://softwarestencils.com/uml/UML2.2-Visio2010.zip 下载

2015-09-06

Tomcat源码阅读(一)使用Idea运行Tomcat6源码

Tomcat源码阅读(一)使用Idea运行Tomcat6源码

2015-06-15

在Android应用中添加修改主题功能

在Android应用中添加修改主题功能 原文地址:http://blog.csdn.net/yangzl2008/article/details/22694327

2014-04-06

将Openfire中的MUC改造成类似QQ群一样的永久群

将Openfire中的MUC改造成类似QQ群一样的永久群中Openfire端插件 http://blog.csdn.net/yangzl2008/article/details/16991175

2013-11-27

模仿Instant Heart Rate效果的心跳检测器

模仿Instant Heart Rate效果的心跳检测器 地址:http://blog.csdn.net/yangzl2008/article/details/11081067

2013-09-04

Android后台开启服务默默拍照

Android后台开启服务默默拍照http://blog.csdn.net/yangzl2008/article/details/9262505

2013-07-07

Android中可增删联系人列表的简单实现

Android中可增删联系人列表的简单实现 http://blog.csdn.net/yangzl2008/article/details/8743199

2013-03-31

Android中HorizontalListView的实现

Android中HorizontalListView的实现,实例文件 博客地址:http://blog.csdn.net/yangzl2008/article/details/8050700

2012-10-20

深入java虚拟机笔记

深入java虚拟机笔记http://blog.csdn.net/yangzl2008/article/details/8074667

2012-10-15

Android中DateTimePicker的实现

Android中DateTimePicker的实现http://blog.csdn.net/yangzl2008/article/details/8008568

2012-09-22

class文件分析

http://blog.csdn.net/yangzl2008/article/details/8008423文章的pdf版本

2012-09-22

ListView中含有Button时setOnclickListener应写在Adapter的什么地方

博客ListView中含有Button时setOnclickListener应写在Adapter的什么地方的代码http://blog.csdn.net/yangzl2008/article/details/7863938

2012-08-17

Android代码混淆前后分析

Android代码混淆前后分析

2012-08-13

tabhost模仿网易新闻奥运版效果

tabhost模仿网易新闻奥运版效果 tabhost模仿网易新闻奥运版效果

2012-08-13

ExpandableListView中不同条目的位置不同的显示位置

ExpandableListView中不同条目的位置不同的显示位置

2012-08-13

AutoCompleteTextView从服务器上获得数据显示下拉列表

AutoCompleteTextView按照关键字从服务器上获得数据显示下拉列表

2012-08-12

ListView中Spinner的使用

ListView中Spinner的使用,主要解决了对于Spinner状态的保持和对Spinner做了相应事件之后,对于ListView的OnItemClick事件的相应的处理等问题。

2012-07-25

Android 菜单(OptionMenu)大全

Android 菜单(OptionMenu)大全 Pro Android 源码

2012-04-21

Android 菜单(OptionMenu)大全 建立你自己的菜单

Android 菜单(OptionMenu)大全 建立你自己的菜单

2012-04-21

phpMyAdmin使用教程

phpMyAdmin使用教程 phpMyAdmin使用教程 phpMyAdmin使用教程

2011-07-23

基于 UML的网上购物管理系统设计 计算机软件综合设计

基于 UML的网上购物管理系统设计 计算机软件综合设计 UML 网上购物 rational rose Java 毕业设计

2010-06-10

基于 UML的网上购物管理系统设计 计算机软件综合设计

基于 UML的网上购物管理系统设计 计算机软件综合设计 UML 网上购物 rational rose Java 毕业设计

2010-06-10

PowerBuilder*图书馆管理系统*需求分析*概念结构设计*逻辑结构设计*物理结构设计

自己用PowerBuilder做的图书管理系统,数据库课程设计,很好……O(∩_∩)O~

2010-05-06

turbo c 2.0

Turbo C   Turbo C 发展概况:   Turbo C是美国Borland 公司的产品,Borland公司是一家专门从事软件开发、研制的大公司。该公司相继推出了一套 Turbo系列软件, 如Turbo BASIC, Turbo Pascal, Turbo Prolog, 这些软件很受用户欢迎。该公司在1987年首次推出Turbo C 1.0 产品, 其中使用了全然一新的集成开发环境, 即使用了一系列下拉式菜单,将文本编辑、程序编译、连接以及程序运行一体化, 大大方便了程序的开发。1988年, Borland 公司又推出Turbo C1.5版本, 增加了图形库和文本窗口函数库等, 而Turbo C 2.0 则是该公司1989年出版的。Turbo C2.0在原来集成开发环境的基础上增加了查错功能, 并可以在Tiny模式下直接生成.COM (数据、代码、堆栈处在同一64K 内存中) 文件。还可对数学协处理器 (支持8087/80287/80387等)进行仿真。   Borland 公司后来又推出了面向对象的程序软件包Turbo C++,它继承发展Turbo C 2.0 的集成开发环境, 并包含了面向对象的基本思想和设计方法。   1991年为了适用Microsoft 公司的Windows 3.0 版本, Borland 公司又将Turbo C++ 作了更新, 即Turbo C 的新一代产品Borlandc C++也已经问世了。   Turbo C2.0介绍   Turbo C2.0不仅是一个快捷、高效的编译程序,同时还有一个医学、易用的集成开发环境。使用Turbo C2.0无需独立地编辑、编译和连接程序,就能建立并运行C语言程序。因为这些功能都组合在Turbo 2.0的集成开发环境内,并且可以通过一个简单的主屏幕使用这些功能。   ※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※   C 语言   C语言发展概况:   C语言起始于1968年发表的CPL语言,它的许多重要思想都来自于Martin Richards在1969年研制的BCPL语言,以及以BCPL语言为基础的与Ken Thompson在1970年研制的B语言。Ken Thompson用B语言写了第一个UNIX操作系统。M.M.Ritchie1972年在B语言的基础上研制了C语言,并用C语言写成了第一个在PDP-11计算机上研制的UNIX操作系统。1922年出现了独立于极其的C语言编译文本《看移植C语言编译程序》,从而大大简化了把C语言编译程序移植到新环境中所做的工作,这本身也就使UNIX的日益广泛使用,C语言也迅速得到推广。   1983年美国国家标准化协会(ANSI)根据C语言问世以来的各种版本,对C语言的发展和扩充制定了新的标准,成为ANSI C。1987年ANSI又公布了新标准————87ANSI C。   目前在微型计算机上使用的有Microsoft C、Quick C、Turbo C等多种版本。这些不同的C语言版本,基本部分是相同的,但是在有关规定上有略有差异。   C 语言发展如此迅速, 而且成为最受欢迎的语言之一, 主要因为它具有强大的功能。许多著名的系统软件, 如DBASE Ⅲ PLUS、DBASE Ⅳ 都是由C 语言编写的。用C 语言加上一些汇编语言子程序, 就更能显示C 语言的优势了,象PC- DOS ,WORDSTAR等就是用这种方法编写的。归纳起来C 语言具有下列特点:   1. C是中级语言   它把高级语言的基本结构和语句与低级语言的实用性结合起来。C 语言可以象汇编语言一样对位、字节和地址进行操作, 而这三者是计算机最基本的工作单元。   2. C是结构式语言   结构式语言的显著特点是代码及数据的分隔化, 即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰, 便于使用、维护以及调试。C 语言是以函数形式提供给用户的, 这些函数可方便的调用, 并具有多种循环、条件语句控制程序流向, 从而使程序完全结构化。   3. C语言功能齐全   C 语言具有各种各样的数据类型, 并引入了指针概念, 可使程序效率更高。另外C 语言也具有强大的图形功能, 支持多种显示器和驱动器。而且计算功能、逻辑判断功能也比较强大, 可以实现决策目的。   4. C语言适用范围大   C 语言还有一个突出的优点就是适合于多种操作系统, 如DOS、UNIX,也适用于多种机型。   C语言的优点很多,但是也存在一些缺点,如运算优先级太多,运算能力方面不像其它高级语言那样强,语法定义不严格等。但是这些都不能阻止C语言成为一门广受欢迎的计算机编程语言!

2008-10-30

空空如也

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

TA关注的人

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