自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Linux基础知识 + 常用命令

Linux基础。

2024-09-28 18:15:00 957 1

原创 MongoDB详细讲解 + springboot集成

以JSON为数据模型的文档非关系型数据库。

2024-09-24 18:15:00 774

原创 Redis使用详解(超详细运用实践 + springboot集成)

关系型数据库 MySQL 、oracleNoSQL数据库 非关系型数据库 分类键值存储 查找速度快 数据无结构化列存储数据库 查找速度快、可拓展性强,容易进行分布式扩展 功能相对局限文档型数据库 数据结构要求不严格,表结构可变,不需要预定义表结构 查询性能不高,缺乏统一的查询语法图形数据库 利用图结构相关算法,不好做分布式的集群方案。

2024-09-21 18:15:00 1445

原创 MybatisPlus常用操作

1.xml方式2.注解方式。

2024-09-19 18:15:00 585

原创 GIT版本控制

版本控制()是维护工程蓝图的标准做法,能追踪工程蓝图从诞生一直到定案的过程。是一种记录若干文件内容变化过程,以便将来查阅特定版本修订情况的系统。版本控制深入程序员在团队配合中,如果你的项目没有版本控制: 一、 代码管理混乱。二、 解决代码冲突困难。三、 在代码整合期间引发BUG。四、 无法对代码的拥有者进行权限控制。五、 项目不同版本发布困难。......很多人都知道,Linus在1991年创建了开源的Linux,从此,Linux系统不断发展,已经成为最大的服务器系统软件了。Linus虽然创建了。

2024-09-14 18:15:00 1027

原创 MySQL在explain后结果每一列的含义

最近在进行MySQL的调优工作,针对MySQL调优进行了更加详细的深入了解。在 MySQL 中,EXPLAIN语句可以用于分析 SQL 查询的执行计划。执行EXPLAIN后,MySQL 会返回一张表,其中每一列都提供了关于查询执行方式的信息。

2024-09-12 17:29:32 820

原创 RESTFUL风格设计

应用程序接口)是一些预先定义的函数,或指软件系统不同组成部分衔接的约定。[1] 目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问原码,或理解内部工作机制的细节。研发人员A开发了软件A,研发人员B正在研发软件B。有一天,研发人员B想要调用软件A的部分功能来用,但是他又不想从头看一遍软件A的源码和功能实现过程,怎么办呢?研发人员A想了一个好主意:我把软件A里你需要的功能打包好;你把这个包放在软件B里,就能直接用我的方法了!其中,API就是研发人员A说的那个方法。

2024-09-10 18:15:00 942

原创 SSM Spring MVC集成mybatis

完成部门基本的 CRUD 和分页查询,完成员工基本的 CRUD、分页查询和过滤查询(根据姓名和邮箱模糊查询,根据部门查询)。

2024-09-07 18:15:00 1482

原创 Spring MVC思想 实践开发 核心组件 流程分析

一、Spring Web 框架介绍1、MVC 思想JavaBean、JSP、Servlet,减少耦合,提高可维护性。2、Spring MVC Servlet:Web 服务的模块,包含对 MVC 与 REST 的实现,Spring MVC。 Web:提供与 Web 的集成,基于 Web 应用程序上下文。 WebSocket:实现客户端与服务端主动通信。 Portlet:提供了在 Portlet 环境中实现 MVC。 Spring MVC 是 Spri

2024-09-03 18:15:00 1777

原创 Spring事务 AOP思想 集成Mybatis

在开发中,为了给业务方法中增加日志记录,权限检查,事务控制等功能,此时我们需要去修改业务方法代码,考虑到代码的重用性,我们可以考虑使用 OOP 的继承或组合关系来消除重复,但是无论怎么样,我们都会在业务方法中纵向地增加这些功能方法的调用代码。此时,既不遵循开闭原则,也会为后期系统的维护带来很大的麻烦。(即不管怎样都得修改到原来的代码)为了解决该问题,OOP 思想是不行了,得使用 AOP 思想。

2024-08-31 18:15:00 641

原创 Spring AOP切面编程 IOC DI注解 代理模式

