自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(108)
  • 资源 (1)
  • 问答 (2)
  • 收藏
  • 关注

原创 SpringBoot介绍。

SpringBoot` 是由Pivotal团队提供的全新框架,其设计目的是用来简化Spring应用的初始搭建以及开发过程。原始 `Spring` 环境搭建和开发存在以下问:● 配置繁琐● 依赖设置繁琐`SpringBoot` 程序优点恰巧就是针对 `Spring` 的缺点● 自动配置。这个是用来解决 `Spring` 程序配置繁琐的问题● 起步依赖。这个是用来解决 `Spring` 程序依赖设置繁琐的问题● 辅助功能(内置服务器,...)。

2023-03-17 08:58:53 7168 1

原创 maven高级知识。

▶ 图示▶ 解决骤▷ 步骤1 : 父工程中定义属性▷ 步骤2 : 修改依赖的version此时,我们只需要更新父工程中properties标签中所维护的jar包版本,所有子项目中的版本也就跟着更新。▶ 配置文件加载属性想让Maven对于属性的管理范围能更大些,比如我们之前项目中的`jdbc.properties`,这个配置文件中的属性,能不能也来让Maven进行管理呢?答案是肯定的,具体的实现步骤:▷ 步骤1 : 父工程定义属性。

2023-03-02 18:35:32 2210

原创 SpringMvc介绍。

▶ 基本介绍REST(Representational State Transfer),表现形式状态转换● 传统风格资源描述形式id=1● REST风格描述形式● 优点:○ 隐藏资源的访问行为,无法通过地址得知对资源是何种操作○ 书写简化▶ 风格简介上述行为是约定方式,约定不是规范,可以打破,所以称REST风格,而不是REST规范 描述模块的名称通常使用复数,也就是加s的格式描述,表示此类资源,而非单个资源,例如:users、books、accounts……

2023-02-19 09:56:22 3141 7

原创 AOP面向切面编程思想。

▶ 相关概念● 事务作用:在数据层保障一系列的数据库操作同成功同失败● Spring事务作用:在数据层或业务层保障一系列的数据库操作同成功同失败▷ 数据层有事务我们可以理解,为什么业务层也需要处理事务呢?举个简单的例子:● 转账业务会有两次数据层的调用,一次是加钱一次是减钱● 把事务放在数据层,加钱和减钱就有两个事务● 没办法保证加钱和减钱同时成功或者同时失败● 这个时候就需要将事务放在业务层进行处理。

2023-02-11 22:14:51 5953 33

原创 Spring 整合Mybatis。

▶ Junit运行后是基于Spring环境运行的,所以Spring提供了一个专用的类运行器,这个务必要设置,这个类运行器就在Spring的测试专用包中提供的,导入的坐标就是这个东西`SpringJUnit4ClassRunner`○ SqlSessionFactoryBean是前面我们讲解FactoryBean的一个子类,在该类中将SqlSessionFactory的创建进行了封装,简化对象的创建,我们只需要将其需要的内容设置即可。在运行类中,从IOC容器中获取Service对象,调用方法获取结果。

2023-01-31 21:21:34 2193 3

原创 IOC/DI配置管理第三方bean及注解开发。

▶ 实现步骤▷ 步骤1 : 删除原XML配置将配置文件中的``标签删除掉▷ 步骤2 : Dao上添加注解在BookDaoImpl类上添加`@Component`注解}}● 注意 : @Component注解不可以添加在接口上,因为接口是无法创建对象的。● XML与注解配置的对应关系:▷ 步骤3 : 配置Spring的注解包扫描为了让Spring框架能够扫描到写在类上的注解,需要在配置文件上进行包扫描

2023-01-15 19:40:49 4610 5

原创 spring 基础知识-- IOC 和 DI 的配置和使用。

▷ 什么是生命周期?○ 从创建到消亡的完整过程,例如人从出生到死亡的整个过程就是一个生命周期。▷ bean生命周期是什么?○ bean对象从创建到销毁的整体过程。▷ bean生命周期控制是什么?○ 在bean创建后到销毁前做一些事情。

2022-12-29 15:18:00 5734 5

原创 版本控制器Git的使用。

▶ 版本控制工具1、集中式版本控制工具集中式版本控制工具,版本库是集中存放在中央服务器的,team里每个人work时从中央服务器下载代码,是必须联网才能工作,局域网或互联网。个人修改后然后提交到中央版本库。举例:SVN和CVS2、分布式版本控制工具分布式版本控制系统没有“中央服务器”,每个人的电脑上都是一个完整的版本库,这样工作的时候,无需要联网了,因为版本库就在你自己的电脑上。多人协作只需要各自的修改推送给对方,就能互相看到对方的 修改了。举例:Git▶ Git 概述Git。

2022-12-17 17:38:31 5956 152

原创 VUE&Element简单介绍。

▶ 概述Element:是饿了么公司前端开发团队提供的一套基于 Vue 的网站组件库,用于快速构建网页。Element 提供了很多组件(组成网页的部件)供我们使用。例如 超链接、按钮、图片、表格等等~如下图左边的是我们编写页面看到的按钮,上图右边的是 Element 提供的页面效果,效果一目了然。元素 - 全球最受欢迎的 Vue UI 框架 (eleme.cn)进入官网能看到如下页面接下来直接点击 `组件` ,页面如下。

2022-12-11 16:29:05 3041 1

原创 Filter&Listener&Ajax的介绍

▶ 概述`AJAX` (Asynchronous JavaScript And XML):异步的 JavaScript 和 XML。概念中的`JavaScript` 表明该技术和前端相关;`XML` 是指以此进行数据交换。▶ 作用AJAX 作用有以下两方面:▷ 1. 与服务器进行数据交换:通过AJAX可以给服务器发送请求,服务器将数据直接响应回给浏览器。

2022-11-26 18:13:11 1562 3

原创 会话跟踪技术。

▶ 概念Cookie:客户端会话技术,将数据保存到客户端,以后每次请求都携带Cookie数据进行访问。▶ Cookie的工作流程服务端提供了两个Servlet,分别是ServletA和ServletB浏览器发送HTTP请求1给服务端,服务端ServletA接收请求并进行业务处理服务端ServletA在处理的过程中可以创建一个Cookie对象并将`name=zs`的数据存入Cookie服务端ServletA在响应数据的时候,会把Cookie对象响应给浏览器。

2022-11-18 06:00:00 1507 2

原创 JSP 基本介绍及使用。

M:Model,业务模型,处理业务V:View,视图,界面展示C:Controller,控制器,处理请求,调用模型和视图

2022-11-12 09:15:27 2601 1

原创 Response 介绍及应用。

▷ 问题2:在重定向的代码中,`/request-demo`是固定编码的,如果后期通过Tomcat插件配置了项目的访问路径,那么所有需要重定向的地方都需要重新修改,该如何优化?▷ 问题1:请求转发的时候路径上没有加`/request-demo`而重定向加了,那么到底什么时候需要加,什么时候不需要加呢?○ 资源A现在无法处理该请求,就会给浏览器响应一个302的状态码+location的一个访问资源B的路径。重新启动访问测试,功能依然能够实现,此时就可以动态获取项目访问的虚拟路径,从而降低代码的耦合度。

2022-11-06 08:00:00 1602 1

原创 Request 介绍及使用。

例如:想要登录网址,需要进入登录页面,在登录页面输入用户名和密码,将用户名和密码提交到后台,后台校验用户名和密码是否正确,如果正确,则正常登录,如果不正确,则提示用户名或密码错误。这个例子中,用户名和密码其实就是我们所说的请求参数。

2022-10-24 06:00:00 3431 4

原创 Servlet 执行流程及文件配置。

▶ 简介Servlet是JavaWeb最为核心的内容,它是Java提供的一门动态web资源开发技术。使用Servlet就可以实现,根据不同的登录用户在页面上动态显示不同内容。Servlet是JavaEE规范之一,其实就是一个接口,将来我们需要定义Servlet类实现Servlet接口,并由web服务器运行Servlet。▶ 快速入门▷ 需求分析: 编写一个Servlet类,并使用IDEA中Tomcat插件进行部署,最终通过浏览器访问所编写的Servlet程序。

2022-10-20 07:00:00 2886 29

原创 Tomcat基本使用以及项目部署。

▶ 概述HTTP协议(HyperText Transfer Protocol) : 主要定义通信规则,是超文本传输协议,规定了浏览器和服务器之间数据传输的规则。数据传输的规则指的是请求数据和响应数据需要按照指定的格式进行传输。浏览器发送请求给服务器,服务器响应数据给浏览器,这整个过程都需要遵守一定的规则,TCP、UDP等这些都属于规则,这里我们需要使用的是HTTP协议,这也是一种规则。▶ HTTP 特点▷ 基于TCP协议: 面向连接,安全。

2022-10-14 11:18:53 3197 26

原创 MyBatis 快速入门及Mapper代理开发。

▶ 什么是MyBatisMyBatis 本是Apache 的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis。2013年11月迁移到Github。MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。

2022-10-08 10:39:45 1271 22

原创 MyBatis 核心文件配置并完成CRUD。

存在的问题:从上面结果可以看到 `brandName` 和 `companyName` 这两个属性的数据没有封装成功,查询 实体类 和 表中的字段 发现,在实体类中属性名是 `brandName` 和 `companyName` ,而表中的字段名为 `brand_name` 和 `company_name`,那么我们只需要保持这两部分的名称一致这个问题就迎刃而解。①使用 `@Param("参数名称")` 标记每一个参数,在映射配置文件中就需要使用 `#{参数名称}` 进行占位。而id以后是由页面传递过来。

