摘要:
在客户端生成公钥: 1 ssh-keygen –t rsa生成的公钥默认位置在~/.ssh/目录把公钥上传到服务器端: 1 scp id_rsa.pub root@ip地址:文件保存路径 2 cat id_rsa.pub >> /root/.ssh/authorized_keys 追加到文件中 3 chmod 600 /root/.ssh/authorized_keys 为了安全把文件修... 阅读全文
摘要:
要讨论这些常用的默认初始容量和扩容的原因是:当底层实现涉及到扩容时,容器或重新分配一段更大的连续内存(如果是离散分配则不需要重新分配,离散分配都是插入新元素时动态分配内存),要将容器原来的数据全部复制到新的内存上,这无疑使效率大大降低。加载因子的系数小于等于1,意指 即当 元素个数 超过 容量长度*加载因子的系数 时,进行扩容。另外,扩容也是有默认的倍数的,不同的容器扩容情况不同。List 元素... 阅读全文
摘要:
基本的错误信息如下: 1 2018-03-05 at 15:12:03 CST ERROR org.apache.juli.logging.DirectJDKLog 181 log - Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request process... 阅读全文
摘要:
Java 动态代理机制的出现,使得 Java 开发人员不用手工编写代理类,只要简单地指定一组接口及委托类对象,便能动态地获得代理类。代理类会负责将所有的方法调用分派到委托对象上反射执行,在分派执行的过程中,开发人员还可以按需调整委托类对象及其功能,这是一套非常灵活有弹性的代理框架。通过阅读本文,读者将会对 Java 动态代理机制有更加深入的理解。本文首先从 Java 动态代理的运行机制和特点出发,... 阅读全文
摘要:
mysql索引的使用 阅读全文
摘要:
在Java中经常会涉及到对象数组的排序问题,那么就涉及到对象之间的比较问题。通常对象之间的比较可以从两个方面去看:第一个方面:对象的地址是否一样,也就是是否引用自同一个对象。这种方式可以直接使用“==“来完成。第二个方面:以对象的某一个属性的角度去比较。对于JDK8而言,有三种实现对象比较的方法:1、覆写Object类的equals()方法;2、继承Comparable接口,并实现compareT... 阅读全文
摘要:
整体来看List,Set,Map都是实现了Collection接口的接口。重复性:List允许存在重复的元素,也就是说List中可以在不影响现有元素的值及其索引的同时插入新的重复元素。Set不允许存在重复的元素,Set集合都不允许插入重复元素。Map是一种以键值对形式存储元素的映射类型集合,对Map而言key(键)是唯一的,value(值)是可重复的。空值性:List允许任意数量的空值。Set最多... 阅读全文
摘要:
进程和线程的区别1.定义进程:具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位.线程:进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),但是它可与同属一个进程的其他的线程共享进程所拥有的全部资源.2.关系一个线程可以创建... 阅读全文
摘要:
工作中很久没有接触动态代理,之前的学习也有些模糊,导致有些遗忘,这里记录下个人对动态代理的理解,如有读者发现问题多多指正吧。就java而言对于动态代理的支持多是以接口实现,其实现主要是通过java.lang.reflect.Proxy类,java.lang.reflect.InvocationHandler接口。Proxy类主要用于获取动态代理对象,InvocationHandler接口用来约束调... 阅读全文