![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 84
生活因我绚丽
独立寒川上,春秋任剪裁。万千凡尘事,随心作安排。
展开
-
JVM介绍(针对JDK8+)
JVM介绍(针对JDK8+)关系图如下运行时数据区JVM栈 (Java Virtual Machine Stacks)堆内存 (Heap Memory)方法区(元空间) (Metaspace)本地方法栈 (Native Method Stacks)程序计数器 (Program Counter (PC) Register)之前整理过一篇jdk7以前版本的jvm,然后有朋友建议更新一下。实在不好意思,本人比较懒,好多东西只是记录在本地会更新到网上,今天咱们先简单聊一下jdk8+后jvm的的变动信息关系图如下原创 2021-03-12 10:51:57 · 296 阅读 · 0 评论 -
jvritualVM监听远程主机的JVM
本地使用 jvritualVM 监听远程主机的JVM情况,做调优分析1、服务器上安装java的jdk环境。2、服务器上的java安装的bin下(如/usr/local/jvm/java-openjdk/bin)新建一个文件:jstatd.all.policy内容:grant codebase "file:${java.home}/../lib/tools.jar" {permission java.security.AllPermission;};3、...原创 2020-06-09 11:14:06 · 635 阅读 · 0 评论 -
org.hibernate.lazyinitializationexception could not initialize proxy - no session
问题发生背景:JPA做数据持久操作。表之间关系:机构对象:@JsonIgnore@ManyToMany(mappedBy = "organs")private Set<dept> depts;部门对象:@ManyToMany@JoinTable(name = "depts_organs", joinColumns = {@Join...原创 2020-03-26 17:20:53 · 651 阅读 · 0 评论 -
IPv6地址格式化
随着IPv6网络的兴起,软件开发也多了起来。但是IPv6的地址写法存在多种多样,我们需要把它统一格式为全8段地址。所以我提示大家一下,Java中有一个InetAddress类(该类的对象用于IP地址和域名)就可以做地址统一,此时我们也采用这个类来做地址格式,还可以方便我们与其他技术做判断类的衔接;demo如下:这样我们就不用了自己去编写工具类啦,看来需要补充知识啊。...原创 2020-02-25 14:45:17 · 1282 阅读 · 0 评论 -
Java类加载机制
转载地址:http://www.cnblogs.com/xrq730/p/4827590.html前言我们知道我们写的程序经过编译后成为了.class文件,.class文件中描述了类的各种信息,最终都需要加载到虚拟机之后才能运行和使用。而虚拟机如何加载这些.class文件?.class文件的信息进入到虚拟机后会发生什么变化?这些都是本文要讲的内容,文章将会讲解加载类加载的每个阶段Java虚拟机需要...转载 2018-03-27 15:42:57 · 149 阅读 · 0 评论 -
java中for foreach效果对比,原理分析
最近闲来无事看了看java中for 与foreach的效率,文章如有错误之处,欢迎大家帮忙指正。谢谢。首先foreach写法简单,但是不知道效率如何,简单编写ArrayList测试用例, 可以看出foreach运行效率很慢,那么换一下LinderList呢。效果很明显,foreach用于链表结构存储查询速度非常快。那么这么为什么呢?for循环是根据下标一个个检索获取...原创 2018-09-26 17:08:07 · 7180 阅读 · 0 评论 -
springboot配置不同环境读取不同文件(一)
以下是本人暂时了解的知识,写出来用于笔记同时方便大家使用。如有问题之处,欢迎朋友指正。使用过springboot的朋友都有发现,对于springboot真是约定大于规则。内部为我们做了许多封装与处理。这也导致,我们只能按照他的约定来使用。在这里简单记录一下配置不同环境不同读取变量的方式。一 使用application.properties配置文件此时我们需要创建多个applic...原创 2019-03-24 20:16:30 · 7037 阅读 · 0 评论 -
springboot配置不同环境读取不同文件(二)+maven
上一篇写到了,如何在springboot中配置多环境的配置文件,https://blog.csdn.net/heart_mine/article/details/88781000今天结合maven在来讲以下,如何通过maven自动控制环境配置文件。首先在pom.xml中配置多环境文件如下图:然后在springboot的.properties文件中配置spring.profile...原创 2019-03-25 15:43:40 · 1826 阅读 · 0 评论 -
java中基本类型读写是原子的,那么是不是就是线程安全呢
《thinking in Java》的第21章的《并发》有写:“除了long和double类型,Java基本数据类型都是的简单读写都是原子的,而简单读写就是赋值和return语句。”因此而对于其他自加自减以及其他运算操作,是非原子操作。但是,虽然读写基本类型是原子的,但其都是在工作内存层面的,由于线程有一个时间分片的概念,并不能保证此时基本类型的数据对于其他线程来说是最新修改值,因此,声明为vol...原创 2018-03-17 13:03:57 · 4606 阅读 · 3 评论 -
传统项目升级jdk1.7,问题汇总(一)application.getRealPath("/")为null
2017年下半年后期一直参与公司传统项目的jdk升级项目实施。由于项目成形早,jdk为1.5,应互联网转型的趋势,需要将传统项目升级为jdk1.7,并将项目重新修改为Maven项目,以支持分布式架构、自动化测试、自动化部署等要求。此为背景。问题一:404路径问题。 项目中通过使用application.getRealPath("/")来获取class文件所在目录,以此获取项目路径。 此...原创 2018-03-01 13:34:38 · 2528 阅读 · 0 评论 -
传统项目升级jdk1.7,问题汇总(二)报org.jdom.JDOMException
报org.jdom.JDOMException: The element type "message" must be terminated by the matching end-tag "</message>".: Error on line 8: The element type "message" must be terminated by the matching ...原创 2018-03-01 13:52:39 · 2613 阅读 · 0 评论 -
idea 编译时,报“编码GBK的不可映射字符”
idea 编译时,报“编码GBK的不可映射字符” 1) 修改系统编码格式:file--setting--file encoding :全部修改为GBK、path下面添加自己的项目 2) 单个文件修改编码格式:点击右下角(显示编码格式,如果没有,就随意右键,选择“file encoding); 然后出现弹出框,有两个按钮“reload”,“convert”; Reload 表示使用新编码重新加载...原创 2018-03-01 14:00:11 · 19134 阅读 · 0 评论 -
java虚拟机(JVM)堆、栈、方法区的详细详解和区别介绍(JDK7及以前版本)
在介绍jvm的堆、栈、方法区的区别之前需要先了解一下JVM的基本结构是什么。根据《java虚拟机规范》规定,JVM的基本结构一般如下图所示:由上图可知JVM基本机构包括:类加载器、内存区域、执行引擎、本地库接口 。这里我们说明一下内存区(也叫运行时数据区),运行时内存区主要可以划分为5个区域:1. JVM栈 (Java Virtual Machine Stacks)2. 堆内存 (Heap Me...原创 2018-03-09 13:46:40 · 19310 阅读 · 5 评论 -
JVM结构、GC工作机制详解
原文路径:http://blog.csdn.net/tonytfjing/article/details/44278233知识不仅要知其然,还要知其所以然。其实弄懂了JVM和GC,对我们理解很多java知识都有帮助。网上有很多关于GC和JVM的文章,这篇博文主要是根据我最近看《深入理解Java虚拟机》的一些体会总结出来的,希望对新手有些帮助,也欢迎大牛拍砖。文章主要分为以下四个部分JVM结构、内存...转载 2018-03-01 17:24:17 · 179 阅读 · 0 评论 -
详解JVM中堆、栈、方法区(对象、值)是如何调用执行的
转载地址:http://www.cnblogs.com/dingyingsi/p/3760730.html这两天看了一下深入浅出JVM这本书,推荐给高级的java程序员去看,对你了解JAVA的底层和运行机制有比较大的帮助。废话不想讲了.入主题:先了解具体的概念:JAVA的JVM的内存可分为3个区:堆(heap)、栈(stack)和方法区(method)堆区:1.存储的全部是对象,每个对象都包含一个...转载 2018-03-09 14:38:49 · 4060 阅读 · 4 评论 -
Java 面试高频提问知识点之:Set、List 和 Map 的区别
原文连接:http://blog.csdn.net/defonds/article/details/47951103Set 、List 和 Map 是 Java 容器框架的三个最重要的接口,Set、List 和 Map 之间的区别是 Java 容器面试时最经常提问的问题之一。有时这一问题被问作是什么时候使用 List、Set 和 Map。很明显,面试官想知道的是你是否熟悉 Java 容器框架的基础...转载 2018-03-15 21:50:16 · 207 阅读 · 0 评论 -
eclipse中build path与Web Deployment Assembly的作用,区别
以下内容只为做个笔记记录已下,有问题可以留言,欢迎补充。今天在eclipse 中部署maven项目,同事部署失败,对比配置信息是发现了一个疑问。eclipse中build path与Web Deployment Assembly的作用,区别?在Web Deployment Assembly中我并没有指定UI(webapp)目录输出,为什么部署后服务器上可以读到ui目录的文件。是build path...原创 2018-02-28 17:07:41 · 2050 阅读 · 0 评论