02 2021 档案

关于eclipse 在 web deployment assembly 引入了其它项目的jar不会打包的问题
摘要:问题截图: 这里配置了 bs-common项目,maven会自动判断如果工作空间有该引用就是直接打包项目,没有则引用仓库,由于我的工程中有bs-common项目,所以是直接引用打包,但是这里却不会自动打包。 解决方式1: 重启eclipse,把 bs-common 和 本项目全部删掉,重新从svn导 阅读全文

posted @ 2021-02-25 16:34 signheart 阅读(472) 评论(0) 推荐(0) 编辑

spring boot java.sql.SQLException: The server time zone value '乱码' is unrecognized or represents more than one time zone
摘要:在springboot项目中,由于使用了高版本的mysql驱动(6.0+以后)就会出现需要设置时区的问题 jdbc.url改一下就行了,中国为东八区 spring.datasource.url=jdbc:mysql://localhost:33066/test?useUnicode=true&cha 阅读全文

posted @ 2021-02-25 16:31 signheart 阅读(127) 评论(0) 推荐(0) 编辑

jenkins 忘记密码
摘要:一不小心,忘记了admin用户的账号密码。然后就看不到manage jenkins的那部分内容了,看不到就改不了用户权限,也就是系统瘫痪了。 于是,想着开始没注册账号和密码的时候,都能看见,也就是没有sign in 和sign up模块的时候,是可以使用的,这些信息应该写在jenkins的配置文件里 阅读全文

posted @ 2021-02-25 16:21 signheart 阅读(269) 评论(0) 推荐(0) 编辑

自定义 ClassLoader
摘要:为什么要自定义类加载器 类加载机制:java虚拟机11:Java类加载机制 类加载器:java虚拟机12:类加载器 这两篇文章已经详细讲解了类加载机制和类加载器,还剩最后一个问题没有讲解,就是自定义类加载器。为什么我们要自定义类加载器?因为虽然Java中给用户提供了很多类加载器,但是和实际使用比起来 阅读全文

posted @ 2021-02-25 15:55 signheart 阅读(439) 评论(0) 推荐(0) 编辑

HashCode 解析
摘要:前言 Object提供给我们了一个Native的方法“public native int hashCode();”,本文讲讲Hash是什么以及HashCode的作用 Hash 先用一张图看下什么是Hash Hash是散列的意思,就是把任意长度的输入,通过散列算法变换成固定长度的输出,该输出就是散列值 阅读全文

posted @ 2021-02-25 15:54 signheart 阅读(242) 评论(0) 推荐(0) 编辑

Unsafe与CAS
摘要:Unsafe 简单讲一下这个类。Java无法直接访问底层操作系统,而是通过本地(native)方法来访问。不过尽管如此,JVM还是开了一个后门,JDK中有一个类Unsafe,它提供了硬件级别的原子操作。 这个类尽管里面的方法都是public的,但是并没有办法使用它们,JDK API文档也没有提供任何 阅读全文

posted @ 2021-02-25 15:52 signheart 阅读(84) 评论(0) 推荐(0) 编辑

ReentrantLock实现原理深入探究
摘要:前言 这篇文章被归到Java基础分类中,其实真的一点都不基础。网上写ReentrantLock的使用、ReentrantLock和synchronized的区别的文章很多,研究ReentrantLock并且能讲清楚ReentrantLock的原理的文章很少,本文就来研究一下ReentrantLock 阅读全文

posted @ 2021-02-25 15:52 signheart 阅读(68) 评论(0) 推荐(0) 编辑

javaNIO:选择器--实践 Selector
摘要:选择器服务器端代码 选择器--理论这篇笔记很多和选择器相关的知识点,下面进入实战,看一下如何写和使用选择器实现服务端Socket数据接收的程序,这也是NIO中最核心、最精华的部分。 选择器的优点和注意点: 1.在传统io soket进行网络通信的时候,使用的阻塞通道,我们能知道什么时候写什么时候读, 阅读全文

posted @ 2021-02-24 17:45 signheart 阅读(181) 评论(0) 推荐(0) 编辑

javaNIO:选择器--理论 Selector
摘要:选择器 最后,我们探索一下选择器,选择器Selector是nio最重要的一个特性。由于选择器内容比较多,所以本篇先偏理论地讲一下,后一篇讲代码,文章也没有什么概括、总结的,写到哪儿算哪儿了,只求能将选择器写明白,并且将一些相对重要的内容加粗标红。 选择器提供选择执行已经就绪的任务的能力,这使得多元I 阅读全文

