- 博客(32)
- 收藏
- 关注
原创 187.重复的DNA序列 - 力扣
另一种类型是窗口是可变的,也就是不固定的,例如力扣上的第3题无字符的最长子串。利用List存放结果,Map来存放截取该序列所得的子序列和出现的次数。把左指针设置为0,右指针为左指针+10(窗口值),遍历序列得出答案。利用List存放结果,Map来存放截取该序列所得的子序列和出现的次数。把左指针设置为0,右指针为10(窗口值),遍历序列得出答案。滑动窗口又跟双指针有关系,可是设置左右指针,左右指针中间的距离就成为窗口。可以看的出来优化后的代码更加简洁、优雅。...
2022-08-13 16:38:49
448
1
原创 Java中的过滤器和拦截器的区别
过滤器(Filter)是基于Servlet实现的,主要的应用场景是设置字符集、控制权限、控制转向、跨域等。Servlet的工作原理是当你在web.xml文件中配置好需要拦截的客户端请求,它就会拦截到你所需要拦截的请求,然后对请求或响应(Request、Response)进行处理。同时还可以进行逻辑判断,如用户是否已经登录、有没有权限访问该页面等工作。Filter过滤器随着web应用的启动而启动,只初始化一次。启动后就可以拦截相关请求,只有当该web应用程序停止或重新部署的时候才销毁。...
2022-08-10 20:06:38
1454
原创 基于Ribbon实现负载均衡时出现java.net.UnknownHostException: XXXXX异常
基于Ribbon实现负载均衡时出现java.net.UnknownHostException: XXXXX异常
2022-08-02 18:54:29
396
原创 利用dom4j解析相关配置文件并实现mybatis底层源码
目录1.首先要创建一个maven项目,并导入相关依赖(dom4j)2.在src\main\resources目录下创建一个mybatis.xml主配置文件和UserMapper.xml映射配置文件。2.1 mybatis.xml2.2 UserMapper.xml3.然后在src\main\java目录下编写相关类,详细说明已在注释中写出3.1 User类3.2 Configuration类3.3 UserMapper类 4.在src\test\java目录下创建一个测试类CustomerParseTest
2022-07-11 17:59:51
584
原创 SpringMVC入门
目录一、简介1. 什么是SpringMVC2. SpringMVC特点二、HelloWorld示例1. 配置webapp文件夹 1.1 先把打包方式设置为 war1.2 创建webapp文件夹1.3 进入Project Structure进行添加web.xml1.4 在web.xml中配置SpringMVC的前端控制器1.5 /中的 / 相关说明1.6 在src\main\resources下创建一个spring配置文件 springMVC.xml2. 创建一个控制器类 HelloController3.
2022-06-01 20:38:26
154
原创 Spring纯注解配置连接数据库
目录1.创建一个资源配置文件jdbc.properties2.创建一个配置数据库类JdbcConfig3.创建一个配置类SpringConfig4.创建一个测试类SpringTest5.执行结果准备工作: 先创建一个maven项目,并pom.xml文件导入相关依赖。<dependencies> <dependency> <groupId>org.spring...
2022-05-26 12:08:22
1462
原创 Spring5实现复杂对象注入的三种方式
目录1. 实现 FactoryBean 接口,并重写相应的方法 1.1FactoryBean接口中定义的三个方法 1.2自定义一个工厂 Bean,它需要实现 FactoryBean 接口并重写接口中定义的方法 1.3 创建spring.xml文件,并在文件中配置 1.4 创建一个测试类进行测试 1.5 测试结果2. 实例工厂 2.1创建一个牛奶工厂类,并定义一个生产牛奶的方法 2.2 在spring.xml文件中配置 ...
2022-05-16 19:36:32
385
原创 简单地模拟实现Spring解析配置文件并实例化对象
目录1.首先要创建一个maven项目,并导入相关依赖(dom4j)2.在src\main\resources目录下创建一个spring.xml配置文件。3.然后在src\main\java目录下编写相关类,详细说明已在注释中写出3.1 User 类3.2 BeanDefinition 类3.3 ApplicationContext 接口3.4 ClasspathXmlApplicationContext类3.4.1 关于为什么要是有暴力反射?3.5 测试类 Spring.
2022-05-14 13:47:10
455
原创 Java知识小结
一、为什么非静态方法不能访问静态方法、静态成员?因为静态方法、静态成员是随着类加载而加载的,而非静态方法、非静态成员是在类创建(new)好过后,才会有的。(加载时间不一样)静态方法、静态成员的生命周期比非静态的要早,消亡的时间要晚。二、普通代码块、静态代码块、构造器(constructor)的执行顺序静态代码块>普通代码块>构造器(constructor)因为静态代码块是随着类的加载而加载的,普通代码块在创建对象............
2022-05-05 18:16:24
527
原创 IDEA连接数据库出现the server time zone value ‘�й���ʱ��‘ is unrecognized or represents more than one time
当使用idea连接数据库时,出现如下提示原因是 数据库和系统时区差异所造成的。方法一可以通过cmd黑窗口登录mysql 用命令设置时区。show variables like "%time_zone%"; #查看时区set global time_zone = '+8:00'; ##修改mysql全局时区为北京时间,即我们所在的东8区set time_zone = '+8:00'; ##修改当前会话时区flush privileges; #立即生效依次执...
2022-03-25 15:59:00
4827
3
原创 mybatis报错:Result type not match for select id=“getEmployeeByName“
自己设置的返回类型是没有问题的检查发现自己在映射文件里的返回类型也是没有问题的然后发现是因为自己在不同的model下,定义了两个Department类和Employee类。把其中一个模块的类重命名之后,就不在报错了。这里我是把one模块的类给重命名了。问题解决。记录自己所遇到的问题,兴许以后会用得到呢。......
2022-03-25 08:52:36
8216
3
原创 590.N叉数的后序遍历 - 力扣
给定一个 n 叉树的根节点 root ,返回 其节点值的 后序遍历 。n 叉树 在输入中按层序遍历进行序列化表示,每组子节点由空值 null 分隔(请参见示例)。这题可以利用递归的思想来实现,...
2022-03-18 16:40:32
503
1
原创 Java集合中的List、ArrayList、LinkedList
一、List1.1 继承体系 List继承自Collection接口。public interface List<E> extends Collection<E> {}1.2 特点 1)允许包含重复元素 2)是一个有序的集合1.3 特有方法可以通过操作角标的方法对元素进行增删改等操作。返回值类型 方法 作用 void add(int index,E ...
2022-03-17 16:46:09
290
原创 二叉树的遍历
目录一、 前序遍历二、中序遍历三、后序遍历二叉树的遍历是指按照某种顺序访问二叉树中的每个节点,使每个节点被访问一次且仅被访问一次。二叉树有三种遍历方式:前序遍历、中序遍历、后序遍历。一、 前序遍历 前序遍历就是当你访问一个二叉树时,若该二叉树为空,则空操作;否则,访问根节点; 先序遍历根节点的左子树; 先序遍历根节点的右子树。例如 对如图1所示的二叉树进行前序遍历。第一步:访问根节点A。第二步:发现A节点有左右子树,遵循先左后右的原...
2021-11-23 15:43:02
570
原创 Hash冲突以及如何解决Hash冲突
一、哈希冲突 Hash冲突指的是在向Hash表中存数据时,首先要用Hash函数计算出该数据要存放的地址。但是在这个地址中已经有值存在,所以这个时候就发生了Hash冲突,
2021-11-22 21:50:52
15928
原创 JDK1.8的新特性
一、Lambda表达式1.1概念Lambda 表达式,也可称为闭包,它是推动 Java 8 发布的最重要新特性。Lambda 允许把函数作为一个方法的参数(函数作为参数传递进方法中)。可以使代码变的更加简洁紧凑。1.2特点1)更加紧凑的代码:Lambda表达式可以通过省去冗余代码来减少我们的代码量,增加代码的可读性;2)更好的支持多核处理:Java1.8中通过Lambda表达式可以很方便地进行操作大集合,充分发挥多核CPU的潜能,并行处理函数如filter、map和re...
2021-11-19 17:45:50
616
原创 Java中Object类(内含两个面试题)
Object类中常用的方法:返回值类型 方法名 作用 protected Object clone() 创建并返回此对象的一个副本 boolean equals(Object obj) 指示某个其它对象是否与此对象“相等” protected void finalize() 但垃圾回收器确定不存在对该对象的更多引用时,由对象的垃圾回收器调用此方法 Class<?extends Object>
2021-11-08 19:48:46
328
原创 Java中重写与重载的知识小结
1 重写(Override) 重写是子类对父类的允许访问的方法的实现过程进行重新编写,返回值和形参都不可以改变。 重写的好处就是子类可以根据需要,定义特定于自己的行为。也就是说子类能够根...
2021-11-08 14:06:19
205
原创 Java中类的加载顺序
继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类。继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。...
2021-10-31 19:20:43
432
原创 Java中值传递和引用传递
在说这个问题之前,我们先来看一下形式参数和实际参数概念。形式参数:方法声明时的参数(小括号里的参数),就好比数学中的未知数X。实际参数:调用方法时真正传入方法里的数据。值传递:就是在调用方法时,实际参数把它的值传递给对应的形式参数。在这个时候,内存中就存在两个相等的基本数据类型,即形式参数和实际参数。在该方法中的操作都是对形参这个值进行修改,不影响实际参数的值。引用传递:也称为传地址。方法调用时,实际参数的引用(地址,而不是参数的值)被传递给方法中相对应的形式参数,函数接收的是原始值的内存地
2021-10-30 11:06:17
115
原创 为什么Java中float类型的取值范围大于long类型
在学习Java的过程中,我遇到了一个很有意思的问题,就是为什么Java中float类型的取值范围会大于long类型。类型名 大小/字节 取值范围 float 4(32bit) -3.4E+38 ~ 3.4E+38 long 8(64bit) -2^63~2^63-1 long整型数:具有8个字节(64位),以二进制补码表示的整数,这种类型主要使用在需要比较大整数的系统上。float类型具有4个字节,包括一个符号位、一个8位二进制指数和一...
2021-10-18 21:04:36
427
原创 RHCSA第五天作业
1、添加两块5g大小的磁盘,将第一块磁盘的分区分为两个主分区并格式化为xfs的文件系统类型,第二块磁盘的分区分为一个逻辑分区并格式化为ext4的文件系统类型。虚拟机必须是在关机状态下进行添加磁盘操作。操作如下,因为第二块磁盘的添加步骤跟添加第一块磁盘的步骤是一样的,在这里就只有第一块磁盘的操作截图。添加完成后,要进入bios调整系统的引导顺序(已经装好系统盘调到最前面)。然后按F10保存退出。第一块磁盘(/dev/sda):添...
2021-07-22 23:54:57
183
原创 RHCSA第四天作业
1、新建几个普通用户wukong,wuneng,wujing,他们都属于xiyouji组的成员,其中wujing没有和系统交互的shell。[root@localhost ~]# groupadd xiyouji[root@localhost ~]# useradd wukong -g xiyouji[root@localhost ~]# useradd wuneng -g xiyouji[root@localhost ~]# useradd wujing -g xiyouji -s /sbin
2021-07-21 21:03:03
103
原创 RHCSA第三天作业
1、在根下创建一个目录ceshi,在测试目录下创建一个user目录,将/etc/passwd和/etc/shadow文件复制到/ceshi/user目录中,给/ceshi//user/passwd文件创建一个硬链接文件为passwd.bak,给/ceshi/user/shadow文件创建一个软链接为sh.link。[root@localhost ~]# mkdir /ceshi/user -p[root@localhost ~]# cp /etc/{passwd,shadow} /ceshi/u...
2021-07-20 00:53:13
143
原创 VMware创建虚拟机以及安装linux操作系统
一.VMware创建虚拟机在VMware主页选择创建新的虚拟机,然后选择自定义(高级),点击下一步。硬件兼容性可以选默认的,也可以选Workstation 15.x,点击下一步 。选择稍后安装操作系统,点击下一步。第一步先选Linux,然后在版本里选择Red Hat Enterprise Linux 8 64位,点击下一步。VMware15版本可能没有Red Hat Enterprise Linux 8 64位。在这里可以给虚拟机命名,也可以设置虚拟机安...
2021-07-16 17:56:51
377
原创 HCIA静态综合实验
实验需求:除R5外的环回地址固定以外,整个其它所有网段基于192.168.1.0/24进行合理的IP地址划分 R1-R4每个路由器存在两个环回接口,用于模拟连接PC网段;地址也在192.168.1.0/24这个网络范围内 R1-R4上不能直接编写到达5.5.5.0/24的静态路由,但依然可以访问 全网可达,尽量减少每台路由器路由表条目数量,避免环路出现 R4-R5之间,正常1000M链路通信,故障时自动改为100M 实验拓扑图:实验操作: 可以数出这个网络拓扑有1...
2021-07-13 19:22:16
147
原创 CSS--------引用方式和选择器
一.CSSCSS 是一种描述 HTML 文档样式的语言。CSS 描述应该如何显示 HTML 元素。层叠样式表(英文全称:CascadingStyle Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。CSS不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化。CSS 能够对网页中元素位置的排版进行像素级精确控制,支持几乎所有的字体字号样式,拥有对网页对象和模型样式编辑的能力。...
2021-06-03 09:44:30
184
原创 HTML入门-------table布局
一.table表格表格由 <table> 标签来定义。每个表格均有若干行(由 <tr> 标签定义),每行被分割为若干单元格(由 <td> 标签定义)。字母 td 指表格数据(table data),即数据单元格的内容。数据单元格可以包含文本、图片、列表、段落、表单、水平线、表格等等。表格是以行和列的形势显示信息,常用于显示网格结构的数据。二.创建表格...
2021-05-24 19:43:15
3694
原创 HTML入门-------form表单
一.表单概述表单是可以把用户输入的数据传输到服务器端的HTML元素,然后在后台处理表单传输过来的数据,用来完成与用户之间的各种交互动作。在网页上由可输入的表单控键,比如文本输入框、密码输入框、单选按钮、多选按钮等。表单在网页中主要负责收集数据。二.表单标签 表单标签是一个双标签,里面包含将数据提交到后台服务器的方法。<form></form>...
2021-05-24 12:09:24
473
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人