2022-10-05 11:10:47 2023 39

原创 Maven 基本使用及依赖管理。

1、主要功能提供了一套标准化的项目结构提供了一套标准化的构建流程(编译,测试,打包,发布……)提供了一套依赖管理机制2、标准化的项目结构:项目结构我们都知道,每一个开发工具(IDE)都有自己不同的项目结构,它们互相之间不通用。我再eclipse中创建的目录,无法在idea中进行使用,这就造成了很大的不方便,而Maven提供了一套标准化的项目结构,所有的IDE使用Maven构建的项目完全一样,所以IDE创建的Maven项目可以通用。

2022-09-30 08:32:21 2368 49

原创 正则表达式基础语法以及如何应用。

▶ 概述一个正则表达式,就是用某种模式去匹配字符串的一个公式。很多人因为它们看上去比较古怪而且复杂所以不敢去使用,不过,经过练习后就觉得这些复杂的表达式写起来还是相当简单的, 而且, 一旦你弄懂它们,你就能把数小时辛苦而且易错的文本处理工作缩短在几分钟(甚至几秒钟)内完成。正则表达式不是只有java才有,实际上很多编程语言都支持正则表达式进行字符串操作!▶ 快速入门//目标:匹配所有四个数字//1. \\d 表示一个任意的数字//2. 创建模式对象[即正则表达式对象]//3. 创建匹配器。...

