![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
csdn.user
这个作者很懒,什么都没留下…
展开
-
jdk8的stream流使用
1.集合过滤Lists.newArrayList(1,2,3).stream().filter(k -> k >1) ;2.遍历Lists.newArrayList(1,2,3).stream().forEach(System.out::println);3.映射Lists.newArrayList(1,2,3).stream().map(k -> k + "hah...原创 2019-07-16 17:08:59 · 182 阅读 · 0 评论 -
java 反射
学习反射之前,我们要了解下Class类是什么。1、Class类在Java中,每个class都有一个相应的Class对象。也就是说,当我们编写一个类,编译完成后,在生成的.class文件中,就会产生一个Class对象,用于表示这个类的类型信息。如何获取Class类?1、Class.forName(“类路径”)2、对象.getClass()3、类.class2、反射JAVA反射机制是...原创 2019-08-13 10:50:31 · 142 阅读 · 0 评论 -
httpclient连接池
在后台发送http请求时,每次都要经过三次握手的过程,这是一个比较耗时的操作且稳定性不好,经常连接失败。所以采用httpclient连接池,发起请求时直接从池里面获取连接,不用每次发起请求都经过三次握手,大大的提高的并发的效率。1、maven依赖<dependency> <groupId>org.apache.httpcomponents</groupId...原创 2019-08-07 14:53:45 · 147 阅读 · 0 评论 -
线程的sleep和wait的区别
1、线程方法sleepsleep就是正在执行的线程主动让出cpu,cpu去执行其他线程,在sleep指定的时间过去后,cpu才会回到这个线程继续往下执行,如果当前线程进入了同步锁,sleep方法并不会释放锁,即使当前线程使用sleep方法让出了cpu,但其他被同步锁挡住了的线程也无法得到执行。2、Object方法waitwait是指一个已经进入了同步锁的线程内,让自己暂时让出同步锁,以便其他...原创 2019-08-07 14:13:21 · 223 阅读 · 0 评论 -
java类加载机制
当我们的Java代码编译完成后,会生成对应的 class 文件。接着我们运行java Demo命令的时候,我们其实是启动了JVM 虚拟机执行 class 字节码文件的内容。JVM 虚拟机执行 class 字节码的过程可以分为七个阶段:加载、验证、准备、解析、初始化、使用、卸载。1、加载加载阶段是类加载过程的第一个阶段。在这个阶段,JVM 的主要目的是将字节码从各个位置(网络、磁盘等)转化为...原创 2019-07-23 10:55:56 · 75 阅读 · 0 评论 -
synchronized与Lock的区别
1、首先synchronized是java内置关键字,在jvm层面,Lock是个java类。lock的一些常用方法:lock():获取锁,如果锁被暂用则一直等待unlock():释放锁tryLock(): 注意返回类型是boolean,如果获取锁的时候锁被占用就返回false,否则返回truetryLock(long time, TimeUnit unit):比起tryLock()...原创 2019-07-30 17:50:56 · 145 阅读 · 0 评论 -
servlet容器、web容器、spring容器、springmvc容器
容器介绍web容器中有servlet容器,spring项目部署后存在spring容器和springmvc容器。其中spring控制service层和dao层的bean对象。springmvc容器控制controller层bean对象。servlet容器控制servlet对象。启动流程顺序项目启动时,首先 servlet初始化,初始化过程中通过web.xml中spring的配置加载spr...原创 2019-07-30 16:30:01 · 634 阅读 · 0 评论 -
过滤器Filter和拦截器HandlerInterceptor
1、过滤器依赖于servlet容器。在实现上基于函数回调,可以对几乎所有请求进行过滤,但是缺点是一个过滤器实例只能在容器初始化时调用一次。使用过滤器的目的是用来做一些过滤操作,获取我们想要获取的数据。比如:在过滤器中修改字符编码;在过滤器中修改HttpServletRequest的一些参数,包括:过滤低俗文字、危险字符等。Java中的Filter并不是一个标准的Servlet ,它不能处理...原创 2019-07-30 15:37:22 · 2265 阅读 · 0 评论 -
线程问题
1、线程和进程线程,程序执行流的最小执行单位,是行程中的实际运作单位,经常容易和进程这个概念混淆。那么,线程和进程究竟有什么区别呢?首先,进程是一个动态的过程,是一个活动的实体。简单来说,一个应用程序的运行就可以被看做是一个进程。而线程,是运行中的实际的任务执行者。可以说,进程中包含了多个可以同时运行的线程。2、线程生命周期第一步,是用new Thread()的方法新建一个线程,在线程...原创 2019-07-30 14:28:47 · 186 阅读 · 0 评论 -
跨域问题
1、浏览器同源策略那浏览器为什么要有同源策略呢? 当然是为了安全。没有同源策略限制的浏览器环境是非常危险的(即使有了同源策略也不是百分百安全)。所谓的“同源”指的是“三个相同”:协议相同。不能一个是 http 协议,一个是 https域名相同端口相同2、跨域简单来说跨域问题是因为浏览器的同源策略导致的。跨越的常见解决方法1,JSONP:利用<script>元素的...原创 2019-08-22 15:43:04 · 156 阅读 · 0 评论