- 博客(37)
- 收藏
- 关注
原创 Spring
上面的type设为CUSTOM新建一个下述接口的实现类实现HttpServlet接口,重写doGet方法@WebServlet()内写拦截请求路径。
2023-08-10 11:10:33
1318
原创 复习笔记—SpringBoot
解决办法---自己找吧应该是运维篇p67 后面有:日志输出格式控制、日志文件。可能会遇到的问题↓,处理方法看运维篇52--p55视频。其他层异常抛到表现层,然后在表现层做一个异常处理器。所以,需要我们对所有的异常进行统一的格式处理。日志logback相关配置见之前的复习笔记。为了测试数据不留垃圾↓,但是id会被占用。如果没有配druid,数据源是?注意,文件名需要对应,中间用-clean后package。多文件的话,用下面这种方式。
2023-07-27 16:37:08
127
原创 复习笔记2
field->Calendar.YEAR.....instantdatetimeformatterperioddurationchronounit! 或者用Integer.valueof()前提是排好序找不到的情况如下↓ 通过开始结束位置来看迭代器iteratorforeach循环/增强for循环lambda表达式遍历二叉查找树存在的问题:在下面这种情况下层数(深度)太大所以平衡二叉树比较好调整成平衡二叉树的四种情况左左右旋,注意5是遗留数据,需要重新排左右先左旋再右旋右右左旋右左先局部右旋,再整理左旋添
2023-07-21 15:32:03
87
原创 复习笔记1
Math System BigDecimal(大数据类型)可以继承公开public的变量、方法(属性和行为)在上述常见形式中,父类不能调用子类独有功能。私有:可以继承,但不能直接访问。所以用到类型转换(才能调用)↓。注意,其中好几个的结果都是小数。最好将instance私有。子类不能继承父类的构造器。比较内容,更安全,推荐。
2023-07-21 09:28:38
68
原创 Redis
5种常用,右侧的是类比的hgetall获取到的是field(单数)和value(双数)<-0是不存在,1是存在如果lrange的start取0,stop取-1就相当于取所有值注意:排序≠有序(之前的list只是有顺序,先后顺序)注意:这个是z开头的这个是限制数据范围你懂得个人理解:java程序操作redis需要用的语言 , 类比jdbc。
2023-06-16 17:00:02
132
原创 Mybatis-plus
2.勾选需要用的,注意不要选择mybatis,否则可能会冲突。另外,为了调试,可以开启日志 <——不必须。将id放进list,然后用不一样的api。建config包,建类,注意加两个注解。其他更多见官网,不过好像打不开。id自增(生成)策略有哪些。基于一定的条件才进行查询。比如:网上抢购同一件物品。办法:设置id生成策略。
2023-06-14 15:26:18
61
原创 SpringMVC
另外,SpringMVC处于表现层入门案例RESTful数据通常为json数据controller下建一个包interceptor,包下建一个类ProjectInterceptor实现接口HanderInterceptor。
2023-05-10 20:15:49
84
原创 计算机网络常见协议
不多余,不能简化为两报文握手如果出现这种情况:如果是两次握手TCP客户进程发出一个TCP连接请求报文段,但该报文段再某些网络节点长时间滞留了,这必然会造成该报文段的超时重传,假设重传的报文段被TCP服务进程正常接收了,TCP服务器进程给TCP客户进程发送一个TCP连接请求确认报文段,并进入连接已建立状态,当TCP服务器进程发送完TCP连接请求确认报文段后,进入连接已建立状态,而不像三报文握手那样进入同步已接收状态,并等待TCP客户进程发来针对TCP连接请求确认报文段的普通确认报文段。
2023-04-23 18:49:49
390
原创 Spring-part1
在创建(bean实例化)的时候调用了bean的无参构造方法!所以要有自动装配(用于引用类型注入)必须有set方法,autowire建议用byType。
2023-04-19 20:40:55
67
原创 安卓学习-基础篇1
用于设置控件边缘相对于父控件的边距用于设置控件内容相对于控件边缘的边距用于设置控件的高度和宽度wrap_content 内容包裹,表示这个控件的里面文字大小填充fill_parent 跟随父窗口用于设置View组件里面内容的对齐方式top bottom left right center等。
2023-04-18 19:03:59
373
原创 类加载、反射
目录类加载类加载 类的初始化步骤和时机类加载器作用和JVM类加载机制反射概述获取Class类的对象三种方法:例子反射获取构造方法并使用获取使用-公共方法 使用-私有方法小结反射获取成员变量并使用小结反射获取成员方法并使用小结反射练习题越过泛型检查 通过配置文件运行类中方法从以上两个例子总结反射作用 newInstance不能直接newInstance暴力反射
2023-04-15 16:35:14
60
原创 多线程-创建、同步、线程池、定时器
目录创建方式有三种:1.Thread2.Runnable3.Callable三种方法对比线程常用方法 构造休眠常用同步线程安全问题同步方法保证线程安全synchronizedlock锁线程通信线程池概述如何得到线程池对象7个参数详解面试题处理Runnable任务创建对象、常用方法新任务拒绝策略例子!!小结处理Callable任务例子小结 Executor工具类创建线程池方法但可能出现问题,如下:小结定时器实现方式有两种Timer定时器 ScheduledExecutorService定时器编辑并发、并行线
2023-04-14 20:26:03
87
原创 进阶-存储过程、存储函数、触发器、锁、InnoDB引擎
目录存储过程介绍基本语法变量系统变量用户定义变量局部变量if判断参数(IN,OUT,INOUT)case循环whilerepeatloop游标cursor条件处理程序handler存储函数触发器介绍语法视图、存储过程、触发器小结锁介绍简介分类全局锁介绍一致性数据备份表级锁介绍、分类表锁元数据锁意向锁行级锁介绍行锁间隙锁&临键锁小结InnoDB引擎逻辑存储结构架构内存结构磁盘结构后台线程事务原理概述redo logundo logMVCC基本概念隐藏字段undolog版本链review介绍原理分析(详见视频)
2023-04-13 19:49:15
77
原创 进阶-存储引擎、索引、SQL优化、视图
不指定时,默认为InnoDB引擎 https://blog.youkuaiyun.com/lzb348110175/article/details/106575270注:此阶段可以参考https://blog.youkuaiyun.com/weixin_45410366/article/details/127147107二叉树和红黑树的弊端: !中间值向上分裂B+ 树非叶子节点上是不存储数据的,仅存储键值,而 B 树节点中不仅存储键值,也会存储数据因为 B+ 树索引的所有数据均存储在叶子节点,而且数据是按照顺序排列的它的向上裂变是
2023-04-13 15:53:35
139
原创 函数、约束、多表查询、事务
AUTO_INCREMENT可以约束任何一个字段,该字段不一定是PRIMARY KEY字段,也就是说自增的字段并不等于主键字段。设置@@autocommit=0即设置手动提交,可以使多个事务合并成一个事务(确保原子性)如果出错,rollback回滚,可以恢复出错事务前已经执行了的事务(合并前)一个表中只能有一个字段使用 auto_increment约束,且该字段必须。如果没有出错,执行commit提交事务之后才能真正执行!,每新增一条记录,字段值自动加 1。与SELECT配合“食用”
2023-04-11 22:08:45
49
原创 常用数据结构+迭代器
上图为内部类 ListItr 的详细信息,可以看到这个内部类实现了 ListIterator 接口,从这个接口的注释中可以探查目的是为了那种能够从两边变量的 List 类型而提供方法,此外还提供了在迭代过程中用于修改 List 结构的 add() 和 remove() 方法。contains(), contains() 方法也是调用 HashMap 中的方法,因为我们的值全都是 Map 中的 key 因此这里调用的是 containsKey()。
2023-04-05 21:58:55
164
原创 Java八股——Spring、Hibernate、Mybatis、中间件
aop 是面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。简单来说就是统一处理某一“切面”(类)的问题的编程思想,比如统一处理日志、异常等。ioc:Inversionof Control(中文:控制反转)是 spring 的核心,对于 spring 框架来说,就是由 spring 来负责控制对象的生命周期和对象间的关系。简单来说,控制指的是当前对象对内部成员的控制权;控制反转指的是,这种控制权不由当前对象管理了,由其他(类,第三方容器)来管理。
2023-03-29 11:20:55
1674
原创 Java八股——异常、网络、设计模式
xss(Cross Site Scripting),即跨站脚本攻击,是一种常见于web应用程序中的计算机安全漏洞。指的是在用户浏览器上,在渲染DOM树的时候,执行了不可预期的JS脚本,从而发生了安全问题。XSS就是通过在用户端注入恶意的可运行脚本,若服务端对用户的输入不进行处理,直接将用户的输入输出到浏览器,然后浏览器将会执行用户注入的脚本。所以XSS攻击的核心就是浏览器渲染DOM的时候将文本信息解析成JS脚本从而引发JS脚本注入,那么XSS攻击的防御手段就是基于浏览器渲染这一步去做防御。
2023-03-29 11:19:53
708
原创 Java八股——多线程、反射、对象拷贝、JavaWeb
当线程 A 持有独占锁a,并尝试去获取独占锁 b 的同时,线程 B 持有独占锁 b,并尝试获取独占锁 a 的情况下,就会发生 AB 两个线程由于互相持有对方需要的锁,而发生的阻塞现象,我们称为死锁。很多 synchronized 里面的代码只是一些很简单的代码,执行时间非常快,此时等待的线程都加锁可能是一种不太值得的操作,因为线程阻塞涉及到用户态和内核态切换的问题。
2023-03-29 11:19:25
201
原创 八股-补充
可以将hibernate的实体类定义为final,但这种做法不好。因为hibernate会使用代理模式在延迟关联的情况下提高性能,如果你把实体类定义成final类之后,因为Java不允许对final类进行扩展,所以hibernate就无法再使用代理了,如此一来就限制了使用可以提升性能的手段。不过,如果你的持久化类实现了一个接口,而且在该接口中声明了所有定义于实体类中的所有public的方法的话,就能避免出现前面所说的不利后果。
2023-03-29 11:19:15
108
原创 Java八股——数据库(MySQL)、Redis、JVM
表类型如果是 MyISAM ,那 id 就是 8。表类型如果是 InnoDB,那 id 就是 6。InnoDB 表只会把自增主键的最大 id 记录在内存中,所以重启之后会导致最大 id 丢失。一般情况下,我们创建的表类型是InnoDB。不重启MySQL,如果新增一条记录,id是8;重启,ID是6;因为InnoDB表只把自增主键的最大ID记录在内存中,如果重启,已删除的最大ID会丢失。如果表类型是MyISAM,重启之后,最大ID也不会丢失,ID是8;
2023-03-29 11:18:56
1791
原创 Java面试八股文——Java基础部分
② List特点:元素有放入顺序,元素可重复 ,Set特点:元素无放入顺序,元素不可重复,重复元素会覆盖掉,(元素虽然无放入顺序,但是元素在set中的位置是有该元素的HashCode决定的,其位置其实是固定的,加入Set 的Object必须定义equals()方法 ,另外list支持for循环,也就是通过下标来遍历,也可以用迭代器,但是set只能用迭代,因为他无序,无法用下标来取得想要的值。用于将完成不同功能的类分门别类,放在不同的目录(包)下,包的命名规则:将公司域名反转作为包名。
2023-03-26 16:42:51
1340
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人