摘要:
准备:
一个谷歌二步验证APP, 我用的是ios 身份宝
资料:
1.Google Authenticator 原理及Java实现 //主要参考
https://blog.csdn.net/lizhengjava/article/details/76947962#
2.谷歌验证 (Goog... 阅读原文
2018-08-28 08:06:02 阅读(977) 评论(0)
摘要:
volatile关键字修饰的共享变量主要有两个特点:1.保证了不同线程访问的内存可见性 2.禁止重排序
在说内存可见性和有序性之前,我们有必要看一下Java的内存模型(注意和JVM内存模型的区分)
为什么要有java内存模型?
首先我们知道内存访问和CPU指令在执行速度上相差非常大,完全不是一个数量级,为了使得... 阅读原文
2018-08-28 07:59:04 阅读(1080) 评论(0)
摘要:
一、简介
1、对于不需要任何准确计算精度的数字可以直接使用浮点型,但是如果需要精确计算的结果,则必须使用定点型(BigDecimal类)
浮点型:float,double
定点型:BigDecimal
2、BigDecimal是Java中用来表示任意精确浮点数运算的类,在BigDecimal中,使用unscaledV... 阅读原文
2018-08-28 06:00:14 阅读(1483) 评论(0)
摘要:
■ 并发原理
单核系统:线程交替执行,由于交替又快又多,给人一种同时执行的感觉多核系统:不仅可以交替执行线程,而且可以重叠执行线程补充: 本章指的并发主要指的是线程间的并发
■ 常见的并发机制
■ 不同系统的并发机制
UNIX:管道、消息、共享内存、信号量、信号
Linux内核:原子操作、自旋锁、信号量、... 阅读原文
2018-08-28 00:27:05 阅读(1198) 评论(0)
摘要:
什么是进程和什么是线程?
进程:操作系统进行资源分配的最小单位。其中资源包括:CPU、内存空间、磁盘IO等。
同一进程中的多条线程共享该进程中的全部系统资源,而进程与进程之间相互独立。
线程:CPU调度的最小单位,必须依赖进程而存在。
进程和线程的区别:
定义:进程是程序运行的一个实体的运行... 阅读原文
2018-08-27 23:41:02 阅读(1152) 评论(0)
摘要:
前言概述
本文旨在讲解class文件的整体结构信息,阅读本文后应该可以完整的了解class文件的格式以及各个部分的逻辑组成含义
class文件包含了java虚拟机指令集 和 符号表 以及若干其他辅助信息.
class文件是一组以8位字节为基础单位的二进制字节流
各个数据项... 阅读原文
2018-08-27 22:52:17 阅读(969) 评论(0)
摘要:
今日内容介绍
1、final 关键字
2、static 关键字
3、匿名对象
4、内部类
5、包的声明与访问
6、访问修饰符
7、代码块
01final关键字概念
A: 概述
继承的出现提高了代码的复用性,并方便开发。但随之也有问题,有些类在描述完之后,不想被继承,
或者有些类中的部分方法功能是固定的,... 阅读原文
2018-08-27 22:38:05 阅读(2235) 评论(0)
摘要:
一.概述
相比起C和C++的自己回收内存,JAVA要方便得多,因为JVM会为我们自动分配内存以及回收内存。
在之前的JVM 之内存管理 中,我们介绍了JVM内存管理的几个区域,其中程序计数器以及虚拟机栈是线程私有的,随线程而灭,故而它是不用考虑垃圾回收的,因为线程结束其内存空间即释放。
而JAVA堆和方法区则不一样,... 阅读原文
2018-08-27 22:02:03 阅读(1051) 评论(0)
摘要:
前面给大家介绍了IDEA的安装和基本配置,睡觉前Alan再给大家分享一下使用IDEA创建Java Web并部署访问。
打开IDEA,File>New>Project,进入Java Enterprise创建一个Web Application项目,选择使用的JDK
点击Next
修改一下项目的名称点击... 阅读原文
2018-08-27 20:21:18 阅读(2423) 评论(0)
摘要:
一.构建工程
1.引入依赖
<!--SpringBoot2.0以上版本需引入该依赖-->
<dependency>
<groupId>org.springframework.cloud</groupId>
... 阅读原文
2018-08-27 18:26:02 阅读(839) 评论(0)