posted @ 2021-02-24 17:44 signheart 阅读(149) 评论(0) 推荐(0) 编辑

javaNIO:Socket通道
摘要:Socket通道 上文讲述了通道、文件通道,这篇文章来讲述一下Socket通道,Socket通道与文件通道有着不一样的特征,分三点说: 1、NIO的Socket通道类可以运行于非阻塞模式并且是可选择的,这两个性能可以激活大程序(如网络服务器和中间件组件)巨大的可伸缩性和灵活性,因此,再也没有为每个S 阅读全文

posted @ 2021-02-24 17:43 signheart 阅读(395) 评论(0) 推荐(2) 编辑

javaNIO:通道和文件通道 Channel
摘要:通道是什么 通道式(Channel)是java.nio的第二个主要创新。通道既不是一个扩展也不是一项增强,而是全新的、极好的Java I/O示例,提供与I/O服务的直接连接。Channel用于在字节缓冲区和位于通道另一侧的实体(通常是一个文件描述符(window下叫文件句柄)或套接字(网络传输用到, 阅读全文

posted @ 2021-02-24 17:42 signheart 阅读(165) 评论(0) 推荐(0) 编辑

javaNIO:缓冲区 Buffer
摘要:什么是缓冲区 一个缓冲区对象是固定数量的数据的容器,其作用是一个存储器,或者分段运输区,在这里数据可被存储并在之后用于检索。缓冲区像前篇文章讨论的那样被写满和释放,对于每个非布尔原始数据类型都有一个缓冲区类,尽管缓冲区作用于它们存储的原始数据类型,但缓冲区十分倾向于处理字节,非字节缓冲区可以再后台执 阅读全文

posted @ 2021-02-24 17:41 signheart 阅读(261) 评论(0) 推荐(0) 编辑

javaNIO:I/O模型解读
摘要:I/O模型 在开始NIO的学习之前,先对I/O的模型有一个理解,这对NIO的学习是绝对有好处的。我画一张图,简单表示一下数据从外部磁盘向运行中进程的内存区域移动的过程: 这张图片明显忽略了很多细节,只涉及了基本操作,下面分析一下这张图。 用户空间和内核空间 一个计算机通常有一定大小的内存空间,如一台 阅读全文

posted @ 2021-02-24 17:35 signheart 阅读(138) 评论(0) 推荐(0) 编辑

javaNIO:NIO概述
摘要:Java NIO(new io 或者 no blocking no) 由以下几个核心部分组成: Channels (通道)Buffers (缓冲区)Selectors (选择器) 虽然Java NIO 中除此之外还有很多类和组件,但在我看来,Channel,Buffer 和 Selector 构成了 阅读全文

posted @ 2021-02-24 17:32 signheart 阅读(107) 评论(0) 推荐(0) 编辑

javaIO:java IO 总结 持续更新
摘要:字节流、字符流继承关系 前几篇文章讲解了字节流、字符流的使用,不过Java提供给用户的流类远不止此,限于篇幅原因,没办法一一讲解,而且也没有必要一一讲解,就像我在写博客的时候多次提到的,有问题的时候学会查JDK API即可。OK,虽然不一一讲解每种流,我自己简单画了几张UML图,说明一下字节输入流、 阅读全文

posted @ 2021-02-24 17:26 signheart 阅读(66) 评论(0) 推荐(0) 编辑

javaIO:管道流、对象流
摘要:前言 前面的文章主要讲了文件字符输入流FileWriter、文件字符输出流FileReader、文件字节输出流FileOutputStream、文件字节输入流FileInputStream,这些都是常见的流类。当然除了这些流类之外,Java还提供了很多的流类给用户使用,本文就看一下别的流。 管道流 阅读全文

posted @ 2021-02-24 17:22 signheart 阅读(142) 评论(0) 推荐(0) 编辑

javaIO:字符流进阶BufferedWriter、BufferedReader
摘要:字符流和字节流的区别 拿一下上一篇文章的例子: 第8行"out.close()"注释掉可以看一下效果,"writer.txt"一定是空的,控制台上输出的是"文件中无数据",说明一下原因。 字符流和字节流非常相似,但也有区别,从网上找了一张图: 、 从图上看,字符流和字节流最大的区别在于,字节流在操作 阅读全文

posted @ 2021-02-24 17:21 signheart 阅读(155) 评论(0) 推荐(0) 编辑

javaIO:字符流
摘要:字符流 字节流提供了处理任何类型输入/输出操作的功能(因为对于计算机而言,一切都是0和1,只需把数据以字节形式表示就够了),但它们不可以直接操作Unicode字符,因为上一篇文章写了,一个Unicode字符占用2个字节,而字节流一次只能操作一个字节。既然Java的口号就是"一次编写、处处运行",那么 阅读全文

posted @ 2021-02-24 17:20 signheart 阅读(57) 评论(0) 推荐(0) 编辑

javaIO:字符编码
摘要:前言 字符编码,这本不属于IO的内容,但字节流之后写的应该是字符流,既然是字符流,那就涉及一个"字符编码的"问题,考虑到字符编码不仅仅是在IO这块,Java中很多场景都涉及到这个概念,因此这边文章就专门详细写一下字符编码,具体的网上有很多,但本文目的是尽量讲清楚各种编码方式的作用,个人认为,不求、也 阅读全文

posted @ 2021-02-24 17:19 signheart 阅读(178) 评论(0) 推荐(0) 编辑

javaIO:字节流
摘要:流类 Java的流式输入/输出是建立在四个抽象类的基础上的:InputStream、OutputStream、Reader、Writer。它们用来创建具体的流式子类。尽管程序通过具体子类执行输入/输出操作,但顶层类定义了所有流类的基本通用功能。 InputStream和OutputStream为字节 阅读全文

posted @ 2021-02-24 17:18 signheart 阅读(85) 评论(0) 推荐(0) 编辑

javaIO:RandomAccessFile
摘要:RandomAccessFile RandomAccessFile类可以说是Java语言中功能最为丰富的文件访问类,它提供了众多的文件访问方法。RandomAccessFile类支持"随机访问"方式,可以跳转到文件的任意位置处读写数据。要访问一个文件的时候,不想把文件从头读到尾,而是希望像访问一个数 阅读全文

posted @ 2021-02-24 17:17 signheart 阅读(90) 评论(0) 推荐(0) 编辑

javaIO:IO和File
摘要:IO 大多数的应用程序都要与外部设备进行数据交换,最常见的外部设备包含磁盘和网络。IO就是指应用程序对这些设备的数据输入与输出,Java语言定义了许多类专门负责各种方式的输入、输出,这些类都被放在java.io包中。 File类 File类是IO包中唯一代表磁盘文件本身的对象,File类定义了一些与 阅读全文

posted @ 2021-02-24 17:16 signheart 阅读(68) 评论(0) 推荐(0) 编辑

java io 详细代码实现 纪录
摘要:什么是IO流? byte序列的读写,Java中的IO流是实现输入/输出的基础.1)InputStream : 抽象类读取数据的过程 包含读取方法read(); in 模仿了读取小说的过程 简单说 : in是读取文件的 OutputStream:抽象了写出数据的过程 包含写出方法write(); ou 阅读全文

posted @ 2021-02-24 17:15 signheart 阅读(94) 评论(0) 推荐(0) 编辑

ClassLoader 理解
摘要:ClassLoader 做什么的?顾名思义,它是用来加载 Class 的。它负责将 Class 的字节码形式转换成内存形式的 Class 对象。字节码可以来自于磁盘文件 *.class,也可以是 jar 包里的 *.class,也可以来自远程服务器提供的字节流,字节码的本质就是一个字节数组 []by 阅读全文

posted @ 2021-02-24 14:45 signheart 阅读(156) 评论(0) 推荐(0) 编辑

JVM两种运行模式Server与Client
摘要:JVM有两种运行模式Server与Client。两种模式的区别在于,Client模式启动速度较快,Server模式启动较慢;但是启动进入稳定期长期运行之后Server模式的程序运行速度比Client要快很多。这是因为Server模式启动的JVM采用的是重量级的虚拟机,对程序采用了更多的优化;而Cli 阅读全文

posted @ 2021-02-24 14:44 signheart 阅读(998) 评论(0) 推荐(0) 编辑

java虚拟机12:类加载器
摘要:类与类加载器 虚拟机设计团队把类加载阶段张的"通过一个类的全限定名来获取此类的二进制字节流"这个动作放到Java虚拟机外部去实现,以便让应用程序自己决定如何去获取所需要的类。实现这个动作的代码模块称为"类加载器"。类加载器虽然只用于实现类的加载动作,但它在Java程序中起到的作用却远远不限定于类加载 阅读全文

posted @ 2021-02-24 14:43 signheart 阅读(70) 评论(0) 推荐(0) 编辑

java Class File 文件结构
摘要:学习Java的朋友应该都知道Java从刚开始的时候就打着平台无关性的旗号,说“一次编写,到处运行”,其实说到无关性,Java平台还有另外一个无关性那就是语言无关性,要实现语言无关性,那么Java体系中的class的文件结构或者说是字节码就显得相当重要了,其实Java从刚开始的时候就有两套规范,一个是 阅读全文

posted @ 2021-02-24 14:43 signheart 阅读(266) 评论(0) 推荐(0) 编辑

java虚拟机11:Java类加载机制
摘要:前言 我们知道我们写的程序经过编译后成为了.class文件,.class文件中描述了类的各种信息,最终都需要加载到虚拟机之后才能运行和使用。而虚拟机如何加载这些.class文件?.class文件的信息进入到虚拟机后会发生什么变化?这些都是本文要讲的内容,文章将会讲解加载类加载的每个阶段Java虚拟机 阅读全文

posted @ 2021-02-24 14:42 signheart 阅读(219) 评论(0) 推荐(0) 编辑

java虚拟机11:运行期优化
摘要:编译对象与触发条件 之前讲过,Sun使用的虚拟机之所以被叫做"HotSpot",就是因为运行过程中会检测热点代码,那么运行过程中,会被即时编译器编译的"热点代码"有两类,即: 被多次调用的方法被多次执行的循环体 前者很好理解,一个方法被调用得多了,方法体内代码执行的次数自然就多,他成为"热点代码"也 阅读全文

posted @ 2021-02-24 14:42 signheart 阅读(97) 评论(0) 推荐(0) 编辑

java虚拟机 10:内存分配原则
摘要:前言 对象的内存分配,往大的方向上讲,就是在堆上分配,少数情况下也可能会直接分配在老年代中,分配的规则并不是百分之百固定的,其细节决定于当前使用的是哪种垃圾收集器组合,当然还有虚拟机中与内存相关的参数。垃圾收集器组合一般就是Serial+Serial Old和Parallel+Serial Old, 阅读全文

posted @ 2021-02-24 14:41 signheart 阅读(107) 评论(0) 推荐(0) 编辑

java虚拟机9:Java的内存模型
摘要:什么是Java内存模型 Java虚拟机规范中试图定义一种Java内存模型(Java Memory Model,JMM)来屏蔽掉各种硬件和操作系统的访问差异,以实现让Java程序在各种平台下都能达到一致的内存访问效果。在此之前,主流程序语言(如C/C++等)直接使用物理硬件和操作系统的内存模型,因此, 阅读全文

posted @ 2021-02-24 14:40 signheart 阅读(86) 评论(0) 推荐(0) 编辑

java虚拟机8:内存溢出和内存泄露、并行和并发、Minor GC和Full GC、Client模式和Server模式的区别
摘要:内存溢出和内存泄露的区别 1、内存溢出 内存溢出指的是程序在申请内存的时候,没有足够大的空间可以分配了。 2、内存泄露 内存泄露指的是程序在申请内存之后,没有办法释放掉已经申请到内存,它始终占用着内存,即被分配的对象可达但无用。内存泄露一般都是因为内存中有一块很大的对象,但是无法释放。 从定义上可以 阅读全文

posted @ 2021-02-24 14:39 signheart 阅读(174) 评论(0) 推荐(0) 编辑

java虚拟机7:垃圾收集器 基于回收算法理论的实现
摘要:垃圾收集器 垃圾收集器就是上面讲的理论知识的具体实现了。不同虚拟机所提供的垃圾收集器可能会有很大差别,我们使用的是HotSpot,HotSpot这个虚拟机所包含的所有收集器如图: 上图展示了7种作用于不同分代的收集器,如果两个收集器之间存在连线,那说明它们可以搭配使用。虚拟机所处的区域说明它是属于新 阅读全文

posted @ 2021-02-24 14:38 signheart 阅读(84) 评论(0) 推荐(0) 编辑

java虚拟机5:垃圾回收算法
摘要:引用计数(Reference Counting):比较古老的回收算法。原理是此对象有一个引用,即增加一个计数,删除一个引用则减少一个计数。垃圾回收时,只用收集计数为0的对象。此算法最致命的是无法处理循环引用的问题。标记-清除(Mark-Sweep):这是最基础的算法,标记-清除算法就如同它的名字样, 阅读全文

posted @ 2021-02-24 14:37 signheart 阅读(159) 评论(0) 推荐(0) 编辑

java虚拟机6:hotspot 的算法实现
摘要:1.枚举根节点 2.安全点 3.安全区域 阅读全文

posted @ 2021-02-24 14:35 signheart 阅读(111) 评论(0) 推荐(0) 编辑

java虚拟机3:jvm OutOfMemoryError
摘要:在JVM中内存一共有3种:Heap(堆内存),Non-Heap(非堆内存) 和Native(本地内存)。 堆内存是运行时分配所有类实例和数组的一块内存区域。非堆内存包含方法区和JVM内部处理或优化所需的内存,存放有类结构(如运行时常量池、字段及方法结构,以及方法和构造函数代码)。本地内存是由操作系统 阅读全文

posted @ 2021-02-24 14:35 signheart 阅读(79) 评论(0) 推荐(0) 编辑

java虚拟机4:jvm GC机制回收 判断对象生死 及 方法区永久代回收条件
摘要:heap堆中存放着几乎所有的对象实例,垃圾收集器在堆堆进行回收前,首先要确定这些对象哪些还“活着”,哪些已经“死去”。方法有如下两种: (1)引用计数法 算法思想:为对象添加一个引用计数器,每当有一个地方引用该对象时,则该引用计数器值加1,;当引用失效时,则该引用计数器值减1;最后,计数器为0的对象 阅读全文

posted @ 2021-02-24 14:35 signheart 阅读(171) 评论(0) 推荐(0) 编辑

java虚拟机2:hotspot 对象探究
摘要:对象的创建 Java是一门面向对象的编程语言,Java程序运行过程中每时每刻都有对象被创建出来。在语言层面上,创建对象通常(例外:克隆、反序列化)仅仅是一个new关键字而已,而在虚拟机中,对象(本文中讨论的对象限于普通Java对象,不包括数组和Class对象等)的创建又是怎样一个过程呢? 虚拟机遇到 阅读全文

posted @ 2021-02-24 14:35 signheart 阅读(148) 评论(1) 推荐(0) 编辑

java虚拟机1:JVM内存结构
摘要:几个计算机的概念为以后写文章考虑,也为巩固自己的知识和一些基本概念,这里要理清楚几个计算机中的概念。1、计算机存储单位从小到大依次为位Bit、字节Byte、千字节KB、兆M、千兆GB、TB,相邻单位之间都是1024倍,1024为2的10次方,即1Byte = 8bit,1K = 1024Byte,1 阅读全文

posted @ 2021-02-24 14:35 signheart 阅读(100) 评论(0) 推荐(0) 编辑

JVM调优总结 -Xms -Xmx -Xmn -Xss
摘要:堆大小设置JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统 下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Windows Server 2003 系统,3.5G物理内存,JDK5.0 阅读全文

posted @ 2021-02-24 14:34 signheart 阅读(333) 评论(0) 推荐(0) 编辑

linux 变量规则
摘要:1、变量与变量内容之间用等号连接,并且连接的两边不能有空格; 2、如果变量内容里面包括空格之类的特殊字符,用单引号或者双引号将变量内容结合起来,其中双引号会保持特殊字符的原始属性,单引号将特殊字符处理为一般字符 如:version="Red Hat $(uname -r)" echo version 阅读全文

posted @ 2021-02-24 14:31 signheart 阅读(288) 评论(0) 推荐(0) 编辑

新版eclipse多行注释去掉多余的星号
摘要:formatter new 一个新的配置 勾掉上面的 保存即可 阅读全文

posted @ 2021-02-24 14:24 signheart 阅读(135) 评论(0) 推荐(0) 编辑

mysql 级联删除级联更新 update delete inner
摘要:正常update update tb_platform_role set ROLE_NAME = '1' where ROLE_NAME = '1' inner sql写法 sqlserver写法: update tb_platform_role set ROLE_NAME='' from tb_p 阅读全文

posted @ 2021-02-24 14:20 signheart 阅读(149) 评论(0) 推荐(0) 编辑

导航

点击右上角即可分享
微信分享提示