Java 动态代理是使用 java.lang.reflect 包中的 Proxy 类与 InvocationHandler 接口这两个来完成的。要使用 JDK 动态代理,真实类必须实现接口。JDK 动态代理将会拦截所有 pubic 的方法(因为只能调用接口中定义的方法),这样即使在接口中增加了新的方法,不用修改代码也会被拦截。动态代理的最小单位是类(类中某些方法都会被处理),如果只想拦截一部分方法,可以在 invoke 方法中对要执行的方法名进行判断。代理类与真实类共同实现一个接口的。

2024-08-27 18:15:00 602

原创 Mybatis 对象关系分类 一对多 多对一 多对多

生活中数据很多是存在关系的,就是把生活中有关系的数据通过 MyBatis 持久化到数据库,且存储的数据也能表示出来这种关系,再由数据库中把有关系的数据查询出来在页面展示。保存:页面的数据 ---> 使用 Java 对象封装 ---> 通过 MyBatis ---> 数据库表的数据查询:数据库表的数据 ---> 通过 MyBatis ---> 封装成 Java 对象 ---> 页面展示数据那么这里需要解决问题:怎么使用数据库表设计来表示数据之间关系;怎么使用 Java 类设计来表示对象之间关系;

2024-08-24 18:15:00 737

原创 MyBatis的占位符与 动态SQL

​若需要作为 ORDER BY 或 GROUP BY 子句获取参数值使用 $;若需要作为其它子句获取参数值使用 #。MyBatis 的强大特性之一便是它的动态 SQL。如果你有使用 JDBC 或其它类似框架的经验,你就能体会到根据不同条件拼接 SQL 语句的痛苦。例如拼接时要确保不能忘记添加必要的空格,还要注意去掉列表最后一个列名的逗号。利用动态 SQL 这一特性可以彻底摆脱这种痛苦。

2024-08-20 18:15:00 770

原创 MYSQL单表连表查询子查询

其语句包括动词 CREATE 和 DROP。在数据库中创建新表或删除表(CREAT TABLE 或 DROP TABLE);为表加入索引等。DDL 包括许多与人数据库目录中获得数据有关的保留字。它也是动作查询的一部分。需要查询的数据分散在多张表中,只有联合多张表才能查询出期望的数据。比如:emp 表存储了员工的信息,dept 表存储了部门的信息,而需求是查询出员工的编号、姓名以及对应部门的名称。分组情况1:按照性别分组,男生一组,女生一组,之后可以统计男生和女生的数量;

2024-08-16 18:15:00 876

原创 Springboot自动配置 + mybatis集成实战

注解内部是3大注解功能的集成:开启组件扫描:作用等同于注解,也是用于标记配置类。

2024-08-12 18:33:05 741

原创 Springboot IOC DI理解及实现+JUnit的引入+参数配置

​System.out.println("SomeBean 被创建");System.out.println("SomeBean 被初始化");System.out.println("SomeBean 被销毁");// 省略 toString 方法​System.out.println("OtherBean 被创建");替代之前的 XML 文件,类中定义方法,返回 bean 对象交给 Spring 管理。/*** 贴有该注解的类表示 Spring 的配置类。

2024-08-09 18:15:00 1992 1

原创 好用的模板引擎Thymeleaf

Thymeleaf是适用于 Web 和独立环境的现代服务器端 Java 模板引擎。Spring 官方支持模板引擎中,并不包含 JSP。而是 Thymeleaf 和 FreeMarker 等,而 Thymeleaf 与 Spring Boot 的自动化配置集成非常完美,几乎没有任何成本,你只用关注 Thymeleaf 的语法即可。

2024-08-06 18:15:00 801

原创 C语言学习记录14

/4/8 数组名表示首元素地址,a+0还是首元素地址 地址大小是4/8字节。//4/8 &a是数组的地址,&a+1虽然地址跳过整个数组,但还是地址。//4/8 &a是数组的地址,&a+1虽然地址跳过整个数组,但还是地址。//4/8数组名表示首元素地址,a+0还是首元素地址 地址大小是4/8字节。//4/8 &a取出的是数组地址,地址大小就是4/8字节。

2024-08-03 18:15:00 527 1

原创 POI 快速入门 Excel导入导出