2022-09-26 10:43:30 1636 31

原创 JDBC和数据库连接池。

▶ 概述JDBC为访问不同的数据库提供了统一的接口,为使用者屏蔽了细节问题。Java程序员使用JDBC, 可以连接任何提供了JDBC驱动程序的数据库系统,从而完成对数据库的各种操作。▶ 原理示意图▶ JDBC的好处JDBC是Java提供一套用于数据库操作的接口API, Java程序员只需要面向这套接口编程即可。不同的数据库厂商,需要针对这套接口,提供不同实现。▶ API。...

2022-09-22 11:03:52 2652 107

原创 MySQL约束和事务知识归纳。

约束用于确保数据库的数据满足特定的商业规则。在mysql中,约束包括: not null,unique, primary key, foreign key, 和 check 五种。

2022-09-16 08:04:01 2526 83

原创 MySQL介绍及CRUD操作。

1、所谓安装Mysql数据库,就是在主机安装一个数据库管理系统(DBMS),这个管理程序可以管理多个数据库。2、DBMS(database manage system)一个数据库中可以创建多个表,以保存数据(息)。3、数据在数据库中的存储方式4、SQL语句分类DDL : 数据定义语句[create表, 库...]DML : 数据操作语句[增加 insert, 修改 update, 删除 delete]DQL : 数据查询语句 [select]......

2022-09-09 09:48:08 2580 101

原创 「Java数据结构和算法」手撕快速、归并、基数排序,图解解析 + 代码实现。

以上面的数组为例分析快速排序。首先要传入三个值,数组arr[],最左边下标left,最右边下标right。然后将根据左右的下标值计算出中间值mid。我们要做的就是将左边的值大于mid的放到右边,将右边小于mid的值放到左边。左右两边分别单独循环,左边找到比mid大的数,右边找到比mid小的数。两边分别找到符合条件的数后,进行交换。然后继续比较并交换,此刻l和mid都指向3,r指向5。▶首先实现合并intt=0;//数组temp的下标//判断。...

2022-09-03 08:00:00 1154 44

原创 图解解析 + 代码实现:带你手撕冒泡、选择、插入、希尔排序。

