- 博客(62)
- 收藏
- 关注
原创 Spring事务管理
介绍了事务的概念,事务的特性,JDBC 事务管理的步骤和操作过程,以及Spring事务管理的两种实现方式:编程式事务管理和声明式事务管理。
2025-03-23 22:12:06
1136
原创 ThreadLocal
方法摘要Tget ()返回此线程局部变量的当前线程副本中的值。返回此线程局部变量的当前线程的“初始值”。voidremove ()移除此线程局部变量当前线程的值。void将此线程局部变量的当前线程副本中的值设置为指定值。
2024-11-20 12:01:31
674
原创 任务调度工具Spring Test
Spring Task 是Spring框架提供的任务调度工具,可以按照约定的时间自动执行某个代码逻辑。定时自动执行某段Java代码信用卡每月还款提醒 银行贷款每月还款提醒 火车票售票系统处理未支付订单 入职纪念日为用户发送通知。
2024-11-16 14:17:20
462
原创 流浪宠物预约上门APP,包含用户端管理端,SQLite数据库;android移动开发基础实战;android课设项目
Android--流浪宠物预约上门APP。
2024-11-12 16:48:25
119
原创 全双工通信协议WebSocket——使用WebSocket实现智能学习助手/聊天室功能
WebSocket是基于TCP的一种新的网络协议。它实现了浏览器与服务器的全双工通信——浏览器和服务器只需要完成一次握手,两者之间就可以创建的连接,并进行双向数据传输HTTP 协议是一种无状态的、无连接的、单向的应用层协议。它采用了请求/响应模型。通信请求只能由客户端发起,服务端对请求做出应答处理。这种通信模型有一个弊端:HTTP 协议无法实现服务器主动向客户端发起消息。这种单向请求的特点,注定了如果服务器有连续的状态变化,客户端要获知就非常麻烦。
2024-11-04 16:02:56
953
原创 在Idea中配置Tomcat并运行第一个servlet程序——初试Jakarta EE项目
Jakarta EE(以前称为Java EE,即Java Platform, Enterprise Edition)是用于构建和部署可移植、健壮、可扩展且安全的服务器端Java应用程序的标准。它由Eclipse基金会管理,是一套全面的技术规范和API集合,旨在帮助企业开发人员创建企业级应用。
2024-10-14 11:58:11
666
原创 基于springboot Vue3的两种图形验证码工具——vue3-puzzle-vcode纯前端防人机图形滑动验证码和kaptcha图片文字验证码
生成工具,基于SimpleCaptcha的开源项目。使用Kaptcha 生成验证码十分简单并且参数可以进行自定义。只需添加jar包配置下就可以使用,通过配置,可以自己定义验证码大小、颜色、显示的字符等等。,属于NoSQL数据库的一种。它以高性能、支持丰富的数据结构、持久化特性、复制、集群以及发布/订阅等特性而闻名。kaptcha 是谷歌开源的非常实用的。该配置类用于给验证码的设置提供配置,如宽高,颜色等等。Redis工具类(整合Redis的一些操作)点击开始验证按钮弹出验证弹窗。Redis是一个开源的。
2024-10-13 23:34:02
2147
1
原创 CentOS7 虚拟机操作系统安装及相关配置教程
(NAT 模式,即网络地址转换模式,是一种将内部网络的私有 IP 地址转换成可以在公共网 络上路由的合法 IP 地址的技术。NAT 模式的主要作用是允许多个设备共享一个公网 IP 地址 进行互联网连接,有效解决了 IPv4 地址不足的问题,并提供了一定程度的网络安全隔离。需要注意的是:在 CentOS 7 中,如果 ens33 的网络配置文件(如 /etc/sysconfig/network-scripts/ifcfg-ens33)是只读的,这通常意味着当前用户没有 足够的权限来编辑该文件。
2024-10-08 22:39:27
1612
原创 Spring Validation 参数校验框架
业务需求总是比框架提供的这些简单校验要复杂的多,已有的注解不能满足所有的校验要求,特殊的情况需要自定义校验(自定义校验注解)自定义约束注解@Documented//元注解/***元注解 标明注解可以用在哪里,属性,方法,类....我们这里用到属性上,只需有field即可*///标明我们的注解会在哪个阶段保留,源码,编译,运行,//用来指定谁给注解提供校验规则validatedBy = {StateValidation.class}//指定提供校验规则的类。
2024-10-07 20:55:41
1509
1
原创 自动映射枚举处理器 | Mybatis-Plus
***//*** 获取值* @return 值*/@GetterMAN(0, "男"),WOMAN(1, "女");
2024-09-09 10:51:51
1990
1
原创 HTTP中常用的4种请求方式——前端如何发送?后端怎么接受?
GET请求是HTTP协议中的一种请求方法,主要用于从服务器获取资源。它是一种简单、安全且可缓存的请求方式,常用于在Web浏览器中访问网页或发送数据。GET请求通过将请求参数附加到URL中,以查询字符串的形式出现,以便将信息发送给服务器。这种请求方法适用于获取数据,而不是修改数据,因此它通常用于查询操作,如获取网页内容、图片、视频等资源。参数暴露在URL中,存在安全隐患。受到URL长度的限制,无法传输大量数据。具有幂等性,多次请求得到的结果是相同的。响应结果可以被浏览器缓存。
2024-09-02 10:23:06
2717
原创 Redis缓存——缓存更新策略和常见的缓存问题
一句话:因为速度快,好用缓存数据存储于代码中,而代码运行在内存中,内存的读写性能远高于磁盘,缓存可以大大降低用户访问并发量带来的服务器读写压力实际开发过程中,企业的数据量,少则几十万,多则几千万,这么大数据量,如果没有缓存来作为"避震器",系统是几乎撑不住的,所以企业会大量运用到缓存技术;
2024-08-14 13:37:25
2427
原创 Java项目实战《智能学习辅助系统》,集springboot+Vue3的全栈项目,轻松掌握springboot,mybatisplus,redis,websocket,elementplus等框架技术
智能学习辅助系统》基于当前流行的等技术框架进行开发,将带领有一定Java基础且了解和有一定web前端基础且了解的初学者,体验一次比较全面的Java项目全栈开发,帮助各位学者巩固所学知识和扩展学习~《智能学习辅助系统》分为管理端和用户端,其中用户端:用户根据唯一的学号进行登录后访问主界面,其中用户可以学习管理员发布的文章,用户之间可以发布话题讨论,每个话题下可以进行评论,其中有不懂的问题可以询问智能学习机器人助手~
2024-07-31 20:25:18
966
原创 Java方法引用
方法引用就是把已经有的方法拿过来用,当做函数式接口中抽象方法的方法体比如在Stram流中我们要利用map将字符串整数转换为int类型,就可以使用方法引用代替实现Function接口。
2024-07-05 12:53:53
2007
原创 web前端课程设计——农产品购物车
该课程设计使用的环境为:HTML+css+JavaScript,vue3,creat-vue脚手架工具,vscode编辑器其中实现的功能为:购物车管理,商品展示。1.购物车管理中包含对商品数量进行加减,对商品进行全选或反选操作,删除单个商品或批量删除商品。2.商品展示包含对购物车中的商品进行渲染展示,例如改变数量总金额进行改变等等。
2024-06-24 20:46:54
791
原创 JavaScript基础
alert('咬我啊--');</script>浏览器是按照代码在文件中的顺序加载的,一般会将<script>放在HTML的底部附近1.定义一个js文件2.然后<script src="文件.js">
2024-06-10 16:20:09
1081
原创 数据库小项目——叮叮移动业务大厅(三层架构+MySQL数据库)
该项目主要使用技术为,其中也包含了一些对于文件的写入和读取操作。项目结构采用三层架构,后端的业务逻辑清晰明了。
2024-05-22 17:55:52
618
原创 Java——正则表达式
①Pattern类为正则表达式的编译表现形式②Matcher类为Pattern对Character sequence(文本)执行匹配操作的引擎(文本匹配器)①Pattern类②Matcher类正则表达式其实就是字符拼凑出来的规则⑴字符类其中表示对一个字符的匹配⑵预定义字符其中表示对一个字符的匹配反斜线字符 ('\') 用于引用转义构造,同时还用于引用其他将被解释为非转义构造的字符。因此,表达式 \\ 与单个反斜线匹配,而 \{ 与左括号匹配。
2024-05-19 15:16:01
979
原创 Java——多线程
当我们查看newFixedThreadPool时,可以看到它的底层是创建了一个ThreadPoolExecutor对象ThreadPoolExecutor才是真正的线程池对象,它相比于前面的线程池来说更加灵活。
2024-05-13 14:16:14
1044
原创 Java数据结构——哈希表
哈希散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。
2024-05-06 08:30:13
1754
原创 Java数据的保存——File
File对象就表示一个路径,可以是文件的路径,也可以是文件夹的路径其中在Java中路径分为两种相对路径:不带盘符,相对于当前项目而言绝对路径:带盘符。
2024-04-29 08:33:47
1188
原创 Java数据传输的通道——IO流
Java中的IO流是一种计算机用语,主要是用于处理数据的传输。IO流是数据传输所需的通道,用于实现数据在程序间的有序传输,可以提高数据传输效率和稳定性也就是IO流用于读写文件中的数据比如游戏的进度需要备份,这就是写。在下次登录游戏时数据还在,这就是读IO流中以程序为参照物,程序向文件中读取数据,程序向文件中写入数据。
2024-04-22 14:20:01
703
原创 Java集合进阶——双列集合
⑴方法细节①put 添加数据时若键存在,那么会将被覆盖的值返回⑵常用方法集合中最重要的莫过于增删改查,但是Map中没有定义set(修改元素)的方法但是我们可以put集合的特殊机制进行元素的修改与Map一致。
2024-04-15 15:09:45
1145
原创 Java集合进阶——单列集合
数组+链表+红黑树⑴引用构造方法时,方法底层会创建一个默认长度为16,加载因子为0.75的数组⑵添加元素时,方法会根据元素的哈希值跟数组的长度计算出应存入的位置⑶判断当前位置是否有元素如果没有元素则直接存入;如果有元素则会通过equals方法比较元素属性值是否一样,一样的话表示元素重复,不存;不一样的话存入数组,形成链表细节:当链表长度超过8且数组长度大于等于64时,链表会自动转换为红黑树,从而提高查找效率LinkedHashSet是HashSet的子类,其完全继承了父类中的方法。
2024-04-08 18:31:43
1107
原创 Java程序运行的问题——异常
自定义的异常用法通常包含四步:1.定义异常类2.写继承关系3.空参构造4.代参构造如下:我自定义了一个异常类NameFormatException,用来在用户年龄错误时抛出//判断年龄是否符合return age;注:文章来自闫军锋老师课堂笔记扩充修改。
2024-04-01 18:22:09
697
原创 Java函数式接口和Lambda表达式
函数式接口(Function interface也叫作功能性接口),一个接口里面只包含一个函数的接口,jdk8提供@FunctionalInterface,作为声明函数式接口的注解,但这是非必须的,只要定义的接口符合函数式接口标准(一个接口中只有一个方法),虚拟机会自动判断。Lambda表达式只能简化函数式接口(只有一个抽象方法的接口)的匿名内部类的写法。函数式编程是一种思想特点,忽略面向对象的复杂语法,强调做什么,而不是谁去做。lambda表达式是实现函数式接口的语法表达式。{}对应着方法的方法体。
2024-04-01 16:21:06
309
原创 游客管理+导航系统(地图显示并实时更新线路)——MySQL数据库+javase+GUI+迪杰斯特拉算法
记录大二上学期——数据结构项目实训,要求实现求得两点的最短路径(无向赋权图)本人—hl—一人完成代码的实现,废话不多说直接看功能所需技术:javase+数据库统一工具:idea编辑器,Java11,MySQL数据库mysql-8.0.35-winx64(用户信息,用户的留言信息,各个景点)
2024-01-05 18:49:45
582
1
原创 Java基本数据类型的包装类
在Java中提供了两种类型系统,基本类型与引用类型。基本类型在于提高效率,引用类型可以提供更多功能,如果我们想要基本类型像对象一样操作,我们就可以使用基本类型对应的包装类例如:我们可以利用Integer中的静态方法parseInt将字符串整数转变为int类型;
2023-11-17 08:46:23
221
原创 头歌Java数据结构实训作业——二叉树
本关任务:构建一棵二叉搜索树,向其中添加结点。平台将创建用户补全后的BSTree类的对象;调用对象的方法,向树中添加结点;调用对象的preOrder()方法执行前序遍历;调用对象的inOrder()方法执行中序遍历;调用对象的方法执行后序遍历;接着根据程序的输出判断程序是否正确。
2023-11-11 16:46:43
2177
原创 头歌Java数据结构实训作业——常用算法图论
相关知识:折半查找又叫作二分查找,是一种在有序数组中查找某一特定元素的搜索算法,使用二分可以极大地缩小我们搜索的时间复杂度。
2023-11-05 14:25:00
2030
原创 头歌Java数据结构实训作业——线性表队列与栈
本关队列的数组实现采用的是循环数组,循环数组不用像栈数组实现那样,容量满就扩容,会造成内存的浪费,循环数组可以极大的重复利用已经浪费的空间,但其缺点也很明显,当其容量小而存入的数多时,会造成数据的覆盖。首先是添加操作,这里我们要考虑的是,添加第一个元素时,因为此时的head=tail,因此在对尾指针的指针更改时,头指针也顺带改了,所以我们就不需要考虑添加的位置了。其中的出队操作在队首进行,入队操作在队尾进行,其中的操作与单链表的添加删除逻辑基本一致,因为有front指针,因此多了一个对front的指向。
2023-11-02 00:35:25
3743
原创 Java常见API——操作集合的工具Collections
Java类可大致分为三个类:测试类,工具类以及JavaBean类其中测试类就是我们常用的main方法Javabean类就是对一类事物的描述类工具类是帮我们做一些事情的类,但是不描述任何事物的类。
2023-10-25 10:07:35
94
原创 Java常见API——操作数组的工具Arrays
Java类可大致分为三个类:测试类,工具类以及JavaBean类其中测试类就是我们常用的main方法Javabean类就是对一类事物的描述类工具类是帮我们做一些事情的类,但是不描述任何事物的类。
2023-10-17 19:39:55
312
原创 Java基础算法——AVL树
二叉搜索树在插入和删除时,节点可能失衡如果一个节点的左右孩子高度差超过1,则此节点失衡常规情况下,面对平衡的节点我们的查询效率是Olog n,但面对失衡的情况,最坏能达到On。
2023-09-22 09:03:27
98
原创 当我基本类数组转包装类时在new+valueOf,当我数组转集合时还在new+copy...
当哥们在开开心心的刷力扣题时,好不容易遇到一个sort方法的降序使用,然后飞速的写下糟糕糟糕,忘记了sort不能用int类型数组,那怎么办,算了转型吧!然后哥们一顿操作for+ valueOf忙的不易乐乎,大功告成,真不愧是我啊?不是吧?怎么还有人这么操作?太low了,真是太low了,我不允许有人还不会数组的转型,你这是对Stream流的大不敬!该不会你就只学了map吧?mapToInt不会不知道吧?
2023-09-16 09:49:19
152
游客管理+导航系统(地图显示并实时更新线路)-MySQL数据库+javase+GUI+迪杰斯特拉算法
2024-05-22
安装docker失败
2024-10-07
Redis存储时碰到枚举变量,存储的value不是我想要返回的,怎么解决?
2024-09-14
TA创建的收藏夹 TA关注的收藏夹
TA关注的人