自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 资源 (7)
  • 收藏
  • 关注

原创 java GC分析与调优

1. JVM的GC参数:-Xms : 初始堆大小6G-XX : CMSInitiatingOccupancyFraction=65 :年老代空间使用率到65%就执行CMS GC。从70调整为65,让old区尽早的进行回收,可以保证年老代能及时回收垃圾,保证空间充足可以接纳新声代对象。2.堆内存heap年轻代(Young Generation)、老年代(Old Generatio...

2019-02-22 17:08:42 1092

原创 java多线程(3)---Executors线程池源码分析

一.前言     Executor框架的最大优点是把任务的提交和执行解耦。要执行任务的人只需把Task描述清楚,然后提交即可。这个Task是怎么被执行的,被谁执行的,什么时候执行的,提交的人就不用关心了。具体点讲,提交一个Callable对象给ExecutorService(如最常用的线程池ThreadPoolExecutor),将得到一个Future对象,调用Future对象的get方法等待

2017-07-06 11:13:01 335

原创 SpringMVC学习笔记(含案例分析)

简单的解释:               SpringMVC是一个基于DispatcherServlet的MVC框架,每一个请求最先访问的都是DispatcherServlet,DispatcherServlet负责转发每一个Request请求给相应的Handler,Handler处理以后再返回相应的视图(View)和模型(Model),返回的视图和模型都可以不指定,即可以只返回Model或只

2017-06-11 20:08:53 374

原创 深入理解Java注解(含案例分析)

注解annotation的理解:    用一个词就可以描述注解,那就是元数据,即一种描述数据的数据。所以,可以说注解就是源代码的元数据。    什么是元数据:描述数据的数据,更通俗点就是描述代码间关系,或者代码与其他资源之间内在联系的数据。对于struts来说就是struts-config.xml.    Annotation是附加在代码中的一些元信息,用于

2017-06-09 17:55:09 370

原创 commons-pool对象池(2)---实现一个线程池

前面对commons-pool进行了学习,下面着重学习一下利用它实现线程池。线程池的作用:       合理利用线程池能够带来三个好处。       第一:降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。       第二:提高响应速度。当任务到达时,任务可以不需要的等到线程创建就能立即执行。       第三:提高线程的可管理性。线程是稀缺资源,如

2017-06-08 19:58:18 2299 1

原创 java多线程(2)---基于ExecutorService的socket通信线程池

了解线程池               socket通信,如果服务器端采用的实现方式是:一个客户端对应一个线程。那么,每个新线程都会消耗系统资源:创建一个线程会占用CPU周期,而且每个线程都会建立自己的数据结构(如,栈),也要消耗系统内存,另外,当一个线程阻塞时,JVM将保存其状态,选择另外一个线程运行,并在上下文转换(context switch)时恢复阻塞线程的状态。随着线程数的增加,

2017-06-08 11:32:58 4644

原创 apache-Mina学习笔记

Apache Mina      是一个支持基于socket NIO库的TCP/UDP应用程序的开发。 mina是apache基于socket nio的一套框架Mina TCP的几个重要接口:IoSession :是对底层连接的封装,对应于当前客户端到服务器端的一个TCP连接实例。连接池中保存着多个IoSession            这个接口有如下常用的方法:

2017-06-07 19:43:48 786

原创 java多线程(1)---Executors线程池

Java多线程实现方式主要有三种:(1)继承Thread类、(2)实现Runnable接口、(3)使用ExecutorService(Executors的线程池都实现该接口)、Callable、Future实现有返回结果的多线程。多结合Executors 的线程池一起使用。其中前两种方式线程执行完后都没有返回值,只有最后一种是带返回值的。前两种较为熟悉,这里重点学习

2017-06-07 12:33:25 357

原创 Spring IoC(2) --- 注解方式

spring实现注入一般包括两种方式:xml 和注解。这里总结下注解的方式。1.两种获取Bean的区别:     xml----通过配置获取Bean     注解----通过java反射,根据bean类型等获取Bean2.常见注解:注解注入顾名思义就是通过注解来实现注入,Spring和注入相关的常见注解有Autowired、Resource、Qualifie

2017-06-06 20:15:27 382

原创 Spring IoC(1) ---XML方式

spring实现注入一般包括两种方式:xml 和注解。这里总结下xml的方式。spring的一大特点是利用配置的xml文件实现依赖注入。所谓依赖注入是指把一个业务对象通过xml配置注入另一个业务对象(这里是将FloppyWriter或者UsbDiskWriter注入到BusinessBean,ref属性指定依赖关系),从而达到对象间的松耦合。下面我们来举个例

2017-06-06 17:50:39 285

原创 Java异常总结

1.异常分类 (1)运行时异常(unchecked exception):继承自java.lang. RuntimeException类常见5种:ClassCastException(类型转换异常)IndexOutOfBoundsException(数组越界)NullPointerException(空指针)ArrayStoreException(数据存储异常,操作...

2017-06-06 11:49:12 9615 3

原创 commons-pool对象池(1)---总结

在Java中,有很多池管理的概念,典型的如线程池,数据库连接池,查看源码会发现这些池管理类都是继承于GenericObjectPool       了解GenericObjectPool,应该从其构造方法入手       GenericObjectPool(PooledObjectFactoryfactory, GenericObjectPoolConfig config)

2017-06-05 14:56:56 385

原创 Java NIO和阻塞IO

阻塞IO:        在阻塞模式下,服务器调用ServerSocket.accept()方法同步监听一个ServerSocket,该方法会一直阻塞到有客户端连接才会返回,当有客户端连接了,服务器会启动与一个专门的线程调用InputStream.read()方法来读取客户端请求,InputStream.read()方法也是阻塞的,如果线程从客户端中读取不到指定大小的数据量,阻塞IO就在那里阻

2017-06-05 14:29:30 336

[Introduction.to.Automata.Theor]

[Introduction.to.Automata.Theory,.Languages,.and.Computation].(John.E.Hopcroft,.Jeffrey.D.Ullman)

2012-08-21

modelsim仿真教程

modelsim仿真教程

2012-06-24

android-sdk

android-sdk

2012-06-15

汇编第五章

汇编第五章

2012-03-29

IO地址分配表

IO地址分配表

2012-03-29

Visual_C++__数据库编程.doc

Visual_C++__数据库编程.doc

2012-03-22

空空如也

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

TA关注的人

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