冒泡排序是重复地走访要排序的元素,依次比较两个相邻的元素,如果它们的顺序与自己规定的不符合,则把两个元素的位置交换。走访元素重复地进行,直到没有相邻元素需要交换为止,完成整个排序过程。▶算法原理1、比较相邻元素,如果前一个元素大于后一个元素,则交换。2、依次向后对每一对相邻元素做同样的工作,直到队列末尾,第一轮过后最大的元素就位于最后一个元素位置了。3、重复以上步骤,直到最后一个元素位置的前一位为止(因为最后一位已经排了)。前面我们介绍的选择排序,找到最小的就与前面的进行交换。......

2022-08-25 08:00:00 1228 43

原创 Java 反射机制快速入门及常见方法全归纳。

▶Class也是类,因此也继承Object类▶Class类对象不是new出来的,而是系统创建的▶对于某个类的Class类对象,在内存中只有一份。因为类只加载一次▶每个类的实例都会记得自己是由哪个Class实例所生成▶通过Class对象可以完整地得到一个类的完整结构,通过一系列API▶Class对象是存放在堆的▶类的字节码二进制数据,是放在方法区的,有的地方称为类的元数据(包括方法代码,变量名,方法名,访问权限等等)▶常见方法▶代码示例▶基本概念。...

2022-08-21 08:30:00 2940 54

原创 「Java 数据结构和算法」:图文详解---中缀表达式转后缀表达式。

栈是⼀个先⼊后出的有序列表。栈(stack)是限制线性表中元素的插⼊和删除只能在线性表的同⼀端进⾏的⼀种特殊线性表。允许插⼊和删除的⼀端,为变化的⼀端,称为栈顶(Top),另⼀端为固定的⼀端,称为栈底(Bottom)。根据栈的定义可知,最先放⼊栈中元素在栈底,最后放⼊的元素在栈顶,⽽删除元素刚好相反,最后放⼊的元素最先删除,最先放⼊的元素最后删除。......

2022-08-16 08:00:00 3295 69

原创 「Java 数据结构」:环形链表和约瑟夫问题。

first是指向链表的第一个的,但我们开始的位置可以是任何一个结点,所以先声明辅助结点temp,遍历循环链表,如果结点的data和传入的start的值相等,就找到了开始位置,将first指向开始位置temp,然后循环就结束了。显示循环链表的方式和单链表的显示方式差不多,关键点在于如何判断循环链表的结束,我们的尾部是指向头部的,所以当尾部的next指向的结点等于头部,就是最后一个结点,此时就退出循环。first继续指向要出圈数据的下一个结点,end所在的结点指向first指向的结点,就让数据3出圈了。....

2022-08-05 12:30:00 2009 62

原创 「Java 数据结构」:手撕单链表的增删改查及大厂面试题。

不难看出,倒数第二个结点也是顺序的第三个结点,也就是将倒数的结点转换成顺序结点,遍历链表找到顺序结点即可。将新的结点添加到链表的尾部,我们首先要遍历链表,找到链表的尾部,然后将最后一个结点的next指向新的结点,新结点的next指向NULL,这样就完成了链表的添加操作,这种每次添加到链表的尾部的操作称为尾插法。假设我们要删除中间这个结点,我们只需要将这个结点的上一个结点的next指向这个结点的下一个结点(也就是将第一个结点的next指向第三个结点)。此结点表示链表的头,不存放实际数据的。......

2022-07-26 17:28:48 1542 57

原创 「Java数据结构」手撕数组队列及环形数组队列。

目录一、队列1、基本介绍2、示意图3、队列的特点二、数组模拟队列1、数组队列初始化2、判断方法3、增删改查的方法4、注意三、数组模拟环形队列1、初始化2、判断方法3、增删改查的方法

2022-07-19 07:30:00 1320 87

原创 「Java数据结构」:手撕二维数组和稀疏数组相互转换。

目录一、稀疏数组1、什么是稀疏数组2、图示 ​3、稀疏数组的表达方式二、二维数组→稀疏数组 第一步:创建二维数组第二步:创建稀疏数组,并赋值第三步:遍历二维数组并赋值给稀疏数组完整代码三、 稀疏数组→二维数组第一步:创建新的二维数组第二步:循环遍历并赋值完整代码...

2022-07-12 09:00:00 1051 73

原创 《Java SE》网络编程基础知识归纳。

目录一、网络基本介绍1、什么是网络通信?2、网络3、IP地址4、域名5、网络通信协议6、Socket二、TCP网络通信编程 1、应用实例1(字节流)2、应用实例2(字节流)3、应用实例3(字符流)4、netstat 指令三、UDP网络通信编程 1、基本介绍2、基本流程3、应用实例...

