自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 收藏
  • 关注

原创 ComcurrentHashMap原理分析

集合是编程中最常用的数据结构,而谈到并发,几乎总是离不开集合这类高级数据结构的支持。比如俩个线程需要访问同一个中间临界区(Queue),比如常会缓存作为外部文件的副本(HashMap)。这篇文章主要分析jdk1.5的3中并发集合(concurrent,copyonright,queue)的中ConcurrentHashMap,让我们从原理上细致的了解他们,能够让我们在深度项目开发中受益匪浅。通

2016-08-11 09:30:51 1591

原创 线程问题

1现在有T1、T2、T3三个线程,你怎样保证T2在T1执行完后执行,T3在T2执行完后执行?这个线程问题通常会在第一轮或电话面试阶段被问到,目的是检查你对“join”方法是否熟悉,这个线程问题比较简单,可以用join方法实现。2在Java中Lock接口比synchronized块的优势是什么?你需要实现一个高效的缓存,它允许多个用户读,但只允许一个用户写,以此来保持它的完整性,你会怎样实现

2016-08-10 09:00:27 371

原创 线程优先级|线程安全

线程优先级现在主流操作系统(如Windows、Linux、Mac OS X)的任务调度处理具有前面提到的时间片轮转的特点外,还有优先级调度(Priority Schedule)的特点,优先级调度决定了线程按照什么顺序轮流执行,在具有优先级调度的系统中,线程拥有各自的线程优先级(Thread Priority)。具有高优先级的线程会更早地执行,而低优先级的线程通常要等没有更高优先级的可执行线程时

2016-08-05 16:41:51 719

原创 以操作系统的角度解释线程|进程

1、什么是线程什么是线程?线程与进程有什么关系?这是一个非常抽象的问题,也是一个特别广的话题,涉及到非常多的知识。2、任务调度线程是设么?要理解这个概念,必须先了解一下操作系统的一些相关概念。大部分操作系统(如Windows、Linux)的任务调度是采用时间片轮转的抢占调度方式,也就是说一个任务执行一小段时间后强制暂停去执行下一个任务,每个任务轮流执行。任务执行的一小段时间叫做

2016-08-05 14:57:13 1946

原创 spring常见问题

