java
Finn
不忘初心
展开
-
Java 发生 OOM 后还能运行么?
在查询网上资料后,个人认为取决于两点,一是发生oom的代码是否有被try catch,二是发生oom的对象是否引用可达。如果oom的代码没有被try catch,则当前线程不会退出,oom对象相应也会保持引用可达状态,此时对象不会被full gc回收,导致整个程序瘫痪。若oom的代码被try catch了,但是其对象被其他线程共同引用,比如说该对象是一个静态变量且存在引用,这时候full gc也回收不掉该对象,整个程序也会瘫痪。但是如果同时满足try catch以及oom对象引用不可达,那么在线程正常结束后原创 2020-08-31 15:14:08 · 2145 阅读 · 1 评论 -
生产环境中同步任务的坑
如果你们的后端是分多机部署的,那么请注意给同步任务加上分布式锁,防止同步任务重复执行关于springBoot的@Scheduled还有一个需要注意的点,使用该注解后的同步任务在同一时刻只允许一个任务执行。如果希望同一时刻可以执行多个任务,只需要在在启动类中加入以下代码@Beanpublic TaskScheduler taskScheduler() { ThreadPoolTas...原创 2019-12-05 15:57:47 · 194 阅读 · 0 评论 -
SpringBoot请求线程优化
转自:https://blog.csdn.net/liuchuanhong1/article/details/78744138前言:在我们的实际生产中,常常会遇到下面的这种情况,某个请求非常耗时(大约5s返回),当大量的访问该请求的时候,再请求其他服务时,会造成没有连接使用的情况,造成这种现象的主要原因是,我们的容器(tomcat)中线程的数量是一定的,例如500个,当这500个线程都用来...转载 2019-10-28 16:07:33 · 3134 阅读 · 0 评论 -
字节和位的区别
字节:byte(B)位:bit(b)1字节 = 8位1KB = 1024字节1Kb = 1024位原创 2018-08-01 17:14:08 · 3919 阅读 · 0 评论 -
并行与并发的区别
转自:https://www.bughui.com/2017/08/23/difference-between-concurrency-and-parallelism/很多年前,上操作系统课的时候,老师告诉我们“并行是指同一时刻同时做多件事情,而并发是指同一时间间隔内做多件事情”。这里的差别初看确实简单明了,不过较真的我表示不同意。老师们说的话,貌似并不严谨。时刻是指时间轴上的一个点,一个瞬间...转载 2018-08-05 08:31:43 · 254 阅读 · 0 评论 -
tomcat历史版本下载
先进官网https://tomcat.apache.org/,然后就能选择需要下载的版本了原创 2018-07-05 13:39:19 · 1079 阅读 · 0 评论 -
jdk历史版本下载
转自https://blog.csdn.net/H12KJGJ/article/details/79240984首先访问:http://www.oracle.com/technetwork/java/javase/downloads/index.html这个地址到官方网站下载页面移动到该页面的最下方,Java Archive 历史仓库。点击Download按钮,就能看到JAVA所...转载 2018-07-05 11:25:39 · 550 阅读 · 0 评论 -
为什么说java只有值传递
我们来看看上面是值传递和引用传递首先要知道基本数据类型的值以及引用类型的引用是存放在堆中的,引用类型实际的数据是存放在栈中的对于8大基本数据类型(四整型2浮点1Char1booelan),值传递,意思是直接将值再堆中再复制一份,然后把复印的那份直接传给形参,所以你不管怎么操作都是对形参进行操作,与实参无关。对于引用类型为什么说是值传递,我贴个网上看到的代码class Student { ...原创 2018-07-10 15:43:09 · 1401 阅读 · 2 评论 -
javac编译注意点
以此工程为例 我电脑下该工程的路径为:D:\软件\都是Java啊\工作环境\RMI1.加入要编译remotingclient包下的Program(该类路径为D:\软件\都是Java啊\工作环境\RMI\src\main\java\site\zy9\rmi\remotingclient\Program),此类引用了PersonEntity和PersonService,我们打开cmd,首先要c...原创 2018-08-12 10:25:44 · 220 阅读 · 0 评论 -
Java反射机制的适用场景及其利与弊
转自:https://blog.csdn.net/zolalad/article/details/29370565Java反射机制的适用场景及其利与弊一、反射的适用场景是什么?1).Java的反射机制在做基础框架的时候非常有用,有一句话这么说来着:反射机制是很多Java框架的基石。而一般应用层面很少用,不过这种东西,现在很多开源框架基本都已经给你封装好了,自己基本用不着写。典型的除了H...转载 2019-03-20 16:39:18 · 439 阅读 · 0 评论 -
treemap为什么value返回null
转自:https://blog.csdn.net/tracybug/article/details/52515580前段时间工作中用到TreeMap集合,好久没用过以至于忘了会get到null值,现在把这个Mark一下。问题描述:本来TreeMap是用来**去重**并排序的。当我们因为需要**强制其存储重复键值**的时候,通过get去获取对应的值就会发生错误,取出null值。以下简单写...转载 2018-10-12 15:02:52 · 1152 阅读 · 2 评论 -
字典排序
此例子来自:https://zhidao.baidu.com/question/83236318.html比如ilove 和baray先比较第一个字符i 和 bb<i b是第2个 ,i是第9个 2 < 9于是 baray < ilove如果第一位相同,就比较第二位,例如:abcdd<abcdeaaaay<aaaaz如果其中之一是另一个的前缀,则...转载 2018-09-06 10:02:57 · 140 阅读 · 0 评论 -
为什么要使用serialVersionUID
整理自网上:(1)对于实现了Serializable接口的类,可以将其序列化输出至磁盘文件中,同时会将其serialVersionUID输出到文件中。(2)然后有需要使用时,再从磁盘将对象内容及serialVersionUID读入内容中的某个对象。(3)将磁盘内容读入对象时,需要进行强制类型转换,如Person person = (Person)ois.readObject(); ...转载 2018-09-05 16:44:55 · 1932 阅读 · 0 评论 -
返回值为基本数据类型返回null报空指针异常
显然,null并不能作为基本数据类型的值,int a = null;这句代码编译都过不了,如果返回值为null的话就会尝试将null强转为基本数据类型,此时就会报空指针异常。但是对于其包装类型就不存在这个问题了,给包装类型返回null是合理的,因为Integer a = null是被允许的。...原创 2018-08-03 14:51:32 · 4936 阅读 · 0 评论 -
父类构造函数与子类构造函数的关系
//父类public class Parent { String name; public String getName() { return name; } public void setName(String name) { this.name = name; } // public Parant(){// S...原创 2018-05-26 15:47:34 · 2627 阅读 · 0 评论 -
多线程在javaweb中的应用
转自 https://www.cnblogs.com/zedosu/p/6518049.html多线程在javaweb中的应用1.web应用中,要对某一个任务用多线程实现,最简单的代码格式是不是必须把要执行的代码放在run方法中?WEB服务器会帮你把每个访问请求开辟一个线程,你只要按照你所开发的框架,比如tomcat会让你利用servlet这个框架来写代码。具体真的一言难尽,反正不用写到RUN中,...转载 2018-05-22 09:00:06 · 1227 阅读 · 0 评论 -
静态代码块,非静态代码块,构造函数在子类和父类中的执行顺序
package test;class AA { { System.out.print("3"); } static { System.out.print("1"); } public AA() { System.out.print("2"); }}class BB extends AA{ { Syst...原创 2018-05-21 16:38:08 · 567 阅读 · 0 评论 -
Java实现单链表
今天把数据结构的书翻了翻,以前没想过用java实现链表玩玩,现在针对单链表进行简单的实现以及测试,小白代码比较粗糙package cn.dtstructure;/* * 单链表 * 外部类可以直接访问内部类的私有成员变量 * *///定义泛型类(节点数据类型) 以便扩展public class SingleLinkList<E> { private Node head_point...原创 2018-03-27 21:45:37 · 1135 阅读 · 0 评论 -
轻量级框架优势
整理自 https://segmentfault.com/q/1010000000379204轻量级框架是相对于重量级框架的一种不同的设计模式轻量级框架相对于重量级框架的优势1.轻量级框架不带有侵略性API,对容器也没有依赖性(例如spring和EJB,EJB必须依赖容器,spring即使在cmd下也能跑,不需要类似tomcat这样的容器),2.易于进行配置,易于通用,同时能够被扩展,启动时间较短...转载 2018-05-27 07:37:41 · 1402 阅读 · 0 评论 -
JS跨域方案JSONP与CORS的各自优缺点以及应用场景
转自 https://www.zhihu.com/question/41992168/answer/217903179从问题来看,相信题主已经了解JSONP与CORS的基本知识,回答也是建立在此基础上。首先明确:JSONP与CORS的使用目的相同,并且都需要服务端和客户端同时支持,虽然功能上讲CORS更为强大,但是需要根据应用场景选择使用哪一个。JSONP(json with padding 填充...转载 2018-05-30 16:00:19 · 5038 阅读 · 1 评论 -
Java中的String,StringBuilder,StringBuffer三者的区别
转自 https://www.cnblogs.com/su-feng/p/6659064.htmlJava中的String,StringBuilder,StringBuffer三者的区别 最近在学习Java的时候,遇到了这样一个问题,就是String,StringBuilder以及StringBuffer这三个类之间有什么区别呢,自己从网上搜索了一些资料,有所了解了之后在这里整理一下,便...转载 2018-06-02 09:45:44 · 97 阅读 · 0 评论 -
接口以及接口中的方法能被哪些修饰符修饰
当我给接口添加final修饰符时显示错误信息Illegal modifier for the interface InterfaceTest; only public & abstract are permitted即接口只能被public,abstract修饰符修饰,接口被设计的目的主要就是为了被继承,final修饰类却是表名该类不能被继承,所以用final修饰接口是无意义的给接口内的方...原创 2018-06-01 11:13:31 · 25114 阅读 · 3 评论 -
Java对象及其引用
转自 http://zwmf.iteye.com/blog/1738574关键字: java对象 引用Java对象及其引用关于对象与引用之间的一些基本概念。 初学Java时,在很长一段时间里,总觉得基本概念很模糊。后来才知道,在许多Java书中,把对象和对象的引用混为一谈。可是,如果我分不清对象与对象引用, 那实在没法很好地理解下面的面向对象技术。把自己的一点认识写下来,或许能让初学...转载 2018-06-01 10:42:00 · 142 阅读 · 0 评论 -
单例模式中的饿汉模式和懒汉模式
转自http://blog.sina.com.cn/s/blog_175b3022e0102x4ti.htmlhttps://blog.csdn.net/abc19900828/article/details/39479377/单例模式应用场合:对于某些对象只需要一个就够了的,比如旧社会的皇帝现在我们来看一下懒汉模式与饿汉模式的实现代码饿汉模式如下图:在饿汉模式中,初始化变量的时候最好加上fina...转载 2018-06-07 21:27:50 · 530 阅读 · 0 评论 -
freeMarker
1.1 Freemarker1.1.1 什么是freemarkerFreeMarker是一个用Java语言编写的模板引擎,它基于模板来生成文本输出。FreeMarker与Web容器无关,即在Web运行时,它并不知道Servlet或HTTP。它不仅可以用作表现层的实现技术,而且还可以用于生成XML,JSP或Java 等。 1.1.2 Freemarker的使用方法第一步:把freemarker的ja...原创 2018-03-08 09:42:45 · 519 阅读 · 0 评论