- 博客(9)
- 资源 (1)
- 收藏
- 关注
原创 Java的数据结构是什么?
collection和mapcollection,包括list和set。list主要有arraylist、linklist和vector。arraylist和vector实现都是数组。linklist它的底层实现是链表。我们主要常用的是Arratlist,它是线程不安全的,然后查询相对于快一些。Linklist是线程安全的,增删相对比较快一些。vector是线程安全的,加了同步锁,增删比arraylist慢一些。set分为hashset和treeset。HashSet中的元素是无序的。集合元
2022-04-07 17:33:41 609
原创 毕业一年半,出来面试遇到的java面试题
1.sql语句中#{}和${}的区别#将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号。KaTeX parse error: Expected 'EOF', got '#' at position 20: …数据直接显示生成在sql中。#̲方式能够很大程度防止sql注入…方式无法防止Sql注入。#{}是预编译处理,${}是字符替换。 在使用 #{}时,MyBatis 会将 SQL 中的 #{}替换成“?”,配合 PreparedStatement 的 set 方法赋值,这样可以有效的防止
2021-03-15 14:58:03 200
原创 【Java8 新特性 】Lambda
一、替代匿名内部类1、//无参数,无返回值public static void test2() {//“->”左边只有一个小括号,表示无参数,右边是Lambda体(就相当于实现了匿名内部类里面的方法了,(即就是一个可用的接口实现类了。))}2、//有一个参数,并且无返回值public static void test3() {//这个e就代表所实现的接口的方法的参数,Consumer consumer = e->System.out.println(“Lambda 表达式方式,”
2021-03-15 14:52:42 255 1
原创 数据库连接池\Redis连接池
数据库连接池的作用与基本原理基本原理:在内部对象池中,维护一定数量的数据库连接,并对外暴露数据库连接的获取和返回方法。如外部使用者可通过getConnection方法获取数据库连接,使用完毕后再通过releaseConnection方法将连接返回,注意此时的连接并没有关闭,而是由连接池管理器回收,并为下一次使用做好准备。2.作用①资源重用由于数据库连接得到重用,避免了频繁创建、释放连接引起的大量性能开销。在减少系统消耗的基础上,增进了系统环境的平稳性(减少内存碎片以级数据库临时进程、线程的数量)
2021-03-15 14:44:40 521
原创 aop五种通知类型
aop五种通知类型//前置通知:在方法执行前通知@Before(value = “”)//环绕通知:可以将要执行的方法(point.proceed())进行包裹执行,可以在前后添加需要执行的操作@Around(value = “”)//后置通知:在方法正常执行完成进行通知,可以访问到方法的返回值的。@AfterReturning(value = “”)//异常通知:在方法出现异常时进行通知,可以访问到异常对象,且可以指定在出现特定异常时在执行通知。@AfterThrowing(value =
2021-03-15 14:20:43 9053 1
原创 Redis缓存血崩,穿透
Redis缓存血崩,穿透缓存雪崩在系统发送大量请求时,缓存宕机了,此时请求全部落数据库,数据库必然扛不住,然后就挂了。这就是缓存雪崩。缓存雪崩的事前事中事后的解决方案如下。事前:redis 高可用,主从+哨兵,redis cluster,避免全盘崩溃。事中:本地 ehcache 缓存 + hystrix 限流&降级,避免 MySQL 被打死。事后:redis 持久化,一旦重启,自动从磁盘上加载数据,快速恢复缓存数据。用户发送一个请求,系统 A 收到请求后,先查本地 ehcache 缓存
2021-03-15 13:39:56 157
原创 关于Session过期和失效
关于Session过期和失效1、session类似于map是键值对的形式存在的。通过session.getAttribute(“name”);获取对应的name参数信息。2、session的过期时间是从session不活动的时候开始计算,如果session一直活动,session就总不会过期,从该Session未被访问,开始计时; 一旦Session被访问,计时清0;3、设置session的失效时间。Session的默认失效时间是30分钟。判断session是否有效1、isRequestedSe
2021-03-15 13:28:01 2762
原创 HttpServletRequest接口学习
HttpServletRequest接口学习1、getAuthType(); 返回证明配置的名字用于保护servlet。2、getContextPath(); 得到当前应用的根目录3、getCookies();返回一个数组,包含所有客户端发送请求的Cookie对象4、getDateHeader();返回指定的请求标头值并用一个长整型描绘这个日期对象。5、getHeader();返回指定的请求头文件为字符型6、getHeaderNames();返回这个请求容器所有头文件名用枚举的方法7、getH
2021-03-15 13:26:33 415
原创 Spring控制反转的入门
Spring控制反转的入门就是应用本身不负责依赖对象的创建及维护,依赖对象的创建及维护是由外部容器负责的。将控制权转移到外部容器,就是反转。目的是为了获得更好的扩展性和良好的维护性。下面是一个简单的小例子public class Person implements Serializable {private int id;private String name;public Strin...
2018-10-24 20:04:19 231 2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人