POI简介(Apache POI),Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能。Apache POI官网HSSF - 提供读写Microsoft Excel格式档案的功能。(.xls)XSSF - 提供读写Microsoft Excel OOXML格式档案的功能。(.xlsx)HWPF - 提供读写Microsoft Word格式档案的功能。

2024-08-01 18:15:00 802

原创 C语言学习记录Day13

参数有2个一个是int 另一个是函数指针(指向的函数的参数是int返回类型是void)//signal函数的返回类型也是一个函数指针 指向的函数的参数是int返回类型是void。//指向的数组的每个元素的类型实在一个函数指针 int(*)(int ,int )

2024-07-30 18:30:00 453

原创 C语言学习记录Day12

使用补码,可以将符号位和数值域统一处理,加法和减法 也可以统一处理。1.使用这个类型开辟内存空间的大小(大小决定了使用范围)浮点数的存储有点难理解,后面两天需要抽时间补补相关知识。通常应用于函数的返回类型,函数的参数,指针类型。printf("小端\n");printf("大端\n");之后还学习了浮点数的存储方式...2.如何看待内存空间的视角。数据存放在内存中是存放补码。void 表示空类型。判断当前机器的字节序。

2024-07-30 18:15:00 218

原创 C语言学习记录Day11

struct Stu s1 = { "张三",20,"1234678911","男" };struct Stu//struct 结构体关键字 Stu结构体标签 struct Stu结构体类型。Stu s2 = { "旺财",30,"01234567890","保密" };Stu s = { "李四",40,"01234567899","男" };结构是一些值的集合,这些值称为成员变量,结构的每个成员可以是不同类型的变量。结构体传参时,参数需要压栈的,系统开销较大,在传参时要穿结构体地址。

2024-07-27 18:15:00 303

原创 过滤器、监听器

在实际开发中,我们项目中会存在很多的资源都需要在登录之后才能访问,所以我们需要在请求到达这些资源之前先判断当前用户是否登录,如果没有应该跳转到登录页面。请求的结果缓存到本地磁盘,若请求相同的资源,不再发送新的请求,而是直接使用缓存中的结果。因为会发现,上面那样处理还是会导致静态资源不可以访问到,而实际开发中,我们需要排除的资源较多的话,尤其是像静态资源,会很麻烦。以上操作能够解决登录检查的需求,但存在大量重复代码,在每个资源的代码中都会编写检查登录的代码,从增加维护成本。对哪些资源做登录校验处理。

2024-07-25 18:45:00 1545

原创 C语言学习记录Day10

初识指针(二):指针-指针int main(){ int arr[10] = { 1,2,3,4,5,6,7,8,9,10 }; printf("%d\n", &arr[9] - &arr[0]); return 0;}指针-指针得到的是中间的元素个数int my_strlen(char* str)//自定义函数运用指针实现strlen函数功能{ char* start = str; char* end = str; wh

2024-07-23 18:15:00 372

原创 C语言学习记录Day9

表达式求值的顺序一部分由操作符的优先级和结合性决定,有些表达式的操作数在求值的过程中可能需要转换为其他类型。是编程预压你的一个对象,利用地址,他的值直接指向存在电脑存储器中另一个地方的值,地址指向该变量单元,称为指针。//->结构体指针操作符。如果表达式不能通过操作符的属性确定唯一的计算路径,那么这个表达式就是存在问题的。C的整型算数运算总是至少以缺省整型类型的精度来进行的,整型提升,指针类型决定了指针进行解引用操作的时候,能够访问的空间的大小。其实就是存放地址的变量,存放在指针中的值被当成地址处理。

2024-07-23 18:00:00 858

原创 C语言学习记录day8

函数调用操作符 接受一个或者多个操作数,第一个操作数是函数名,剩余的操作数就是传递给函数的参数。用来隔开多个表达式,从左向右依次执行,整个表达式的结果是最后一个表达式的结果。警告:对于移位操作符,不要移动负数位,这个标准是未定义的。int main()//不适用临时变量,交换两个数的值。sizeof计算的是变量所占内存空间的大小,单位是字节。右移操作符:1.算术右移:右边丢弃,左边补原符号位。后置++,先使用,后++

