自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 收藏
  • 关注

原创 一、设计模式总览

3、更好的学习掌握经典框架。因为经典框架的设计都是采用的各种设计模式解决问题的。9、观察者模式 ContextLoaderListener。6、策略模式 HandlerMapping。1、工厂模式 BeanFactory。7、适配器模式 HandlerApdapter。2、装饰器模式 BeanWrapper。3、代理模式 AopProxy。8、模板方法模式 JdbcTemplate。1、写出更加优雅的代码。

2024-04-01 22:46:27 105

原创 java jdk环境变量配置

Java jdk中包含jdk jre 安装的时候,两个都会自动安装。在系统变量里新建两个变量,一个jdk 一个jre。1、到oracle官网下载jdk。2、 下载到本地开始安装。

2024-03-07 23:37:39 200

原创 5、红黑树-下

其中第三种情况里,插入节点的父节点为红色,叔叔节点存在且为红色,第三个 将PP设置为当前插入节点意思是在前面两个变色完成后,把PP节点当成一个插入的节点套用规则对PP节点上面的节点进行变色操作等。左旋:以某个节点作为支点(旋转节点),其右子节点变为旋转节点的父节点 右子节点的左子节点变为旋转节点的右子节点,左子节点保持不变。右旋:以某个节点作为支点(旋转节点),其左子节点变为旋转节点的父节点 左子节点的右子节点变为旋转节点的左子节点,右子节点保持不变。S - 叔叔节点(跟父节点同级)

2023-12-21 00:06:57 583

原创 4、红黑树-上

5 任意节点到每个叶子节点的路径包含相同数量的黑节点。1、红黑树的出现是为了解决二叉树的不平衡情况。2 rotation 旋转,数达到平衡的关键。4 每个红色节点的两个子节点必须是黑色。1 recolor 重新标注节点的颜色。1 每个节点要么是红色,要么是黑色。3 每个叶子节点是黑色。2 根节点必须是黑色。

2023-12-20 02:05:53 428

原创 3、树形结构

根据二叉树节点规则,有时候会出现不平衡二叉树的情况。1、某节点的左子树节点仅包含小于该节点值。2、某节点的右子树节点仅包含大于该节点值。3、左右子树也必须是二叉查找树。

2023-12-20 01:53:58 383

原创 2、双向链表

LinkedList举例:内部维护了一个Node内部类,维护了前后节点和当前值的信息。3、增删效率块,只和操作节点的前后节点有关系,无需移动元素。1、对空间要求较为灵活,不需要连续的内存地址。2、不支持下标的访问,支持顺序遍历检索。

2023-12-20 01:38:44 399

原创 1、最简单的数据结构数组

【代码】1、最简单的数据结构数组。

2023-12-20 01:15:46 341

原创 设置Xshell选中即复制,右键即粘贴到命令行

二、“向右按钮®”改为“粘贴剪贴板内容”,勾选上“将选定的文本自动复制到粘贴板©”。一、选择Xshell菜单栏:工具—>选项—>鼠标和键盘。

2023-11-15 14:17:22 989

原创 ListUtils工具类便捷操作list集合的方式

ListUtils有两个版本,分别是org.apache.commons.collections.ListUtils 和其中后者为最新版本,对前一版本部分方法有优化,建议使用后一版本。

2023-11-15 13:18:15 356

原创 net.sf.json.JSONObject与com.alibaba.fastjson.JSONObject区别

我们在项目开发过程中经常会使用到JSONObject,实际在运用中我们发现JSONObject有两大来源com.alibaba.fastjson.JSONObject 和今天来梳理下,防止混淆。

2023-11-15 09:25:11 266

原创 java中转义字符的使用

java转义字符

2023-11-14 14:42:42 270

原创 bigdecimal运算和注意事项

在使用BigDecimal类型进行计算时,进行加、减、乘、除、比较大小时,一定要保证参与计算的两个值不能为空,否则会抛出java.lang.NullPointerException异常。除了进行除法运算时在除法运算方法内部指定精度,我们还需要在进行其他运算或者单纯对Bigdecimal的数据进行精度指定,通过bigdecimal内部方法:.setScale() 实现。在BigDecimal 中使用equals可能会导致结果错误,因为不仅比较值的大小,还比较了值的精度。0(相等) 1(大于) -1(小于)

2023-09-03 20:39:54 227

原创 javaSE-java基本数据类型的转换

强制类型转换,其实是自动类型转换的逆过程,在数据类型兼容的情况下,将容量大的数据类型转换为容量小的数据类型。强制类型转换也被称为显式类型转换,需要我们显式地进行转换操作,必须在=等号后面的类型前加上强制()转换符,并且有可能会造成数据精度的降低或溢出。自动类型转换,是指在基本类型中,容量小的数据类型可以自动转换为容量大的数据类型。通过基本类型对应的包装类,可以把字符串类型的数值转换成对应的基本类型。java数据类型可以分为基本数据类型和引用数据类型,这里数据类型的转换主要讲解的是基本数据类型的转换。

2023-09-03 18:47:59 33

原创 javaSE-为什么在实体类中不要使用基本数据类型

1、因为基本类型的成员变量,在类加载时会有默认值,而基本类型包装类如果不赋值的话,默认是null。这样在实际代码开发中就会就可能会影响我们的逻辑判断。3、实体类中的变量是基本数据类型,那么作为结果在接受接收的时候,如果变量的结果为空,那么持久层框架中机会赋予默认值,从而影响我们对结果的判断和处理。2、实体类中的变量是基本数据类型,那么查询传参的时候就不能使用!=null 进行判断,因为基本类型有默认值。

