
java
数据猿+
这个作者很懒,什么都没留下…
展开
-
多场景下的maven打包方式
pom.xml中添加下列插件版本一:不带依赖<build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-jar-plugin</artifactId><version&g...原创 2019-01-08 17:31:05 · 4994 阅读 · 0 评论 -
java垃圾回收机制及其回收算法
GC垃圾回收: jvm按照对象的生命周期,将内存按“代”划分(将堆划分为多个地址池):新生代、老年代和持久代(jdk1.8后移除持久代); 在JVM中程序(PC)计数器、JAVA栈、本地方法栈3个区域随线程而生、随线程而灭,因此这几个区域的内存分配和回收都具备确定性,就不需要过多考虑回收的问题,因为方法结束或者线程结束时,内存自然就跟随着回收了。而堆和方法区则不一样,这部分内存...原创 2018-09-08 14:29:10 · 8181 阅读 · 0 评论 -
jvm内存结构
Java虚拟机 Java虚拟机运行时数据区域被分为五个区域:堆(Heap)、栈(Stack)、本地方法栈(Native Stack)、方法区(Method Area)、程序计数器(Program Count Register)。·方法区(线程共享) 类信息、构造函数、对象类型信息和普通方法的字节码内容、常量池和静态变量存储在该位置,方法区和堆一样都是运行时内存区域线程共...原创 2018-09-08 14:35:38 · 7708 阅读 · 0 评论 -
java中hashcode和equals方法的重写
在java集合中,我们知道有hashSet、hashMap这两种由散列表构成的集合,这两种集合在add()或者是put()时,虚拟机会先查看添加的元素哈希值是否相等,如果不等,虚拟机则会开辟出一个新的内存空间给这个元素。如果相等的话,虚拟机会继续使用equals()方法比较,如果还是相等那么虚拟机就认为这个元素已经存在,否则会将该元素添加到散列表中。 那么在我们...原创 2018-09-03 20:59:30 · 424 阅读 · 0 评论 -
springboot 2.0.x配置多数据源
在配置多数据源前,先了解一下访问数据库的几种方式:原生jdbc、jdbcTemplate和sqlSessionFactory。1.jdbcTemplate是对原生jdbc进行深层次的封装,虽然提高了开发效率,但是需要开发者在代码中编写sql,用起来很不方便,且不好维护。 2.sqlSessionFactory则是mybatis框架封装的单个数据库的内存映射,(它是安全的)开发者可以通过创...原创 2019-02-19 10:49:29 · 538 阅读 · 0 评论