2024-07-20 18:30:00 363

原创 C语言学习记录day7

ps.游戏是11.04做的但是11.03创建项目,懒得改名字了。今天跟着视频做了一个C语言小游戏三子棋。三、初始化棋盘(数组)七、判断棋盘是否已满。

2024-07-20 18:15:00 267

原创 Mybatis--分页查询

分页查询则是在页面上将本来很多的数据分段显示,每页显示用户自定义的行数。为了能在页面上显示上述的分页效果,那么我们就得在把页面上的每一个数据封装成到某个对象共享给。:把多个需要共享的数据,封装到一个对象,往后就只需要把数据封装到该对象,再共享该对象即可。,获取页面传递的分页参数,执行查询,将结果共享到请求作用域,请求转发回到。,表示要显示某一页数据的页码,在程序中表示翻页要去往的页面,比如。:数据太分散,需要共享多个数据,不方便统一管理多个数据。增加两个方法,一个查询数据总量,一个查询当前页的数据。

2024-07-18 18:15:00 5502

原创 C语言学习记录day6

通过求n的阶乘 和 斐波那契数 比较循环和递归的区别和使用场景(源码已上传至个人github)****strlen是求字符串长度的,只针对字符串求长度——库函数——要引用头文件。**0xC00000FD:Stack overflow 递归常见错误:栈溢出。****sizeof 是计算变量、数组、类型的大小(单位:字节)——操作符。数组初始化:在创建数组的同时给数组的 内容一些合理的初始值。1.存在限制条件,当满足这个限制条件的时候递归便不再继续。递归 程序调用自身的编程技巧称为地递归。

2024-07-16 18:30:00 535

原创 C语言学习记录day5

传址调用:吧函数外部创建变量的内存地址传递给函数的一种调用函数的方式,可以让函数和函数外边的变量建立起真正的联系,也就是函数内部可以直接操作函数外部变量。形式参数:指函数名后括号中的变量,只有在函数被调用的过程中才实例化 (分配内存单元),在函数调用完成后就自动销毁,只在函数中有效。实际参数:只是传给函数的参数。可以是变量、长岭、表达式、函数等。传值调用:函数的形参和实参分别占有不同内存块,对形参的修改不会影响实参。函数的定义:指函数的具体实现,交代函数的功能实现。把一个函数的返回值作为另一个函数的参数。

2024-07-16 18:15:00 286

原创 C语言学习记录day3

二、演示多个字符从两端向中间移动汇聚。二分法时间复杂度O(log2n)顺序法时间复杂度O(n)一、有序数组元素的查找。三、模拟登录密码场景。

2024-07-12 18:15:00 156

原创 C语言学习记录Day4

C语言练习代码. Contribute to jqy0719/C-code-test- development by creating an account on GitHub.GitHub - jqy0719/C-code-test-: C语言练习代码。

2024-07-12 18:15:00 291 1

原创 Mybatis -过滤查询