1、Spring框架中的单例Beans是线程安全的么?Spring框架并没有对单例bean进行任何多线程的封装处理,关于单例bean的线程安全和并发问题需要开发者自行去搞定。但实际上,大部分的Spring bean并没有可变的状态(比如Serview类和DAO类),所以在某种程度上说Spring的单例bean是线程安全的,如果你的bean有多种状态的haunted(比如View Model对象

2016-08-04 12:56:34 447

转载 单例模式内存分析

简单说明下:当在main方法中调用test方法时,test方法会创建一个A类的实例a,同时把实例a的堆区地址放在实例a的成员变量_a中,也就是在模拟成员变量持有指向自身对象引用。当以上步骤执行完成后,test方法结束,由于a是局部变量,保存在方法栈中,会被立即释放,不再指向A类的实例,但是我们刚刚完成了“自引用”,根据上边的理论,有引用指向A类的实例,实例便不会释放,因此上边程序的输出结果

2016-08-02 11:32:35 2322 1

转载 Spring MVC 简介

1,Spring MVC是什么Spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行职责解耦,基于请求驱动指的就是使用请求-响应模式,框架的目的就是帮助我们简化开发,Spring Web MVC也是要简化我们日常Web开发的。另外还有一种基于组件的、事件驱动的Web框架在此就不介绍了

2016-08-01 16:46:02 437

原创 spring注解

1,@Autowired:自动装配,按照类型匹配,如果有多个同样的类型,使用@qualifier(value=“dao”)指定使用哪个2,@Required:在项目启动前就检查是否配置3,@Resource:默认按名字,推荐使用,不使用@Autowired4,@component,@Repository,@Service,@Controller没有区别

2016-04-25 21:03:35 343

原创 hibernate性能优化

1.注意session.clear()的运用,尤其在不断分页循环的时候a、在一个大集合中进行遍历,遍历msg,取出其中的含有敏感字样的对象b、另外一种形式的内存泄漏2.1+N问题a、Lazyb、BatchSizec、join fetch3.list 和 iterate不同之处a、list取所有b、iterate先取ID,等用到的时候再根据ID取对象c、ses

2016-04-19 22:22:52 346

原创 hibernate各种查询

1、Query query = session.createQuery("from Category");List categories = (List)query.list()2、Query query = session.createQuery("from Category c where c.name > 'c5' ");List categories = (List)query

2016-04-18 20:45:45 353

原创 hibernate映射关系

一对一关联一对一单向外键关联annotation:@OneToOne @JoinColumnxml:一对一双向关联annotation: @OneToOne(mappedBy)xml :规律:凡是双向关联,必设mappedBy多对一关联多对一单向关联annotation:@ManyToOnexml:一对多单向关联annotatio

2016-04-17 17:58:40 284

原创 hibernate的load和get区别

get与load的区别:1.不存在对应记录时表现不一样2.load返回的是代理对象,等到真正用到对象的内容时才发出SQL语句3.get直接从数据库加载,不会延迟

2016-04-11 22:10:59 424

原创 Hibernate对象的三种状态

状态图:三种状态的区分关键在于:1.有没有ID2.ID在数据库中有没有3.在内存中有没有(session缓存)transient:内存中一个对象,没ID,缓存中也没有persistent:内存中有,缓存中有,数据库有detached:内存有,缓存没有,数据库有

2016-04-11 21:48:28 309

原创 hibernate的HelloWord

1,xml配置版步骤一:导入相关jar包 org.hibernate hibernate-core 4.1.6.Final org.slf4j slf4j-api ${slf4j.version} org.slf4j slf4j-log4j12 ${slf4j.version} org.slf4j jul-

2016-04-09 08:34:04 450

原创 maven项目常用包

Web相关:Spring-web.jar:这个jar文件包含Web应用开发时,用到Spring框架时所需的核心类,包含自动载入Web ApplicationContext特性类、Struts与JSF集成类、文件上传的支持                  类、Filter类和大量工具辅助类,外部依赖(spring-context,Servlet API)Spring-webmvc.ja

2016-03-27 20:57:41 1065

原创 Maven私服

私服是一种特殊的远程仓库,它是架设在局域网内的仓库服务,私服代理广域网上的远程仓库,提供局域网内的Maven用户使用,当Maven需要下载构件的时候,它从私服请求,如果私服上不存在该构件,则从外部的远程仓库下载,缓存在私服上之后,在为Maven的下载请求提供服务,此外,一些无法从外部仓库下载到的构件也能从本地上传到私服上供大家使用。即使在一台直接连入Internet的个人机器上使用Ma

2016-03-26 12:19:42 606

原创 Maven依赖范围

compile:编译依赖范围,如果没有指定,就会默认使用该依赖范围。使用此依赖范围的Maven依赖,对于编译、测试、运行三种classpath都有效,典型的例子是spring-core,在编译、测试和运行的时候都需要使用该依赖。test: 测试依赖范围,使用此依赖范围的Maven依赖,只对于测试classpath有效,在编译主代码或者运行项目的使用时将无法使用此依赖,典型的例子是JUnit

2016-03-23 20:43:55 529

原创 spring jar包详解

org.springframework.aop ——Spring的面向切面编程,提供AOP(面向切面编程)的实现org.springframework.asm——spring 2.5.6的时候需要asm jar包,spring3.0开始提供它自己独立的asm jar包org.springframework.aspects——Spring提供的对AspectJ框架的整合

2016-03-21 15:50:00 346

原创 MySQL各个版本区别

4.1:增加了子查询的支持,字符集增加UTF-8,GROUP BY语句增加了ROLLUP,MySQL.user表采用了更好的加密算法。5.0:增加了Stored procedures、Views、Cursors、Triggers、XA transactions的支持,增加了INFORATION_SCHEMA系统数据库。5.1:增加了Event scheduler,Parti

2016-03-21 14:37:05 2880

原创 Java注释常用标签实例

1、@see:引用其他类@see标签允许你引用其他类的文档。javadoc会在其生成的HTML文件中,用@see标签链接到其他文档。2、@link package。class#member label该标签与@see及其相似,只是它可以用于行内,并且是用“label”作为超链接文本而不用“See Also”3、@docRoot该标签产生到文档根目录的相对路径,用于文档树页面的显

2016-03-19 11:19:27 1779

原创 Java对象存储地址

Java程序运行时,对象时怎么进行放置安排的?特别是内存是怎样分配的?有六个不同的地方可以存储数据:1.寄存器(register):这是最快的存储区,以为它位于不同于其他存储区的地方——处理器内部,但是寄存器的数据及其有限,所以寄存器根据需求进行分配。你不能直接控制,也不能在程序中感觉到寄存器存在的任何迹象。2.堆栈(stack):位于通用RAM(random-access memory,

2016-03-17 21:02:59 1445

空空如也

空空如也

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

TA关注的人

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