- 博客(86)
- 收藏
- 关注
原创 GIt最新教程通俗易懂
有些时候我们不想把某些文件纳入版本控制中,比如数据库文件,临时文件,设计文件等。打开需要创建Git的任意文件,创建本地仓库。就用了两周的时间开发出来了!就是平时放代码的地方。
2024-08-04 09:46:31
994
1
原创 Redis进阶学习
Autowired@Test设置其序列化:配置属于自己的Config@Bean//JSON序列化配置// 使用StringRedisSerializer来序列化和反序列化redis的key值// Hash的key也采用StringRedisSerializer的序列化方式还可以配置自己的Redisutil就可以简单的将数据获取或设置。
2024-05-08 14:52:45
983
原创 Redis快速学习
Redis(RemoteDictionaryServer)远程字典服务他是一个用C语言开发的开源项目支持网络、可基于内存完成持久化操作的日志型,key-Value数据库支持多种语言的APIredis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。@Autowired@Test设置其序列化:配置属于自己的Config@Bean//JSON序列化配置。
2024-05-08 14:46:41
1197
原创 Spring基础学习——web
原始Javaweb开发中,Servlet充当Controller的角色,Jsp充当View角色,JavaBean充当模型角色,后期Ajax异步流行后,在加上现在前后端分离开发模式成熟后,View就被原始Html+Vue替代。在进行Java开发的时候要遵循三层架构+MVC,Spring操作最核心的就是Spring容器,web层需要注入Service,service层选哟注入Mapper(dao层),web层使用Servlet技术充当的话,需要在Servlet当中获取Spring容器。
2023-11-12 13:54:58
291
原创 Spring学习笔记——AOP(4)
AOP---->面向切面编程是对面向对象编程OOP的升华。OOP是纵向对一个事物的抽象,一个对象包括静态的属性信息,包括动态的方法信息等。而AOP是横向的对不同事物的抽象,属性与属性方法与方法对象与对象都可以组成一个切面,而用这种思维去设计编程的方式叫做面向切面编程//前置通知//后置通知//环绕通知//异常通知//最终通知事务在开发的时候是必不可少的东西,在使用JDBC开发的时候,我们使用的是connection。
2023-11-12 13:30:17
388
原创 MybatisPlus学习笔记
MyBatisPlus:就是相当于开发mybatis的应用小能手,能够简化我们的开发我们可以利用MyBatisPlus的Wrapper来构建复杂的Where条件,然后自己定义SQL语句中剩下的部分基于Wrapper构建where条件@Test//编写条件在mapper方法参数中用Param注解声明wrapper变量名称,必须是ew。
2023-10-28 22:30:50
471
原创 Spring学习笔记注解式开发(3)
非自定义Bean不能像自定义Bean一样使用@Component进行管理,非自定义Bean要通过工厂的方式进行实例化,使用@Bean标注方法即可,@Bean的属性为beanName,如不指定为当前工厂方法名称//将方法返回值Bean实例以@Bean注解指定的名称存储到spring容器中@Bean标注后面不加name值,则将类名赋值为name属性值在参数中注入@Component@Qualifier("userDao") UserDao UserDao//不需要写@Autowired){
2023-10-20 20:12:20
305
原创 Spring学习笔记(2)
以上在xml中配置的Bean都是自己定义的,例如: UserDaolmpl,UserServicelmpl。但是,在实际开发中有些功能类并不是我们自己定义的,而是使用的第三方jar包中的,那么,这些Bean要想让Spring进行管理,也需要对其进行配置配置非自定义的Bean需要考虑如下两个问题:被配置的Bean的实例化方式是什么?无参构造、有参构造、静态工厂方式还是实例化工厂方式;被配置的Bean是否需要注入必要属性加载xml配置文件,解析获取配置中的每个的信息,封装成一个个的对象;
2023-10-20 07:18:38
289
原创 Spring学习笔记(1)
问题一: 层与层之前联系在一起,耦合性高(接口与实现类相互联系)解决方法:Spring提供了第三方来自动加载对象,不用自己手动new出对象,第三方自动提供Bean对象问题二:通用的事务功能耦合在业务代码中,通用的日志功能耦合在业务代码中通用的事务功能指的是一些通用的数据库事务操作,比如开启事务、提交事务、回滚事务等。将这些通用的事务功能耦合在业务代码中意味着业务代码需要自己实现这些事务操作,导致业务代码与事务代码混杂在一起,代码可读性和可维护性降低。
2023-10-15 10:07:56
248
原创 详细学习Mybatis(2)
交给容器去管理事务,但目前使用的是本地程序,没有容器的支持,当mybatis找不到容器的支持时:没有事务。dataSource 元素使用标准的 JDBC 数据源接口来配置 JDBC 连接对象的资源。mybatis不再负责事务的管理,将事务管理交给其他的JavaEE容器。第一种:resource,从类的根路径下开始加载【比url常用】第二种方式:通过idea的报错提示信息。【一般采用这种方式】:这个属性从类的根路径下开始加载。第二种:url,从指定的url位置加载。如果是这样写的话,必须保证类的根下有。
2023-09-25 09:44:58
218
原创 详细学习Mybatis(1)
在文献中看到的framework被翻译为框架1.SSM三大框架: Spring + SpringMVC + MyBatis等……框架其实就是对通用代码的苗装,提前写好了一堆接口和类,我们可以在做项目的时候直接引入这些接口和类(引入框架),基于这些现有的接口和类进行开发,可以大大提高开发效率.框架一般都以jar包的形式存在。(jar包中有class文件以及各种配置文件等。SSM三大框架的学习顺序:MyBatis、Spring、SpringMVC。
2023-09-24 20:47:42
254
原创 JavaWeb基础学习(5)
概念: Filter 表示过滤器,是JavaWeb 三大组件(Servlet、 Filter、Listener)之一.过滤器可以把对资源的请求拦截下来,从而实现一些特殊的功能。过滤器一般完成一些通用的操作,比如: 权限控制、统一编码处理、敏感字符处理等等.概念: Listener表示监听器,是JavaWeb三大组件(Servlet、Filter、Listener)之一。
2023-09-16 19:47:38
755
原创 Javaweb基础学习(4)
概念: Java Server Pages,Java服务端页面一种动态的网页技术,其中既可以定义HTML、JS、CSS等静态内容,还可以定义Java代码的动态内容JSP作用:简化开发,避免了在Servlet中直接输出HTML标签会话:用户打开浏览器,访问web服务器的资源,会话建立,直到有一方断开连接,会话结束。在一次会话中可以包含多次请求和响应会话跟踪:一种维护浏览器状态的方法,服务器需要识别多次请求是否来自于同一浏览器,以便在同一次会话的多次请求间共享数据HTTP协议是无状态。
2023-08-28 15:33:40
553
原创 Javaweb基础学习(3)
B/S架构: Browser/Server,浏览器/服务器架构模式,它的特点是,客户端只需要浏览器,应用程序的逻辑和数据都存储在服务器端。浏览器只需要请求服务器,获取Web资源,服务器把Web资源发送给浏览器即可好处易于维护升级:服务器端升级后,客户端无需任何部署就可以使用到新的版本静态资源: HTML、CSS、JavaScript、图片等。负责页面展现动态资源: Servlet、JSP等。负责逻辑处理数据库: 负责存储数据Web服务器: 负责解析HTTP协议,解析请求数据,并发送响应数据概念。
2023-08-20 18:18:35
1052
原创 Javaweb学习(2)
提供了一套标准化的项目结构Maven提供了一套标准化的项目结构,所有IDE使用Maven构建的项目结构完全一样,所有IDE创建的Maven项目可以通用提供了一套标准化的构建流程(编译,测试,打包,发布.....)提供了一套依赖管理机制Apache Maven是一个项目管理和构建工具,它基于项目对象模型(POM)的概念,通过一小段描述信息来管理项目的构建、报告和文档项目对象模型(Project Object Model)依赖管理模型(Dependency)插件(Plugin)本地仓库。
2023-08-06 08:13:43
803
原创 javaweb基础学习(1)
JDBC就是使用Java语言操作关系型数据库的一套API全称:(Java DataBase Connectivity)Java 数据库连接官方 (sun公司)定义的一套操作所有关系型数据库的规则,即接口各个数据库厂商去实现这套接口,提供数据库驱动jar包我们可以使用这套接口(DBC)编程,真正执行的代码是驱动jar包中的实现类各数据库厂商使用相同的接口,Java代码不需要针对不同数据库分别开发可随时替换底层数据库,访问数据库的Java代码基本不变基本介绍。
2023-07-20 09:20:26
380
原创 MySql进阶(3)
行级锁,每次操作锁住对应的行数据。锁定粒度最小,发生锁冲突的概率最低,并发度最高。应用在InnoDB存储引擎中。InnoDB的数据是基于索引组织的,行锁是通过对索引上的索引项加锁来实现的,而不是对记录加的锁。对于行级锁,主要分为以下三类行锁(Record Lock)︰锁定单个行记录的锁,防止其他事务对此行进行update和delete。在RC、RR隔离级别下都支持。间隙锁(Gap Lock)∶锁定索引记录间隙(不含该记录),确保索引记录间隙不变,防止其他事务在这个间隙进行insert,产生幻读。
2023-07-12 09:29:42
220
原创 MySql进阶(2)
存储过程是事先经过编译并存储在数据库中的一段SQL语句的集合,调用存储过程可以简化应用开发人员的很多工作,减少数据在数据库和应用服务器之间的传输,对于提高数据处理的效率是有好处的。存储过程思想上很简单,就是数据库SQL语言层面的代码封装与重用。封装,复用可以接受参数,也可以返回数据减少网络交互,效率提升变量用户定义变量是用户根据需要自己定义的变量,用户变量不用提前声明,在用的时候直接用“@变量名”使用就可以。其作用域为当前连接。
2023-07-08 17:48:32
1199
原创 MySql进阶篇(1)
存储引擎就是存储数据、建立索引、更新/查询数据等技术的实现方式。存储引擎是基于表的,而不是基于库的,所以存储引擎也可被称为表类型。在创建表时,指定存储引擎查看当前数据库支持的存储引擎特点InnoDBMyISAMMemory存储限制64TB有有事务安全支持锁机制行锁表锁表锁B+tree索引支持支持支持Hash索引支持全文索引高低N/A空间使用支持(5.6版本之后)支持内存使用高低中等批量插入速度低高高支持外键支持。
2023-06-25 08:06:26
1180
原创 C++基础学习(2)
运算符重载概念:对已有的迷算符重新进行定义,赋予其另一种功能,以适应不同的数据类型总结:左移运算符:作用:作用:1.4 赋值运算符的重载默认构造函数(无参,函数体为空)默认析构函数(无参,函数体为空)默认拷贝构造函数,对属性进行值拷贝赋值运算符 operator=,对属性进行值拷贝为什么要进行赋值运算符的重载:1.5 关系运算符的重载作用: 二、继承继承是面向对象三大特性之一总结:语法派生类中的成员,包含两大部分:继承的语法:继承方式一共有三种:public继承如下 ,其他
2023-06-19 23:51:59
672
原创 C++基础学习(1)
在程序里,有些私有属性 也想让类外特殊的一些函数或者类进行访问,就需要用到友元的技术。在C++中,类内的成员变量和成员函数分开存储只有非静态成员变量才属于类的对象上。C++中函数的形参列表里可以有占位参数,用来做占位,调用函数时必须填补该位置。静态成员就是在成员变量和成员函数前加上关键字static,称为静态成员。在C++中,函数的形参列表中的形参是可以有默认值的。就是然后类外的成员函数来访问当前类当中的私有变量。本质:引用的本质在c++内部实现是一个指针常量。在进行引用的时候必须初始化。
2023-06-11 09:17:38
1135
原创 Linux学习
借助虚拟化技术,我们可以在系统当中,通过软件:模拟计算机硬件,并且给虚拟硬件安装真实的操作系统,这样我们就可以得到一个虚拟的电脑,给我们提供Linux系统。
2023-06-04 19:43:30
812
原创 MySql基础学习(2)
概述指从多张表中查询数据笛卡尔积笛卡尔乘积是指在数学中,两个集合A集合和 B集合的所有组合情况。(在多表查询时,需要消除无效的笛卡尔积)事务是一组操作的集合,它是一个不可分割的工作单位,事务会把所有的操作作为一个整体一起向系统提交或撤销操作请求,即这些操作要么同时成功要么同时失败。默认MvsQL的事务是自动提交的,也就是说,当执行一条DML语句,MvSQL会立即隐式的提交事务。
2023-05-29 17:51:10
1940
原创 MySql基础学习(1)
名称全称简称数据库存储数据的仓库,数据是有组织的进行存储数据库管理系统操纵和管理数据库的大型软件SQL操作关系型数据库的编程语言,定义了一套操作关系型数据库统一标准1.DDL-数据库操作SHOW DATABASES CREATE DATABASE 数据库名, USE 数据库名;SELECT DATABASE) DROP DATABASE 数据库名2.DDL-表操作SHOW TABLES CREATE TABLE 表名(字段 字段类型,字段 字段类型);DESC 表名;
2023-05-26 19:28:50
1935
原创 Java基础学习(18)反射、动态代理
反射允许对封装类的字段,方法和构造函数的信息进行编程访问就是把一个类当中的所有有关的数据全部拿出来,获取到,便于后面的学习利用反射可以获取到类当中的所有信息想象图简单理解就是通过代理去添加其他想要添加的功能,还不用去修改原先的代码,以防出错通过接口的方式把所有的方法进行传输代理为什么需要代理?代理可以无侵入式的给对象增强其他的功能调用者------>代理--------->对象代理长什么样?代理里面就是对象要被代理的方法Java通过什么来保证代理的样子?
2023-05-20 11:05:29
965
原创 Java基础学习(17)网络编程
在网络通信协议下,不同计算机上运行的程序,进行的数据传输应用场景即时通信、网游对战、金融证券、国际贸易、邮件、等等不管是什么场景,都是计算机跟计算机之间通过网络进行数据传输Java中可以使用java.net包下的技术轻松开发出常见的网络应用程序。
2023-05-18 21:08:29
713
原创 Java基础学习(16)多线程
线程线程是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位.应用软件中互相独立,可以同时运行的功能进程进程是程序的基本执行实体软件中的耗时操作拷贝、迁移大文件加载大量的资源文件所有的聊天软件所有的后台服务器……同时这些多项任务,提升运行效率以前写多线程的弊端用到线程的时候就创建用完之后线程消失会造成资源的浪费所以现在出现了线程池来存储线程创建一个池子,池子中是空的。
2023-05-17 17:49:20
1018
原创 Java基础学习(15)
API文档:https://apidoc.gitee.com/dromara/hutool/Commons-io是apache开源基金组织提供的一组有关IO操作的。中文使用文档: https://hutool.cn/docs/#/官网:https://hutool.cn/使用对象输出流将对象保存到文件时会出现。解压本质: 把每一个。
2023-05-12 19:59:22
886
1
原创 Java基础学习(13)
细节2:如果文件不存在会创建一个新的文件,但是要保证父级路径是存在的细节3:如果文件已经存在,则会清空文件,如果不想清空可以打开续写开关。细节:如果write方法的参数是整数,但是实际上写到本地文件中的是整数在字符集上对应的字符。操作本地文件的字节输入流,可以把本地文件中的数据读取到程序中来。操作本地文件的字节输出流,可以把程序中的数据写到本地文件中。细节1:参数是字符串表示的路径或者File对象都是可以的。纯文本文件:就是用记事本打开的文件,可以读得懂的文件。字符流的底层其实就是字节流。
2023-05-08 11:38:40
577
原创 Java基础学习(12)
防止再出现异常时,没有适合说明异常的工具定义异常类写继承关系空参构造带参构造package 异常;} }package 异常;} }throw new RuntimeException(name + "范围为长度3-10");//运行时错误 } this . name = name;throw new RuntimeException(age + "超出范围");
2023-05-06 21:23:02
582
原创 Java基础学习(11)
ForEach其实就是利用第二种方式进行遍历,依次得到每一个键和值再调用accept方法。,那么直接把键值对对象添加到map集合当中,方法返回null。,那么会把原有的键值对对象覆盖,会把被覆盖的值进行返回。从添加的节点开始,不断的往父节点找不平衡的节点。因为如果是全为黑节点,要调整。:不想让别人修改集合中的内容。: 先局部左旋,再整体右旋。: 先局部右旋,再整体左旋。,如果全为红色节点,只调整。
2023-05-01 10:13:50
1354
原创 Java基础学习(10)
此处E可以理解为变量,但是不是用来记录数据的,而是记录数据的类型,可以写成:T、E、K、V等。只有存在的元素才能删除,所以不存在就会返回一个false,反之true。:当一个类中,某个变量的数据类型不确定时,就可以定义带有泛型的类。类,无论添加什么都是返回true(添加成功),因为List类。: 在遍历的过程中需要添加元素,请使用列表迭代器。:在遍历的过程中需要删除元素,请使用迭代器。:添加位置后的每个数据后移,再添加元素。类,如果有重复的就会添加不成功,返回。:我们在添加元素的时候,如果为。
2023-04-23 21:45:49
454
原创 Java基础学习(9)
文本匹配器,作用按照正则表达式的规则去读取字符串,从头开始读取。3.此时s1是student类型,所以最终还是会调用student中的equals方法。1.方法的底层会判断s1是否为nu11,如果为nu11,直接返回false。equals 如果没有重写,比较地址值,如果重写了,就比较属性值。2.如果s1不为nul1,那么就利用s1再次调用equals方法。比如二进制中,那么只能写@和1,写其他的就报错。2.字符串中的数字必须要跟进制吻合。1.字符串中的数字必须是整数。数据不区分大小写……
2023-04-17 07:30:04
539
原创 Java基础学习(8)
接口用关键字interface来定义public interface 接口名 {接口不能实例化接口和类之间是实现关系,通过implements关键字表示public class 类名 implements 接口名 {接口的子类(实现类)1 .要么重写接口中的所有抽象方法 2 .要么是抽象类。
2023-04-09 23:34:28
177
原创 Java基础学习(7)
this:理解为一个变量,表示当前方法调用者的地址值super:代表父类存储空间同类型的对象,表现出的不同形态父类类型 对象名称 = 子类对象有继承关系有父类引用指向子类对象有方法重写多态的好处:使用父类型作为参数,可以接收所有子类对象体现多态的扩展性与便利。
2023-04-03 06:12:14
1907
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人