属性是字符串类型,用户查询的时候,可能没传此参数或者传的是空字符串,所以我们需要在拼接条件之前进行判断,若用户查询传的是非空且有内容的的字符串时,才按照此条件过滤查询商品信息。根据前面我们对多条件过滤查询的分析得知,用户过滤查询时,请求时会传递可能会传递多个过滤条件的参数来查询对应的数据,又因为这些参数需要在后台多个层次之间进行传递(例如:在商品列表中,用户可以根据自己的需要,按照商品的名称和价格范围对商品进行查询。,这样既可以封装分页查询的参数,又可以封装过滤查询的参数,且减少代码重复。

2024-07-09 16:59:07 1486

原创 C语言学习记录Day2

注:表达式1:初始化部分.表达式2:条件判断部分 表达式3:调整部分。for循环的初始化调整判断都可以省略(判断部分省略,判断条件恒为真)建议for语句的循环控制变量的取值采用“前闭后开区间”的写法。不可再for循环体内修改循环变量,防止for循环失去控制。do...while循环。while(表达式);

2024-07-08 18:21:25 194

原创 C语言学习记录day1

continue在循环中的作用: 终止本次循环,即本次循环中continue后边的代码不在执行,直接进行下一次循环的入口判断。新人学习C语言第一天的大致总结,主要梳理了当天所学的主要内容,希望以后每天都可以坚持。这个例子中的else只会与if(b == 2)中的if相匹配..补充:悬空else(else与距离最近的未匹配的if进行匹配)break在循环中的作用: 停止后期的所有循环,直接终止循环。putchar()的使用(字符的读取打印)else if(表达式2)switch(整形表达式)

2024-07-08 18:19:12 203

原创 WEB编程-了解Tomcat服务器

⽹络的通信,本质上是两个进程(应⽤程序)的通信。操作系统、⽹络管理软件及⽹络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。在⽹络通信协议下,实现⽹络互连的不同计算机上运⾏的程序间可以进⾏数据交换。以上架构各有优势,但是⽆论哪种架构,都需要基于⽹络进⾏通信,那他们是如何通信的?通信协议是对计算机必须遵守的规则,只有遵守这些规则,计算机之间才能进⾏通信。此时的问题,是我们⾃⼰造成的,把资源的名字写错了或者说根本就没。算机指定⼀个唯⼀的标识,通过改标识来找到相应的计算机,⽽。

2024-07-06 18:15:00 822

原创 Mybatis框架的集成使用

基础支撑层:负责最基础的功能支撑,包括连接管理、事务管理、配置加载和缓存处理,这些都是共用的东西,将他们抽取出来作为最基础的组件。为上层的数据处理层提供最基础的支撑。开发工程师建立在框架的基础之上完成开发部分功能 加 框架自身完成部分功能组成一个完整的产品。:指框架自身是一个软件,但是该软件无法直接运行,需要配合其他的程序才可以完成指定的工作。它主要的目的是根据调用的请求完成一次数据库操作。框架是一个半成品,已经对基础的代码进行了封装并提供相应的。:指框架可以完成特定的功能,不同的框架功能不同。

2024-07-04 18:15:00 706

原创 JDBC的应用(二)

事务的隔离性是指一个事务的执行不能被其他事务干扰,即一个事务内部的操作及使用的数据对并发的其他事务是隔离的,并发执行的各个事务之间不能互相干扰。对于每一次数据库连接,使用完后都得断开,不能控制被创建的连接对象数,系统资源会被毫无顾及的分配出去,如连接过多,可能导致内存泄漏,服务器崩溃。持久性是指一个事务一旦被提交,它对数据库中数据的改变就是永久性的,接下来的其他操作和数据库故障不应该对其有任何影响。若同时有几百人甚至几千人在线,频繁的进行数据库连接操作将占用很多的系统资源,严重的甚至会造成服务器的崩溃。

2024-07-02 18:15:00 946

原创 JDBC的使用(一)

大多数企业级应用,数据持久化是将数据保存到各种关系数据库, 而在。来代替拼接,这样语义更加清晰,数据设置也很清晰,所以以后都使用。作为组件,主要的是方法的设计,而方法设计需要注意什么呢?中存的数据则为查询出来的结果,这个结果就是一张表的结果。编写的一组接口组成,接口的实现由各个数据库厂商来完成。而其底层的静态代码块在完成注册驱动工作,将驱动注册到。: 驱动管理对象,主要用于加载注册关系型数据库的。书写实现,实现一个方法测试一个方法并且测试通过。需要获取返回的数据,而这些数据都被存在一个叫。

2024-06-29 18:15:00 592

原创 初识MySQL

随着大数据的不断发展,关系型数据库在数据模型,性能,拓展伸缩性上存在一个的缺点,所以非关系型的数据库现在成了一个极其热门的新领域,非关系数据库产品的发展非常迅速。在开发中,我们需要将表中的数据查询出来保存到内存中,或者把内存中的数据保存到数据库中,此时就需要将数据表的数据和。人和人交流需要语言,人和数据库交流也需要语言,而这个专门特定为程序员和数据库打交道的语言是 SQL 语言。通过选择不同的技术,你能够获得额外的速度或者功能,从而改善你的应用的整体功能。全面,效率高,界面友好,操作容易,但是不跨平台。

2024-06-27 18:15:00 1314

空空如也

空空如也

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

TA关注的人

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