2022-07-08 08:00:00 1085 89

原创 IO流:节点流和处理流详细归纳。

目录一、节点流和处理流二、处理流1、BufferedReader 字符流2、BufferedWriter 字符流3、利用二者进行文件拷贝4、BufferedInputStream 字节流5、BufferedOutputStream 字节流三、ObjectOutputStream、ObjectInputStream 1、序列化和反序列化 2、 ObjectOutputStream 3、ObjectInputStream 4、注意事项 5、标准输入流和输出流 四、转换流 1、基本介绍 2、把 FileInput

2022-07-03 08:00:00 3027 70

原创 IO流:文件输入流、输出流,直接代码解析如何应用。

目录一、FileInputStream 文件输入流二、FileOutputStream 文件输出流 三、FileReader 字符流四、FileWriter 字符流

2022-06-17 06:00:00 3804 117

原创 IO流基础知识详解--文件及IO流原理

目录一、文件1、基本解释2、常用的文件操作3、获取文件相关信息4、目录操作和文件删除二、IO流原理及分类 1、IO流原理2、流的分类3、IO流体系图

2022-06-11 12:54:55 1239 48

原创 多线程重点知识归纳总结。

一、线程相关概念1、程序程序是一个指令序列。是为完成特定任务、 用某种语言编写的一组指令的集合。简单的说:就是我们写的代码它以某些程序设计语言编写,运行于某种目标结构体系上。打个比方,程序就如同以英语(程序设计语言)写作的文章,要让一个懂得英语的人(编译器)同时也会阅读这篇文章的人(结构体系)来阅读、理解、标记这篇文章。一般的,以英语文本为基础的计算机程序要经过编译、链接而成为人难以解读,但可轻易被计算机所解读的数字格式,然后放入运行。2、进程............

2022-06-08 21:57:58 1813 91

原创 《JavaSE 基础知识》泛型的基本介绍和应用。

一、泛型的基本介绍1、传统方法存在的问题不能对加入到集合 ArrayList中的数据类型进行约束(不安全) 遍历的时候, 需要进行类型转换,如果集合中的数据量较大,对效率有影响

2022-06-05 18:14:41 4353 88

原创 《Java集合归纳》集合的注意事项、底层结构及补充知识。(下篇)

一、Map 接口1、注意事项(实用)Map与Collection并列存在。用于保存具有映射关系的数据 : Key-Value(双列元素) Map 中的key 和 value 可以是任何引用类型的数据,会封装到 HashMap$Node 对象中 Map 中的 key 不允许重复,原因和HashSet一样 Map 中的 value 可以重复 Map的 key 可以为null, value 也可以为null 。但是,注意 key为 null 只能存在一个,而value 为 null 可以存在多

2022-05-26 22:01:32 1329 141

原创 《Java集合归纳》集合的基础、底层、以及知识补充。(上篇)

一、集合的源头1、集合背景在没有集合类之前,实际上在Java语言里已经有一种方法可以存储对象,那就是数组。数组不仅可以存放基本数据类型也可以容纳属于同一种类型的对象。数组的操作是高效率的,但也有缺点。比如数组的长度是不可以变的,数组只能存放同一种类型的对象(或者说对象的引用)。另外,在程序设计过程中,程序员肯定会经常构建一些特殊的数据结构以正确的描述或者表达现实情况。比如描述火车进站出站,他们会用到“栈”这个数据结构,常用的数据结构还有:队列、链接表、树和散列表等...

2022-05-19 22:28:25 2180 147

原创 《Java学习笔记》:日期类常用方法全归纳,值得收藏。

CSDN话题挑战赛第1期活动详情地址:话题团队PK赛5/9-5/22-CSDNhttps://marketing.csdn.net/p/bb5081d88a77db8d6ef45bb7b6ef3d7f参赛话题:Java学习记录话题描述:每个人学习的路线不同,学习的方式视频教学和跟的老师不同,一个知识点会多种不同的讲解之法,下面这篇文章记录了我的学习记录并且我不懂或漏掉的知识点又去找其他书籍进行了补充,我觉得依旧不是最完整的,等我遇到了还会对这部分知识点进行补充。目录一、前言二、第一代日

2022-05-17 06:45:00 1568 99

C语言简单练习题--结构体--投票系统

C语言简单练习题--结构体--投票系统

2022-01-28

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

TA关注的人

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