- 博客(189)
- 收藏
- 关注
原创 JVM学习笔记之七
6. 运行期优化6.1 即时编译分层编译(TieredCompilation)先看看一个例子public class JIT1 { public static void main(String[] args) { for (int i = 0; i < 200; i++) { long star = System.nanoTime(...
2020-04-25 21:47:32
262
原创 JVM学习笔记之六
5. 类加载器以 JDK 8 为例Bootstrap ClassLoader 启动类加载器Extension ClassLoader扩展类加载器Application ClassLoader应用程序类加载器5.1 启动类加载器(Bootstrap ClassLoader )public class F { static { System.out.pri...
2020-04-25 17:11:35
162
原创 JDK8并发编程之并发包概览
JDK8并发包概览以下信息依据 openjdk8描述:java.util.concurrent 直接包里面包含 59 个类或者接口。java.util.concurrent.atomic 里面包含18个类或者接口。java.util.concurrent.locks 里面包含11个类或者接口。原子类(atomic包)说明,原子类或者说CAS操作都依赖于Unsafe类,所以这个类也需要了...
2020-04-25 13:42:52
889
原创 System.getProperty 用法
System.out.println("java版本号:" + System.getProperty("java.version")); // java版本号 System.out.println("Java提供商名称:" + System.getProperty("java.vendor")); // Java提供商名称 System.out.println(...
2020-04-25 12:49:01
218
原创 JVM学习笔记之五
4. 类加载阶段4.1 加载将类的字节码载入方法区中,内部采用C++的instanceKlass描述java类,它的重要field有:_java_mirror即 java 的类镜像,例如对 String 来说,就是 String.class,作用是把 klass 暴露给 java 使用_super 即父类_methods 即方法constants 即常量池class_load...
2020-04-25 11:08:11
382
原创 JVM学习笔记之四
02_07异常处理public class Demo17 { public static void main(String[] args) { Object lock = new Object(); synchronized (lock){ System.out.println("ok"); } }}=...
2020-04-24 22:33:42
186
原创 JVM学习笔记之三
02字节码指令02_01字节码指令-init字节码指令-main02_02javap使用public class HelloWorld{ public static void main(String[] args) { System.out.println("HelloWorld"); }}D:\jvm\out\production\view...
2020-04-23 11:37:26
413
转载 JVM学习笔记之二
JVM学习笔记4 GC调优掌握GC相关的JVM参数,会基本的空间调整掌握相关工具重点:调优与应用和环境有关,没有统一的规则查看虚拟机运行参数“jdk下bin目录下java命令的绝对地址” -XX:+PrintFlagFinal -version | findstr “GC”我的是 “E:\Java\jdk1.8.0_191\bin\java” -XX:+PrintFlagsFin...
2020-04-22 21:21:29
258
原创 Gson
这是我使用的Gson包版本下面是官方介绍GsonGson is a Java library that can be used to convert Java Objects into their JSON representation. It can also be used to convert a JSON string to an equivalent Java object. ...
2020-04-22 13:55:05
2724
原创 2020度小满金融春招笔试
/** * @description: 传送门 * 时间限制:C/C++语言 1000MS;其他语言 3000MS * 内存限制:C/C++语言 65536KB;其他语言 589824KB * 题目描述: * 西西所在的国家有N座城市,每座城市都有一道传送门,城市 i 的传送门通往城市 a[i]。当西西位于城市 i 时,每次他可以执行以下三种操作中的一种: * * 花费 A 的费...
2020-04-20 17:30:28
687
原创 2020京东春招笔试题目
/** * 制造纸箱 * 时间限制:C/C++语言 1000MS;其他语言 3000MS * 内存限制:C/C++语言 65536KB;其他语言 589824KB * 题目描述: * 一个长方体纸箱由六个面构成。 * * 现在给出六块纸板的长和宽,请你判断能否用这六块纸板构成一个长方体纸箱。 * * 输入 * 第一行包含一个整数T,表示测试数据组数。 * * 1 <=...
2020-04-20 17:29:28
1106
1
转载 JVM学习笔记之一
1_介绍01_什么是JVM定义:java virtual meachine -java运行时环境(java二进制字节码的运行环境)。好处:一次编写到处运行自动内存管理,垃圾回收数组下标越界检查多态比较:02_学习JVM有什么用?面试理解底层原理中高级程序员必备技能03_常见的JVM04_学习路线2_内存结构01_程序计数器(线程私有)定义: Progr...
2020-04-18 12:14:56
502
原创 pring MVC 的MultipartFile转File
今天项目要求后端读取csv文件进行处理,这里就记录一下首先我们知道mvc接受的文件是MultipartFile fileBufferedReader reader = new BufferedReader(new InputStreamReader(file.getInputStream())); reader.readLine();//读一行标题 String line = ...
2020-04-16 17:40:38
159
原创 服务器出现No space left on device
今天重新启动了以前的web项目,上传一个文件,却出现了一下错误,现在来记录一下{"timestamp":"2020-04-16 09:15:07","status":500,"error":"Internal Server Error","message":"Failed to parse multipart servlet request; nested exception is jav...
2020-04-16 09:49:12
2016
原创 JVM调试、查看工具
jpsjmap -heapjconsoletop 跟 jstact合用jvisualvmjavap -v Main2.class(反编译)
2020-04-14 23:49:51
138
原创 mysql explain 各个字段的含义
1)、id列数字越大越先执行,如果说数字一样大,那么就从上往下依次执行,id列为null的就表是这是一个结果集,不需要使用它来进行查询。2)、select_type列常见的有:A:simple:表示不需要union操作或者不包含子查询的简单select查询。有连接查询时,外层的查询为simple,且只有一个B:primary:一个需要union操作或者含有子查询的select,位于最外层的单...
2020-04-13 21:08:12
676
原创 为什么mysql的索引是最最左前缀?
为什么mysql的索引是最最左前缀?(基于innodb)创建数据表(为了演示)DROP TABLE IF EXISTS `table`;CREATE TABLE `table` ( `a` int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键', `b` int(11) NULL DEFAULT NULL COMMENT '字段b...
2020-04-13 21:06:54
1995
1
转载 MySQL的索引
上集回顾转自上集我们详细唠叨了InnoDB数据页的7个组成部分,知道了各个数据页可以组成一个双向链表,而每个数据页中的记录又可以组成一个单向链表,每个数据页都会为存储在它里边儿的记录生成一个页目录,在通过主键查找某条记录的时候可以在页目录中使用二分法快速定位到对应的槽,然后再遍历该槽对应分组中的记录即可快速找到指定的记录。页和记录的关系的示意图如下:没有索引的查找本集的主题是索引,在正式...
2020-04-11 20:35:43
203
转载 mysql-InnoDB记录存储结构
准备工作转自到现在为止,MySQL对于我们来说还是一个黑盒,我们只负责使用客户端发送请求并等待服务器返回结果,表中的数据到底存到了哪里?以什么格式存放的?MySQL是以什么方式来访问的这些数据?这些问题我们统统不知道,对于未知领域的探索向来就是社会主义核心价值观中的一部分,作为新一代社会主义接班人,不把它们搞懂怎么支援祖国建设呢?我们前边唠叨请求处理过程的时候提到过,MySQL服务器上负责对...
2020-04-11 20:25:37
293
转载 InnoDB数据页结构
数据页结构的快速浏览页的本质就是一块16KB大小的存储空间,InnoDB为了不同的目的而把页分为不同的类型,其中用于存放记录的页也称为数据页,我们先看看这个用于存放记录的页长什么样。数据页代表的这块16KB大小的存储空间可以被划分为多个部分,不同部分有不同的功能,各个部分如图所示:从图中可以看出,一个InnoDB数据页的存储空间被划分成了7个部分,每个部分又可以被划分为若干小部分。下边我们用...
2020-04-11 18:53:37
343
原创 笔试题
linux部分如果线上某台虚机CPU Load过高,该如何快速排查原因?只介绍思路和涉及的Linux命令即可 。造成cpu load过高的原因: Full gc次数的增大、代码中存在Bug(例如死循环、正则的不恰当使用等)都有可能造成cpu load 增高。1. jps -v:查看java进程号2. top -Hp [java进程号]:查看当前进程下最耗费CPU的线程3. print...
2020-04-05 11:18:30
437
转载 HashMap
转自Java为数据结构中的映射定义了一个接口java.util.Map,此接口主要有四个常用的实现类,分别是HashMap、Hashtable、LinkedHashMap和TreeMap,类继承关系如下图所示:下面针对各个实现类的特点做一些说明:HashMap:它根据键的hashCode值存储数据,大多数情况下可以直接定位到它的值,因而具有很快的访问速度,但遍历顺序却是不确定的。 Has...
2020-04-02 22:50:32
136
原创 两台Linux系统之间传输文件 scp
复制远程文件scp -r 远程主机用户名@远程主机:远程文件 本地文件例如: scp -r root@192.168.216.142:/usr/local/redis-5.0.8.tar.gz /usr/local/re复制本地到远程文件scp 本地文件 -r 远程主机用户名@远程主机:远程文件例如: scp /usr/local/redis-5.0.8.tar.gz -r root@...
2020-03-27 13:41:34
196
原创 禁止延迟开启偏向锁jvm参数
jdk6默认开启偏向锁,但是是输入延时开启,也就是说,程序刚启动创建的对象是不会开启偏向锁的,几秒后后创建的对象才会开启偏向锁的-XX:BiasedLockingStartupDelay=0验证引入依赖包<!--可以查看mark word--> <!-- https://mvnrepository.com/artifact/org.openjdk.j...
2020-03-14 20:51:13
3474
15
原创 centos7 安装python3.7.3
centos7 安装python3.7.3安装编译 Python3的相关包yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make libffi-devel安装pip (已经安装wegt的不用这一步)#运行这个命令添加ep...
2020-03-08 10:36:20
209
原创 小程序回顾之验证码的显示
如果你想做一个带有验证码的登陆系统然后存储cookie,来进行爬取数据操作(例如登陆某教务系统做一个课表小程序),这里展示验证码的前后端交互后端代码获取验证码(使用流的方式) @GetMapping("/getVerifyImg") public void getVerifyImg3(HttpServletResponse response2, String userId) {...
2020-02-27 21:14:12
445
转载 逻辑地址空间、页表与如何确定页表项大小
32位逻辑地址空间,一页4KB,按字节编制,页式内存管理中如何确定页表项大小因为是32位逻辑地址,故寻址空间为232B,而一页大小为4KB,故需要232/4B=2^20页=1M页。假设在内存中地址:而页表则是对这些页表的记录。因一页大小是4KB,占据了逻辑地址的低12位,高20即为页号。1M页 页号要20位,按字节寻址,⌈20/8⌉=3B,故页号一项至少3B(也即页表项大小,这里为...
2020-02-27 18:30:44
8253
6
转载 数学 - 基本初等函数导数公式及求导法则
数学 - 基本初等函数导数公式及求导法则三角函数相关运算指数和对数函数相关运算对数函数的强大之处在于可以变积为和,变商为差,化幂为系数。在求幂指函数或某些复杂表达式的函数的导数时,将原来的函数转化为对数函数后可方便求导。隐函数求导“如果方程F(x,y)=0能确定y是x的函数,那么称这种方式表示的函数是隐函数。一般情况下无法写成y=f(x)这种格式,任何的显函数都可以转化为...
2020-02-23 18:04:24
3398
原创 线程池不允许使用Executors去创建,而是通过ThreadPoolExecutor的方式
线程池不允许使用Executors去创建,而是通过ThreadPoolExecutor的方式,这样的处理方式让写的同学更加明确线程池的运行规则,规避资源耗尽的风险。 说明:Executors返回的线程池对象的弊端如下: 1)FixedThreadPool和SingleThreadPool: 允许的请求队列长度为Integer.MAX_VALUE...
2020-02-18 11:21:15
473
原创 centos7 redis开机启动配置
centos7 redis开机启动配置centos的启动程序放在/etc/init.d/目录下一、简单说明/etc/init.d 是 /etc/rc.d/init.d 的软链接(soft link)。可以通过 ll 命令查看。ls -ld /etc/init.dlrwxrwxrwx. 1 root root 11 Aug 30 2015 /etc/init.d -> rc.d/in...
2020-02-13 19:41:24
398
原创 springboot webScoket
依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-websocket</artifactId> </dependency>配置类 W...
2020-02-08 19:53:20
177
原创 安装可视化elasticsearch kibana插件
下载curl -L -O https://artifacts.elastic.co/downloads/kibana/kibana-7.3.0-linux-x86_64.tar.gz解压tar -zxvf kibana-7.3.0-linux-x86_64.tar.gz启动(注意,不要使用root启动,使用其他用户启动,并且要赋予用户权限 chown -R username /usr/...
2020-02-05 15:30:17
132
原创 Centos 安装 Elasticsearch 7.5.0 以及遇到的问题
安装jdk(这个就略过)安装Elasticsearch 7.3.0下载(在/user/local/elasticsearch下面)curl -L -O https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.3.0-linux-x86_64.tar.gz解压tar -xzvf elasticsearch-...
2020-02-05 13:51:55
504
转载 实现0.5px border
<view style='width: 98rpx; height: 40rpx; color: white; font-size: 18rpx; display: flex; align-items: center; justify-content: center; box-sizing: border-box; position: relative;'> 活动说明 &...
2020-01-29 16:19:49
556
原创 标签中的英文过度但是不换行问题
word-break:break-all;只对英文起作用,以字母作为换行依据word-wrap:break-word; 只对英文起作用,以单词作为换行依据white-space:pre-wrap; 只对中文起作用,强制换行white-space:nowrap; 强制不换行,都起作用white-space:nowrap; overflow:hidden; text-overflow:ell...
2020-01-29 13:16:40
332
原创 CentOS7:ifconfig command not found解决和netstat -an
没有 ifconfig 和netstat -an 的话安装 net-tools packageyum install net-tools
2020-01-29 09:17:42
231
转载 :after等伪元素无效
♦ 伪元素如果没有设置“content”属性,伪元素是无用的#example:before {2. content: “”;3. display: block;4. width: 100px;5. height: 100px;6.}♦ 你也许注意到,你也可以用两个冒号(::before 和 ::after) 写伪元素,这个我以前讨论过的。简短的解释是,对于这两种语法没有什么不...
2020-01-26 11:11:59
1841
转载 微信小程序之开发的小技巧
微信小程序之开发的小技巧转自开发中总结的一些小技巧:1.公共文件app文件可以放一些经常用到的方法 列如网络请求和判断网络的封装在文件中如果想使用app.js中的方法直接var app = getApp() 直接就可以调用了2.position相关的设置想把文字放在图片上边 position: relative;如果想把控件放在页面的最下边position:fixed;3.实现渐...
2020-01-23 15:19:22
356
1
原创 CentOS 7 yum 安装 MySQL
添加 yum 源先下载源安装包, 输入 wget http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm接下来安装,输入 yum localinstall mysql57-community-release-el7-11.noarch.rpm 。执行之后来看下是否安装成功yum 安装并启动服务好了,接下...
2020-01-23 09:11:07
184
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