
java
xiaohao_g
这个作者很懒,什么都没留下…
展开
-
ehcahce的diskSpoolBufferSizeMB参数解析,不能过大
前段时间在项目中使用ehcache做缓存,由于数据量比较大我想调大diskSpoolBufferSizeMB来提高ehcache的存储速度,结果调大到2GB以上,ehcache的放入速度变得异常缓慢,在网上找了好久也没找到原因,今天终于找到原因所在。由于diskSpoolBufferSizeMB在内部实际是以字节为单位,2GB已经超过正整数表示的范围,导致diskSpoolBufferSizeMB转载 2015-05-22 18:35:13 · 2104 阅读 · 0 评论 -
java存储机制
存储位置介绍:1、堆:new出来的对象。2、栈:基本类型的变量数据、对象的引用。3、静态域:存放静态成员(static定义)。4、寄存器:最快的存储区,由编译器分配,程序无法控制。5、常量池:存放字符串常量和基本类型常量(static final)。 实例介绍:对于以上这段代码,date为局部变量,i,d,m,y都是形参为局部变量,day,month,ye...转载 2018-08-03 15:33:07 · 220 阅读 · 0 评论 -
ReenTrantLock和Synchronized
相同点:都是可重入锁,都是同一个线程没进入一次,锁的计数器自增1,等到锁的计数器为0时释放锁。不同点:1、Synchronized依赖jvm实现,实现方式比较难见到,ReetTrantLock依赖JDK实现,有源码可看。2、Synchronized使用简单便捷,加锁,解锁由编译器实现;ReenTrantLock需要手动声明、加锁、解锁,功能更细粒度和灵活。3、ReenTrant...转载 2018-09-20 12:15:17 · 150 阅读 · 0 评论 -
mat安装教程
1、安装,不依赖eclipse,独立安装mat,选择自己系统相应的版本下载 下载地址:https://eclipse.org/mat/downloads.php 解压压缩文件,执行下面执行文件。 ps:我系统配置的jdk版本是32为的jdk1.6 但是下载的是64位,这种情况可以在ini文件中指定jdk ...原创 2018-09-18 19:48:23 · 2541 阅读 · 0 评论 -
面向对象
三大特性封装、继承、多态1、封装,隐藏类的内部实现机制,在不影响使用的情况下改变类的内部结构,同时也保护了数据,对外界它的内部细节是隐藏的,暴露给外界的是它的访问方法。2、继承,是为了重用父类代码,同时也为实现多态做了铺垫。3、多态,父类指向子类对象,Parent o=new Child();一个父类,可以指向多个子类。 ps1:向上转型,Parent o=new Chil...转载 2018-09-19 14:17:40 · 123 阅读 · 0 评论 -
http请求相关知识
请求浏览器首先向服务器发送http请求,请求包括:方法:get/post,get仅请求资源,post会附带用户数据;路径:/html/path;域名:由host头指定:Host:www.sina.com.cn;其他header;如果是post,请求还会包括一个body,包含用户数据。 2、 服务器向浏览器返回HTTP响应,响应包括:响应代码:200表示成...转载 2018-10-12 17:38:36 · 162 阅读 · 0 评论 -
乐观锁与悲观锁相关知识
内容来自:https://www.toutiao.com/a6579186676071924227/?tt_from=weixin&utm_campaign=client_share&wxshare_count=1&timestamp=1539572340&app=news_article&utm_source=weixin&iid=45822909...转载 2018-10-15 15:44:48 · 199 阅读 · 0 评论 -
TCP UDP 学习
转载:https://blog.youkuaiyun.com/oyhy_/article/details/702018551、摘要tcp是面向连接的,可靠的字节流协议。因此,在传输数据之前通信双方必须建立一个tcp连接,建立tcp连接需要在服务器和客户端之间进行三次握手。通信双方数据传输完毕之后连接释放,释放连接需要在通信双方之间进行四次挥手。 2、tcp协议端口的连接状态1)、LISTE...转载 2018-10-18 17:43:44 · 174 阅读 · 0 评论 -
自旋锁
自旋锁自旋锁的原理非常简单,如果持有锁的线程能在很短时间内释放锁资源,那么那些等待竞争锁的线程就不需要做内核态和用户态之间的切换进入阻塞挂起状态,它们只需要等一等(自旋),等持有锁的线程释放锁后即可理解获取锁,这样就避免用户线程和内核的切换的消耗。但是线程自旋是需要消耗cpu的,说白了就是让cpu做无用功,如果一直获取不到锁,那线程也不能一直占用cpu自旋做无用功。所以需要设定一个自旋等待...转载 2018-10-15 20:17:23 · 698 阅读 · 1 评论 -
tomcat9+jdk11+linux
1、环境变量需将JRE_HOME指向JAVA_HOME2、tomcat依赖于jdk/lib目录中的Logging.properties文件,jdk11没有,将jdk8的此文件放入jdk11/lib下后问题解决.3、Tomcat9依赖webService包 这个模块已经在jdk11中下掉了,所以找不到 解决办法:jaxws-api-2.3.1.jar放在to...原创 2018-10-30 18:05:39 · 2286 阅读 · 0 评论 -
jvm加载class文件机制j
1、加载类文件 a、读取class文件,从jar包、war包、class文件、jsp文件等处都可以。 a.1、采用双亲委派机制加载类,由classLoader和其子类完成,支持自定义ClassLoader。 如下图,由下至上,当一个类加载器收到类加载任务,会先交给其父类加载器去完成, 因...转载 2018-08-03 10:52:21 · 338 阅读 · 0 评论 -
UUID---号称全球唯一的ID
Java: UUID.randomUUID().toString()原创 2015-08-07 14:59:55 · 1014 阅读 · 0 评论 -
oscache 页面级缓存实例
oscache 作为缓存,页面缓存是一个特色 ,主要用于对web应用中的某些动态页面进行缓存,尤其是那些需要生成PDF格式文件/报表、图片文件等的页面,不仅减少了数据库的交互、减少数据库服务器的压力,而且对于减少web服务器的性能消耗有很显著的效果。转载 2015-05-27 16:24:09 · 439 阅读 · 0 评论 -
Java中 ehcache简单使用实例
ehcache 简单实用介绍 Java中常用的本地缓存,入门级文章。将数据缓存至本地的简单方法。简单实用的java 本地缓存框架。使用步骤:1、添加jar包 2、在src下添加配置文件 ehcache.xml ehcache 可以将缓存的数据存储在内存中,也可以存储在磁盘中,也可以两者都存,<ehcache xmlns:xsi="http://www.w3.org/200原创 2015-05-14 18:04:40 · 3958 阅读 · 0 评论 -
xml中有特殊字符,导致解析时出错
xml解析异常解决转载 2015-01-29 17:29:43 · 8322 阅读 · 0 评论 -
struts1简单入门使用实例
本文是在学习struts1的过程中所写,整理的比较简单,可以快速的入门使用struts1。原创 2015-06-03 11:42:47 · 469 阅读 · 0 评论 -
struts2 .do .action等后缀访问问题
默认情况下,struts2是无法处理以.do为后缀的请求url的(默认情况下是.action或者不填,可以参见org.apache.struts2包下的default.properties文件)。 但是struts2是一个高配置的框架,所以我们可以通过配置来处理以.do为后缀的请求。 struts2提供了一系列的常量来供我们来配置。 如:我们可以在struts.xml文件中配置转载 2015-06-05 13:57:51 · 1690 阅读 · 1 评论 -
struts2使用session 的三种方式
总结了三种方式,三种都测试过,前两种有时获取到的session为空,可能是版本低的问题,第三种测试无问题原创 2015-06-08 15:24:46 · 1024 阅读 · 0 评论 -
spring整合struts2
简单的spring、struts2实例原创 2015-06-08 17:03:40 · 374 阅读 · 0 评论 -
spring3零配置注解实现Bean定义(包括JSR-250、JSR-330)
注解实现Bean定义 概述前边介绍的Bean定义全是基于XML方式定义配置元数据,且在【12.2注解实现Bean依赖注入】一节中介绍了通过注解来减少配置数量,但并没有完全消除在XML配置文件中的Bean定义,因此有没有方式完全消除XML配置Bean定义呢? Spring提供通过扫描类路径中的特殊注解类来自动注册Bean定义。同注解驱动事务一样需要开启自动扫描并注册B转载 2015-06-15 17:54:32 · 672 阅读 · 0 评论 -
spring 使用注解注入bean
最近学习注解,就学了两种spring使用注解注入的方式,按照网上提供的方法学习并整理的。原创 2015-06-15 15:43:37 · 1050 阅读 · 0 评论 -
HashMap学习
1、key和value都可以为空2、默认容量是16,但是如果用户通过构造函数置顶了一个数字作为容量,那么hash就会选择大于该数字的第一个2的幂作为容量。(比如 3->4,5->8,9->16),建议设置hashmap的初始容量。在元素数量固定时设置初始容量设置值:要存储元素的个数/0.75+1 ,在存储过程中不会有扩容操作,但是会浪牺牲一定的内存。3、在jdk1...原创 2019-04-29 11:34:56 · 181 阅读 · 0 评论