- 博客(63)
- 收藏
- 关注
原创 SpringDataRedis如何使用?
使用配置文件,修改redis的String和Hash数据序列化方式@Bean//创建RedisTemplate对象//设置连接工厂//创建Json序列化工具//设置String的序列化//设置Hash的序列化//返回。
2025-11-25 09:00:00
640
原创 idea创建类时自动添加文档注释
在 IntelliJ IDEA 中,可以通过配置 Live Templates 和 File Templates 来实现创建类时自动添加文档注释。
2025-09-02 20:43:37
509
原创 函数式编程从入门到精通
Lambda是JDK8中一个语法糖。他可以对某些匿名内部类的写法进行简化。它是函数式编程思想的一个重要体现。让我们不用关注是什么对象。而是更关注我们对数据进行了什么操作。不关注类名和方法名,只关注参数(数据)和方法体(操作Java8的Stream使用的是函数式编程模式,如同它的名字一样,它可以被用来对集合或数组进行链状流式的操作。可以更方便的我们对集合或数组操作。我们在编写代码的时候出现最多的就是空指针异常。所以在很多情清况下我们需要做各种非空的判断。if(author!=null) {
2025-08-21 02:46:13
940
原创 MybatisPlus从入门到精通
将查询条件封装成对象。抽象类不能创建对象,重点在实体类。@Test//设置排序字段和排序的方式参数1:如果排序字段的值存在nuLL的时候,是否还要作为排序字段参与排序,参数2:是否是升序排序,参数3:排序字段查询条件通过字符串编写直接拼在where后面@Test//1.创建QueryWrapper对象//2.构建条件查询语句//3.完成查询【1】在UserMapper.xml映射配置文件中提供查询语句</select></mapper>
2025-08-08 22:22:57
913
原创 Maven入门到精通
POM(Project Object Model))项目对象模型,它是Maven的核心组件。它是Maven中的基本工作单元。它是一个xml文件,以pom.xml驻留在项目的根目录中。POM不仅包含有关项目的信息及Maven用于构建项目的各种配置的详细信息,还包含目标和插件。所有Maven项目必须要遵循的目录规范.将java源码和测试代码拆分.便于项目的管理和扩展.如图,可以打开项目结构,通过选中文件夹点击红框中的内容给文件夹赋予对应属性也称为gv定位。使用三个标签来唯一定位jar资源。
2025-08-06 22:38:09
1354
原创 JUC并发编程(下)
首先分析之前的线程安全单例代码上述代码的问题是synchronized范围太大,导致每次调用getInstance()都会经过线程安全保护,影响性能,其实只需在第一次创建单例是进行线程安全保护即可,于是有了下图的双重校验的优化代码用享元模式和多线程知识保护数据库连接池的线程安全,每个web请求都对应一个线程,都要从连接池获取连接,归还连接,要保证这些方法的线程安全连接池有大小,支持扩容和收缩MyConnection类实现Connection即可,下列代码中没有体现代码实现i < 5;i++) {
2025-05-21 20:59:11
342
原创 JUC并发编程(上)
1.使用join后线程不能执行其他操作,而保护性暂停可以在等待过程中执行其他操作2.使用join获得的结果的变量是全局的,而保护性暂停的变量是局部的log.debug("等待结果..");log.debug("结果是:{}", result);}, "t1");log.debug("进行下载..");// 等待下载完成结果try {String result = "下载完成";}, "t2");t1.start();t2.start();try {
2025-05-11 22:18:26
1005
原创 SpringCloud微服务知识点
单体架构时,前端只需请求8080端口就可拿到任意数据。现在项目被拆成多个服务,端口也不相同,且到线上部署时,ip和端口也可能发生改变,此时前端该怎么办呢?(服务地址过多,前端不知道请求谁)在单体项目中,只要用户登录和校验成功,所有业务都能拿到用户的登录信息完成业务。现在每个服务都可能需要登录信息,如果各自做登录校验,不仅麻烦,因为要给服务发送密钥,还有密钥泄露风险。对外只暴露网关接口,网关将后端的微服务隐藏起来,对于前端来说,和之前的单体架构没有不同。
2025-04-30 15:16:15
1056
原创 JVM知识点(一)---内存管理
Program Counter Register程序计数器(寄存器)是记住下一条jvm指令的执行地址是线程私有的不会存在内存溢出线程私有指的是:每个线程有一个自己的计数器。在线程即将切换时,计数器记住下次要执行指令的地址,等线程再次切换回来时,会根据计数器记住的指令地址,继续执行上次未执行完的流程。Java Virtual Machine Stacks(Java虚拟机栈)每个线程运行时所需要的内存,称为虚拟机栈每个栈由多个栈帧(Frame)组成,对应着每次方法调用时所占用的内存。
2025-04-26 21:33:09
989
原创 RPC通信原理实战
协议私有,通信两端要一致需要自研协议解析库可以做到协议精简,性能和安全性更高总结:对于一些开源的RPC框架,大都会自研RPC通信协议,同时也支持HTTP/1.1IO模型。
2025-04-23 15:18:58
983
原创 Git基础
Git是一个,主要用于管理开发过程中的源代码文件(Java类、ml文件、html页面等)。通过Gt仓库来存储和管理这些文件,分为两种:●开发人员自己电脑上的Git仓库●远程服务器上的Git仓库提交,将本地文件和版本信息保存到本地仓库推送,将本地仓库文件和版本信息上传到远程仓库拉取,将远程仓库文件和版本信息下载到本地仓库。
2025-03-22 23:15:35
992
原创 Redis基础及常用命令
Redis是一个基于的key-value结构数据库。Redis是一个开源的内存中的数据结构存储系统,它可以用作:数据库、缓存和消息中间件。Redis是用C语言开发的一个开源的高性能键值对(key-value)数据库,官方提供的数据是可以达到100000+的QPS(每秒内查询次数)。它存储的value:类型比较丰富,也被称为结构化的NoSql数据库。NoSq(Not Only SQL),不仅仅是SQL,泛指非关系型数据库。NoSql数据库并不是要取代关系型数据库,而是关系型数据库的补充。
2025-03-22 00:36:27
926
原创 JUC并发知识点(一)
一锁:synchronized二并:并发(一对多),并行(多对多)三程:进程 线程 管程进程:系统的应用程序。占用一定的内存空间和系统资源。线程:轻量级进程。同一进程有一个/多个。操作系统时序调度的基本单元。管程:Monitor(监视器),也就是我们平时所说的锁。
2025-02-06 09:00:00
943
原创 MySQL知识点总结(一)
数据定义(DDL):创/改/删/名/清(cadrt)数据库对象:表/视图/存储/函数/触发器/事件数据操作(DML):增/删/改/查(idus)操作数据库对象数据控制(DCL):提/回/保/赋/收(权限)(crsgr)
2025-02-05 13:22:18
446
原创 ArrayList底层原理
当添加元素为一个一个添加时,首次添加第一个元素,会创建一个长度为10的数组,存满时会扩容1.5倍,新建一个长度为15的数组,然后把之前的数据放进去。如果添加多个元素,超过了1.5倍,则创建的数组以实际为准。
2024-07-03 06:28:47
207
原创 字符串知识点
1.Strin是Java定义好的一个类。定义在java.lang包中, 所以使用的时候不需要导包。2.Java程序中的所有字符串文字(例如"abcdefg")。都被实为此类的对象。3.字符串不可变,它们的值在创建后不能被更改StringBuilder 可以看成是一个容器,创建之后里面的内容是可变的作用:提高字符串的操作效率。
2024-07-02 00:51:31
538
原创 Java-File
File概念File三种构造方法创建文件路径File的成员方法1.文件和文件夹判断2.文件获取3.文件和文件夹创建4.文件和文件夹的删除5.文件夹获取并遍历
2024-06-30 00:42:06
241
原创 Java-方法引用
把已经有的方法拿过来用,当做1、引用处必须是函数式接口2、被引用的方法必须已经存在3、被引用方法的形参和返回值 需要跟抽象方法保持一致4、被引用方法的功能要满足当前需求。
2024-06-27 23:08:26
504
1
原创 静态内部类&局部内部类
创建的格式:外部类名.内部类名 对象名=new外部类名.内部类名();调用的格式:先创建对象,用对象调用调用的格式:外部类名.内部类名.方法名();
2024-06-24 23:11:18
206
原创 Java-内部类&成员内部类
在一个类的里面,再定义一个类。举例:在A类的内部定义B类,B类就被称为内部类内部类表示的事物是外部类的一部分内部类单独出现没有任何意义。
2024-06-24 22:27:28
439
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