2023-09-01 20:26:29 205

原创 javaSE-bigdecimal如何保证精度不丢失

原理分析:首先要明确运算时精度的丢失往往是由于小数的参数而导致的,因为计算机通过二进制存储数据,十进制小数在转成二进制的时候我们可以通过乘2取整的方式,知道小数部分为0结束。如果传入字符串创建bigdecimal对象,则会把字符串转成字符数组(数组内包含小数点),然后对字符数组的每个字符进行遍历,最后会得到一个去除小数点的long型整数–intCompact,以及记录小数点位置的int型参数–scale。然后在进行bigdecimal的计算的时候,会分为两部分,整数的计算,小数点位置的计算。

2023-09-01 12:15:20 298

原创 8、HttpServletResponse对象讲解

​ request 和 response 对象代表请求和响应:获取客户端数据,需要通过 request 对象;向客户端输出数据,需要通过 response 对象。​ HttpServletResponse 的主要功能用于服务器对客户端的请求进行响应,将 Web 服务器处理后的结果返回给客户端。service()方法中形参接收的是 HttpServletResponse 接口的实例化对象,这个对象中封装了向客户端发送数据、发送响应头,发送响应状态码的方法。接收到客户端请求后,可以通过 HttpServlet

2023-08-31 00:26:13 87

原创 javaSE-基本数据类型介绍

boolean类型有两个常量值,true和false,在内存中占一位(不是一个字节),不可以使用 0 或非 0 的整数替代 true 和 false ,这点和C语言不同。2、double表示这种类型的数值精度约是float类型的两倍,又被称作双精度类型,绝大部分应用程序都采用double类型。1、float类型又被称作单精度类型,尾数可以精确到7位有效数字,在很多情况下,float类型的精度很难满足需求。3、float类型的数值有一个后缀F或者f ,没有后缀F/f的浮点数值默认为double类型。

2023-08-29 22:30:07 22

原创 javaSE-final关键字

final关键字,代表最终的,不可改变的。final可以用来修饰 类,方法 ,成员变量,局部变量,形式参数,不能修饰代码块、构造方法。

2023-08-29 22:04:13 22

原创 javaSE-String类-基本介绍和常用方法

1、在java.lang包下,可以直接使用,无需导包2、被final修饰,不能被继承,没有子类3、String底层是一个char类型的数组。

2023-08-29 09:54:07 28

原创 javaSE-方法的重载

方法的重载是指一个类中可以定义多个方法名相同,但参数不同的方法。调用时,会根据不同的参数自动匹配对应的方法。注意本质:重载的方法,实际是完全不同的方法,只是名称相同而已!1、方法的重载只跟:方法名和形参列表有关,与修饰符,返回值类型无关。2、注意:形参列表不同指的是什么?(1)个数不同(2)如果有多个不同类型的形参,则顺序不同(3)类型不同4、请问下面的方法是否构成了方法的重载?(1)add(int a) 和 add(int b) —>不构成,相当于方法的重复定义。

2023-08-28 08:08:08 23

原创 javaSE-方法的定义

方法(method)就是一段用来完成特定功能的代码片段,类似于其它语言的函数(function)。方法用于定义该类或该类的实例的行为特征和功能实现。方法是类和对象行为特征的抽象。方法很类似于面向过程中的函数。面向过程中,函数是最基本单位,整个程序由一个个函数调用组成。面向对象中,整个程序的基本单位是类,方法是从属于类和对象的。

2023-08-28 07:59:57 20

原创 javaSE-数组定义初始化遍历

数组是相同类型数据的有序集合。数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成。其中,每一个数据称作一个元素,每个元素可以通过一个索引(下标)来访问它们。数组的四个基本特点:1.长度是确定的。数组一旦被创建,它的大小就是不可以改变的。2.其元素的类型必须是相同类型,不允许出现混合类型。3.数组类型可以是任何数据类型,包括基本类型和引用类型(实例对象)。4.数组有索引的:索引从0开始,到 数组.length-1 结束。

2023-08-25 10:54:25 31

原创 7、HttpServletRequest对象

HttpServletRequest 对象:主要作用是用来接收客户端发送过来的请求信息,例如:请求的参数,发送的头信息等都属于客户端发来的信息,service()方法中形参接收的是 HttpServletRequest 接口的实例化对象,表示该对象主要应用在 HTTP 协议上,该对象是由 Tomcat 封装好传递过来。一切请求都围绕HttpServletRequest 对象。

2023-08-23 01:20:24 152

原创 6、servlet的生命周期

在 Servlet 中有三个生命周 期方法,不由用户手动调用,而是在特定的时机有容器自动调用,观察这三个生命周期方法 即可观察到 Servlet 的生命周期。就绪/调用/服务方法,每次有请求到达某个 Servlet 方法时执行,用来处理请求(证明该Servlet 进行服务了),系统方法服务器自动调用。销毁方法,Servlet 实例销毁时执行(证明该 Servlet 的实例被销毁了),系统方法服务器自动调用。当容器关闭时(应用程序停止时),会将程序中的 Servlet 实例进行销毁。就绪/调用/服务阶段。

2023-08-23 00:51:16 22

原创 5、servlet的其他实现

所以子类 Servlet01中可以不用重写service方法,直接写doGet和doPost方法,被父类的service方法调用即可:(不推荐)方式2:extends GenericServlet抽象类。方式1:extends HttpServlet 类。方式3:implements Servlet接口。

2023-08-23 00:41:23 18

原创 javaSE-File类概述

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar

2020-06-18 21:30:53 183

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除