JVM虚拟机及线程池学习笔记

线程池 corePoolSize 当前线程数=corePoolSize 阻塞,阻塞队列满时创建新线程,直至macPoolSize,再来任务时,执行reject()。 初始化线程池 newFixedThreadPool() 初始化指定大小,即使没有可执行任务也不会释放线程。阻塞队列:Link...

2019-03-09 11:32:40

阅读数 22

评论数 0

cookie和session的区别

Session 是在服务端保存的一个数据结构,用来跟踪用户的状态,这个数据可以保存在集群、数据库、文件中; Cookie 是客户端保存用户信息的一种机制,用来记录用户的一些信息,也是实现 Session 的一种方式。...

2019-03-09 11:32:22

阅读数 13

评论数 0

Java基础 数组、基本类型转换

基本类型转换 基本类型: 浮点型(float、double)、整形(byte、short、int、long)、字符类型(char) 引用类型: 类类型、接口类型、数组类型 从低位到高位排列: byte > short &am...

2019-03-09 11:30:31

阅读数 12

评论数 0

Vector、ArrayList和LinkedList

使用场景: (1)如果应用程序对各个索引位置的元素进行大量的存取或删除操作,ArrayList对象要远优于LinkedList对象; ( 2 ) 如果应用程序主要是对列表进行循环,并且循环时候进行插入或者删除操作,LinkedList对象要远优于ArrayList对象;...

2019-03-09 11:30:09

阅读数 9

评论数 0

C++算法题——洛谷P1309瑞士轮(BUG 待更)

问题:时间复杂度过高。 解决方案:设置A、B两个数组分别存储赢与输的两组,组内顺序不变,最后用merge合并。 待改,待更,欢迎交流。 #include #include using namespace std; int main(){ int N,R,Q; int numQ,keyQ; in...

2018-11-11 10:00:49

阅读数 77

评论数 0

恒生电子笔试题数据库及算法整理记录

一、数据库 AccoInfo 账户编号 用户名 余额 id name balance AccoCurrent_201811 账户编号 流水金额 时间 id amount time Acco...

2018-10-19 11:01:10

阅读数 1339

评论数 0

电商网站横向越权与纵向越权问题解决

横向越权 指攻击者尝试访问与他拥有相同权限的用户的资源,即同等级别的资源访问。如,一个用户试图访问其他用户的个人资料、尝试篡改其他用户的密码。 解决方法: 添加有有效期的token值标识,操作时比对。 解决案例: Q:编码时将重置密码问题与重置密码分为两个接口编写,重置密码传入值为用户名及...

2018-10-17 11:09:48

阅读数 339

评论数 0

Mybatis三剑客——Mybatis Generator、Mybatis plugin、Mybatis

一、Mybatis Generator 作用: 根据数据库自动生成pojo、dao(接口,供service调用)及对应xml文件。 配置: 1.倒入jar包。Maven托管: <plugin> ...

2018-10-12 16:29:05

阅读数 615

评论数 0

如何判断链表是否相交、判断链表有环、判断相交链表第一个交点、判断环形链表入口节点

判断相交: 设置两个栈,分别将两个链表从第一个节点开始入栈,然后从栈顶开始比较出栈,如果第一个节点相等则相交,交点为最后一个相同节点。 判断有环: 方法一:使用HashSet遍历链表,并存入节点ID,每遍历到一个新节点就将其ID与集合中已有ID进行比较,相同则有环,不同则存入集合继续遍历直至节...

2018-09-13 09:45:00

阅读数 81

评论数 0

Hibernate与Mybatis的区别、Hibernate一级缓存与二级缓存之间的区别

Hibernate对数据库提供了较为完整的封装,不需要手写SQL语句,自动生成、自动执行,持久层框架,开源的对象关系映射,对JDBC的进一步封装。 Mybatis着力点在于JAVA对象与SQL之间的映射关系,需要编写sql语句,半自动,需要注意的细节更多,但是更有益于sql的优化,移植性弱,缓存...

