- 博客(15)
- 收藏
- 关注
转载 几种常见的加密方式
现代密码学最重要的原则:柯克霍夫原则,即数据的安全基于密钥而不是算法的保密。1.BASE64网络上最常见的用于传输8位字节代码的编码方式之一,可在HTTP环境下传递较长的标识信息。一般用于URL的处理,或者说任何你不想让普通人一眼就知道是啥的东西均可以使用Base64编码处理后在发布在网络上。特点:具有不可读性,即所编码的数据不会被直接看到2.MD5即Message-Digest Algorithm5(信息-摘要算法5),用于确保信息传输完整一致信息摘要:通过一个算法是固定数据产生一个特定的信息
2020-10-09 15:26:03 5937 1
原创 类加载的过程以及双亲委派机制
1.JVM的类加载器机制(1)全盘负责:当一个类加载器负责加载某个Class时,该Class所依赖和引用其他Class也将由该类加载器负责载入,除非显示使用另一个类加载器载入(2)双亲委派:先让父类加载器视图加载该Class,只有在父类加载器无法加载该类时才尝试从自己的类路径中加载该类(3)缓存机制:会保证所有加载过的Class都会被缓存,当程序中需要某个Class时,类加载器先从缓存曲中搜寻该Class,只有当缓存区不存在该Class对象时,系统才会读取该类对应的二进制数据,并将其转换为Class对
2020-10-08 14:12:41 300
原创 HashMap源码复习(JDK1.6)
1.概述HashMap是基于哈希表的Map接口的实现(1)存储的元素允许NULL值和NULL键(2)若存储的键重复,则会覆盖原来的值,值允许重复(3)非线程安全(4)无序2.底层实现数组和链表的结合体static class Entry<K,V> implements Map.Entry<K,V>{final K key;V value;Enetry<K,V> next;final int hash;}3.构造方法HashMap():默认初始
2020-09-10 22:42:30 205
原创 LinkedList源码复习(JDK1.6)
1.概述List的链表实现,是一种双向循环链表(1)存储的元素允许为NULL(2)存储的元素允许重复(3)非线程安全(4)有序2.底层实现LinkedList的的一个内部类private static class Entry{E element;Entry next;Entry previous;}3.构造方法提供了两个构造方法public LinkedList():将header结点的前一节点和后一节点都设置为自身public LinkedList(Collection&
2020-09-10 21:24:59 189
原创 ArrayList源码复习(JDK1.6)
1.概述List接口的可变数组的实现(1)存储的元素允许为NULL(2)存储的元素允许重复(3)非线程安全(4)有序2.底层实现private transient Object[] elementData;3.构造方法(1)默认初始容量为10的空列表(2)一个指定初始容量的空列表(3)一个包含指定collection元素的列表4.元素的增删改查(1)增加添加之前均要进行扩容操作public boolean add(E e):将指定的元素添加到此列表的尾部public void
2020-09-10 20:16:37 153
原创 MYSQL学习笔记
最流行的关系型数据管理系统1.基本概念数据库:按照数据结构来组织、存储和管理数据的仓库关系型数据库:建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据关系型数据库管理系统的特点:(1)数据以表格的形式出现(2)每行为各种记录名称(3)每列为记录名称所对应的数据域(4)许多的行和列组成一张表单(5)若干的表单组成database所谓的“关系型”可以理解为“表格”,即一个关系型数据库由一个或多个表格组成2.管理MYSQL的命令(1)使用某个指定数据库use
2020-08-11 14:45:38 197
原创 Hibernate学习
1.什么是HibernateHibernate是一个开放源代码的ORM矿建,对JDBC进行了轻量级的对象封装,使Java开发人员可以使用面向对象的编程思想类操作数据库2.什么是ORMObject Relation Mapping对象关系映射:随着面向对象的软件开发方法发展而产生的。用来把对象模型表示对象映射到基于SQL的关系模型数据库结构中去。简单地说就是将程序中的实体和数据库表建立对应关系3.Hibernate SessionFactorySessionFactory是工厂类,是生成Sessio
2020-08-10 17:21:55 174
原创 MySQL索引学习
1.什么是索引索引是一种特殊的文件,包含对数据表里所有记录的引用指针索引是一种数据机构。数据库索引,是数据库管理系统中一个排序的数据结构,以协助快速查询、更新数据库表中数据。索引的实现通常是使用B树及B+树索引相当于目录,为了方便查找书中的内容,通过对内容建立索引形成目录。是一个文件,需要占据一定的物理空间2.索引的优缺点优点:可以大大加快数据的检索速度通过使用索引,可以在查询的过程中,使用优化隐藏器,提高系统的性能缺点:时间方面:创建索引和维护索引需要耗费时间。当对表中的数据进行增
2020-08-07 17:52:34 228
原创 Spring MVC学习
1.概念MVC是一个架构(设计模式),它强制性使应用程序的输入、处理和输出分开。将一个应用程序分为3个部分:Model、View、ControllerModel:负责完成业务逻辑,由JavaBean构成,在MVC的三个部件中,模型拥有最多的处理任务。由于应用于模型的代码只需要写一次就可以被多个视图重用,因此减少了代码的重复性View:负责与用户交互的界面,一般由HTML,CSS元素组成的界面,在视图层没有真正的处理发生,只负责数据输出,并允许用户操纵的方式Controller:负责接受请求 -&g
2020-08-06 16:57:26 234 1
原创 Spring学习
1.概念Spring是一个开放源代码的设计层面框架,解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用Spring提供了一站式解决方案:(1)Spring Core:spring的核心功能(2)Spring Web:对web模块的支持(3)Spring DAO:对jdbc操作的支持(4)Spring AOP:切面编程2.优点方便解耦,简化开发AOP编程的支持声明式事务的支持方便程序的测试方便集成各种优秀框架降低Java EE API的使用难度
2020-08-06 16:00:06 120
原创 volatile学习
1.JMMJMM:Java内存模型,是Java虚拟机规范中所定义的一种内存模型,描述了Java程序中共各种变量(线程共享变量)的访问规则,以及在JVM中将变量存储到内存和从内存中读取变量这样的底层细节2.JMM的规定所有的共享变量(实例变量和类变量)都存储于主内存,不包含局部变量,局部变量是线程私有的,不存在竞争每一个线程存在自己的工作内存,线程的工作内存保留了被线程使用的变量的工作副本不同线程之间不能直接访问对方工作内存中的变量,线程间变量的值传递通过主内存中转来完成3.可见性问题解决方
2020-08-04 21:27:46 180
原创 ThreadLocal学习
1.作用主要做数据隔离,填充的数据只属于当前线程,变量的数据对别的线程而言是相对隔离的,在多线程环境下,如何防止自己的变量被其他线程修改2.使用场景Spring实现事务隔离级别的源码:Spring采用ThreadLocal的方式,来保证单个线程中的数据库操作使用的是同一个数据库连接 . Spring框架里面就是用的ThreadLocal来实现这种隔离,主要在TransactionSynchronizationManager这个类中在Android中,Looper类就是利用了ThreadLoc
2020-08-04 16:12:24 127
原创 Java线程池
1.线程池的作用线程池维护着多个线程,等待着监督管理者分配可并发执行的任务,这避免了在处理短时间任务时创建于销毁线程的代价2.使用Excutors创建线程池的方法Executors.newFixedThreadPool(100); 创建固定大小的线程池Executors.newSingleThreadExecutor(); 创建只有一个线程的线程池Executors.newCachedThreadPool(); 创建一个不限线程数上限的线程池,任何提交的任务都将立即执行对于服务器端需要长期运行
2020-08-04 11:28:24 151
原创 Java反射机制
1.概念Java反射机制是在运行状态中,对于一个任意一个类,都能够这个知道类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个属性和方法,这种动态获取的信息以及动态调用对象的方法的功能称为Java语言的反射机制2.作用可以在运行时加载、使用编译期间完全未知的类让Java语言具有了动态特性,弥补了强类型语言的不足3.使用场景IDEA的自动提示功能:在对象后使用“ . ”可以获得属性和方法4.原理Java源文件在经过编译后会生成一个.class文件,反射机制通过字节码文件找到对应类中
2020-08-04 09:06:28 194
原创 JAVA面经(SE)
一、Java SE1.Java和PHP的区别2.Java中如何支持正则表达式操作3.简单藐视一下正则表达式及其用途4.比较Java和JavaScript5.Java中如何跳出当前多重嵌套循环6.&和&&的区别7.int和Integer区别8.在web应用开发过程中经常遇到输出某种编码的字符,如ISO8859-1等,讲讲如何输出一个某种编码的字符串9.String和StringBuilder区别10.String是最基本的数据类型吗11.讲讲大O符号(big-O
2020-07-31 22:58:12 1784
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人