![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
CYH_job
这个作者很懒,什么都没留下…
展开
-
java中的auto-boxing/unboxing
java 5开始引入了autoboxing 和auto-unboxing机制,方便了基本类型和其对应的wrapper类型的转换。比如我们可以直接把一个基本类型的值赋给其wrapper类型,反之亦然;可以把一个基本类型直接放入容器里,封装的过程由编译器来完成;调用方法的时候可以直接匹配参数autoboxing和auto-unboxing之后的版本。 这个过程编译器也只是做了个简单的处理,通过wr转载 2017-08-09 15:55:40 · 1235 阅读 · 0 评论 -
JAVA_HOME环境变量修改后,java版本保持不变的问题
在现公司,遇到一个问题,就是配置JAVA_HOME无效,不管怎么改,运行Java -version始终是最初的那个java版本。直接在PATH环境变量里追加写死的java路径也没用。解决过程在网上看到有些工程师说删除 C:\WINDOWS\system32目录下的java.exe、javac.exe等exe程序。因为系统会优先在这个目录下寻找,然后才去找JAVA_HOME环境变量。原创 2017-08-22 15:35:21 · 2469 阅读 · 0 评论 -
BIO(同步阻塞)NIO(同步非阻塞)AIO(异步非阻塞)
先来个例子理解一下概念,以银行取款为例:同步 : 自己亲自出马持银行卡到银行取钱(使用同步IO时,Java自己处理IO读写)。异步 : 委托一小弟拿银行卡到银行取钱,然后给你(使用异步IO时,Java将IO读写委托给OS处理,需要将数据缓冲区地址和大小传给OS(银行卡和密码),OS需要支持异步IO操作API)。阻塞 : ATM排队取款,你只能等待(使用阻塞I转载 2017-08-14 11:01:55 · 350 阅读 · 0 评论 -
win7系统下的Tomcat7.0安装配置
1.到http://tomcat.apache.org下载下载Tomcat7.0相应版本 Windows系统最好下载ZIP包;Linux系统最好下载tar包。 看到书上说,最好不要下载Tomcat的安装文件,因为安装文件启动时是看不到控制台命令输出的。 2.将相应ZIP文件解压到本机任意目录下,本人安装时将其解压到: D:\Chuang-Study\apache-tomcat-转载 2017-08-13 16:58:11 · 640 阅读 · 0 评论 -
Spring中的AOP
什么是AOPAOP(Aspect-OrientedProgramming,面向方面编程),可以说是OOP(Object-Oriented Programing,面向对象编程)的补充和完善。OOP引入封装、继承和多态性等概念来建立一种对象层次结构,用以模拟公共行为的一个集合。当我们需要为分散的对象引入公共行为的时候,OOP则显得无能为力。也就是说,OOP允许你定义从上到下的关系,但并不适合定转载 2017-08-13 12:27:17 · 259 阅读 · 0 评论 -
java中的锁优化
JVM中锁的优化: 简单来说在JVM中monitorenter和monitorexit字节码依赖于底层的操作系统的Mutex Lock来实现的,但是由于使用Mutex Lock需要将当前线程挂起并从用户态切换到内核态来执行,这种切换的代价是非常昂贵的;然而在现实中的大部分情况下,同步方法是运行在单线程环境(无锁竞争环境)如果每次都调用Mutex Lock那么将严重的影响程序的性能转载 2017-08-11 23:35:53 · 378 阅读 · 0 评论 -
hashmap与hashtable的区别
1 区别:1)继承与实现的不同HashTable是基于陈旧的Dictionary类,完成了Map接口;HashMap是Java1.2引进的Map接口的一个实现(HashMap继承于AbstractMap,AbstractMap完成了Map接口)2)线程安全不同HashTable的方法是同步的,HashMap的方法是未同步的。3)对null的处理不同H转载 2017-08-17 17:17:01 · 265 阅读 · 0 评论 -
List-ArrayList、LinkedList、Vector的底层实现和区别
ArrayList底层实际是采用数组实现的(并且该数组的类型是Object类型的)如果jdk6,采用Array.copyOf()方法来生成一个新的数组,如果是jdk5,采用的是System.arraycopy()方法(当添加的数据量大于数组的长度的时候)List list = new ArrayList()时,底层会生成一个长度为10的数组来存放对象ArrayList、Vector底部都是采用数组转载 2017-08-17 17:02:38 · 583 阅读 · 0 评论 -
java中hashmap原理
1. HashMap概述: HashMap是基于哈希表的Map接口的非同步实现。此实现提供所有可选的映射操作,并允许使用null值和null键。此类不保证映射的顺序,特别是它不保证该顺序恒久不变。 2. HashMap的数据结构: 在java编程语言中,最基本的结构就是两种,一个是数组,另外一个是模拟指针(引用),所有的数据结构都可以用这两个基本转载 2017-08-10 15:03:52 · 299 阅读 · 0 评论 -
从前端页面到后台的流程
从浏览器页面得到jsp文件名——找到js文件(与jsp文件名相同)——从js文件中找到functionID——打开配置文件,找到functionID对应的controller文件——在controller文件中找到resource中的service文件——在service文件中找到mapper(.xml)文件原创 2017-09-21 16:33:05 · 2605 阅读 · 0 评论