2018-09-12 18:03:05

阅读数 1311

评论数 0

微信小程序编写笔记(一)等待更新中……

一、编写启动页 text组件特性 只有text包围的文本才能在真机长按选中 text嵌套可设置两种颜色 支持转义字符解析 eg.\n 背景色填充 为了使背景色填充满,不可以直接在组件处使用100%,原因是只能覆盖到元素所及之处,不能覆盖整个屏幕; 不可以为组件使用固定高度,当屏...

2018-09-11 21:09:43

阅读数 145

评论数 0

TreeSet的底层实现

使用场景: (1)如果应用程序对各个索引位置的元素进行大量的存取或删除操作,ArrayList对象要远优于LinkedList对象; ( 2 ) 如果应用程序主要是对列表进行循环,并且循环时候进行插入或者删除操作,LinkedList对象要远优于ArrayList对象;...

2018-09-11 21:08:24

阅读数 54

评论数 0

线程、线程池、引用及volatile与synchronized的区别

sychronizated 底层实现 自旋锁,偏向锁,轻量级锁,重量级锁的介绍以及升级过程 volatile 底层实现 CAS乐观锁的原理 ASQ 的原理 CountDownLanch 和 CyclicBarrier 的区别和用法 线程池的使用和相关参数 线程池的拒绝策略 Fi...

2018-09-11 20:00:26

阅读数 70

评论数 0

HsahMap、ConcurrentHashMap

个人学习总结整理 资料来源:https://www.itcodemonkey.com/article/1266.html via:程序员小灰(VX公众号) HashMap - 实现原理及冲突解决 HashMap是一个用于存储Key-Value键值对的集合,每一个键值对也叫做Entry。这...

2018-09-10 18:05:25

阅读数 54

评论数 0

JVM虚拟机

内存模型 线程私有: 程序计数器 记录正在执行的虚拟机字节码指令的地址,本地方法则为空; 虚拟机栈 Java方法在执行时会创建一个栈帧用于存储局部变量表、操作数栈、常量池引用等信息,调用至执行完成的过程,对应着一个栈帧在 Java 虚拟机栈中入栈和出栈的过程; 本地...

2018-09-07 22:26:07

阅读数 32

评论数 0

String、StringBuffer、StringBulider的区别

1. String是不可变的字符串常量,StringBuffer和StringBulider是字符串变量; 2. String和StringBuffer是线程安全的,StringBulider是线程不安全的。 所有的不可变类都是线程安全的 StringBuffer中很多方法可以带有s...

2018-09-07 08:27:37

阅读数 43

评论数 0

序列化和反序列化的方法及底层实现

个人学习摘抄与反思总结 via:徐刘根 https://blog.csdn.net/xlgen157387/article/details/79840134 序列化和反序列化的方法 实现了Serializable 或 Externalizable 接口才能被序列化,否则将会抛出异常。 若...

2018-09-06 11:08:32

阅读数 195

评论数 0

volatile实现原理

via:yzwall技术笔记 https://www.cnblogs.com/yzwall/p/6661528.html volatile变量写,汇编指令会多出Lock前缀,Lock前缀在多核处理器下的作用: 将当前处理器缓存行的数据写回主存; 令其他CPU里缓存该内存地址的数据无效; ...

2018-09-06 08:36:50

阅读数 64

评论数 1

Java中的“堆”,"栈","堆栈","队列"及其区别(笔记整理)

“堆”,”栈”,”堆栈”,”队列”详解及其区别 ** 堆 ** ①堆通常是一个可以被看做一棵树的数组对象。堆总是满足下列性质: 堆中某个节点的值总是不大于或不小于其父节点的值; 堆总是一棵完全二叉树。 将根节点最大的堆叫做最大堆或大根堆,根节点最小的堆叫做最小堆或小根堆。...

2018-09-04 08:54:12

阅读数 914

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