自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 MyBatis-Plus 的 Page分页工具PageResult

1. 创建分页对象:调用getPage()方法 ——根据前端传的 “页码(比如第 2 页)” 和 “每页条数(比如 10 条)”,创建一个 “分页容器”(相当于提前准备好 “第 2 页的 10 个位置”)。2. 构建查询条件:调用getWrapper(query)方法 —— 把前端传的查询参数(比如 “报告名称模糊搜”“部门 ID”)转换成数据库能识别的查询规则(比如 SQL 里的like、eq)。

2025-09-09 11:10:01 494

原创 在Mybatis plus中如何使用自定义Sql

但是基于自定义SQL结合Wrapper的玩法,我们就可以利用Wrapper来构造查询条件 然后手写Select以及From部分,从而实现多表查询。所以,MybatisPlus提供了自定义SQL功能,可以让我们利用Wrapper生成查询条件,再结合Mapper.xml编写SQL。由于条件是in语句,只能将Sql写在Mapper.xml文件中然后使用foreach来生成动态的SQL。利用Wrapper中自定义条件结合自定义SQL实现多表查询的效果。​然后在UserMapper中自定义SQL:、

2025-09-09 10:51:00 291

原创 EasyExcel:阿里开源的高效 Excel 处理工具,轻松解决 POI 内存溢出问题

EasyExcel 是阿里巴巴开源的一个基于 Java 的 Excel 处理工具,它重写了 POI 对 Excel 的解析方式,通过事件驱动模式和增量解析的方式,在读取 Excel 时不会将整个文件加载到内存中,而是逐行解析,大大降低了内存占用。通过注解定义 Excel 与实体类的映射关系@Data// index表示列的索引,value表示列名@ExcelProperty(index = 0, value = "姓名")

2025-09-04 16:50:25 967 1

原创 《Docker 零基础入门到实战:容器化部署如此简单,运维效率直接拉满》

Docker 是一种容器化技术,允许开发者将应用程序及其依赖打包到一个轻量级、可移植的容器中。容器与虚拟机不同,它直接运行在宿主机的操作系统上,共享系统内核,因此更加高效和快速。

2025-09-04 14:50:01 619

原创 《Java Stream 流从入门到精通:一行代码搞定集合操作,效率提升 10 倍》

在Java流(Stream) API中,sorted方法用于对流中的元素进行排序操作。它支持两种重载形式,可以根据需要选择无参数或传入自定义比较器(Comparator下面我将逐步解释其用法,并提供真实可靠的示例代码,帮助您理解如何高效实现排序。

2025-09-03 14:29:45 800

原创 微信小程序 前八周课

注册小程序中的一个页面。接受一个 类型参数,其指定页面的初始数据、生命周期回调、事件处理函数等。 页面显示/切入前台时触发。页面初次渲染完成时触发。一个页面只会调用一次,代表页面已经准备妥当,可以和视图层进行交互。页面隐藏/切入后台时触发。 如底部 切换到其他页面,小程序切入后台等。页面卸载时触发。如wx.redirectTo或wx.navigateBack到其他页面时。监听用户下拉刷新事件。监听用户上拉触底事件。监听用户滑动页面事件。参数 Object object:注意:请只在需要的时候才在 pag

2024-03-26 09:47:48 2328

原创 python大题补充

要求使用random模块的randint()函数随机生成20以内的数字,用户有五次机会从键盘输入猜测的数字,猜大提示猜大了,猜小提示猜小了,若在规定次数内猜对则退出程序,否则继续猜数字直至次数用尽。(1)创建一个Person类,在构造函数中初始化姓名name、年龄age属性,创建有返回值的get_name方法获取人的姓名,有返回值的get_age函数获取人的年龄;guess = int(input("请输入你猜的数字:"))s1 = Student("小明",18,[93,68,76])

2024-01-05 14:21:57 453 1

原创 python复习题资料

首先,我们定义一个抽象基类 Animal,它包含抽象方法make_sound和普通方法get_name。

2023-12-31 17:06:18 709 1

原创 七、反射(适合小白)

3.虚拟机会保证一个类的()方法在多线程环境中被正确的加锁,同步,如果多个线程同时去初始化一个类,那么只会有一个线程去执行这个类()方法,其他线层都需要阻塞等待,直到活动线程执行()方法完毕。2.加载完类之后,在堆中就产生了一个Class类型的对象(一个类只有一个Class对象),这个对象包含了类的完整结构信息,通过这个对象得到类的结构。7.类的字节码二进制数据,是放在方法区的,有点地方称为类的元数据(包括 方法代码 变量名,方法名,访问权限等等)

2023-12-17 22:12:11 1663 1

原创 十、网络编程IP/UDP

网络通信协议包含(TCP传输控制协议 和 IP/因特网互联协议),又称为协议,这个协议是Internet最基本的协议,Internet国际互联网的基础,简单来说,网络通信协议就是由互联网的Ip协议和传输层的TCP。1)套接字Socket开发网络应用程序被广泛采用,以至于成为事实上的标准,通信的两端都要有Socket,是两台机器间通信的端点,网络通信其实就是Socket间的端点。当客户端连接到服务断后,实际上客户端也是通过一个端口和服务端进行通讯的,这个端口时TCP/IP来分配的,是不确定的,是随机的。

2023-12-17 18:23:52 776 1

原创 五、输入输出流

文件在程序中是以流的方式来操作的输入流:数据在数据源文件到程序的路径输出流:数据从程序到数据源文件到路径。

2023-12-16 19:43:29 715

原创 十一、多线程和死锁问题

1.在多线程编程,一些敏感数据不允许被多个线程同时访问,此时就使用同步访问技术,保证数据在任何时刻,最多有一个线程访问,以保证数据的完整性。2.线程同步:当有一个线程对内存进行操作时,其他线程不可以对这个内存地址进行操作,知道该线程完成操作,其他线程才能对该内存地址进行操作。4.当前线程在同步代码块,同步方法中执行了线程对象的wait()方法,当前线程暂停,释放锁。2.守护线程:一般是工作线程服务的,当所有用户线程结束,守护线程自动结束。2.当前线程在同步代码块,同步方法中遇到了break,return。

2023-12-16 13:48:28 530

原创 九、为什么要使用泛型

3)Java泛型可以保证如果程序在编译时没有发出警告,运行时就不会出产生 ClassCastException异常,同时,代码更加简洁,健壮。4)泛型的作用是:可以在类声明时通过一个标识表示 类中的某个属性的类型,或者是某个 方法的返回值类型,或者是参数类型。3)public void eat(E e){},修饰符后没有<T,R>eat 方法不是泛型方法,只是用了泛型。1)其中,T,K,V不代表值,而是表示类型。

2023-12-15 20:01:12 505

原创 八、集合底层代码

过去我们保存多个数据使用的是数组,数组有不足的地方1)数组长度开始时必须指定,而且一旦指定,不能更改2)保存的必须为同一类型的元素3)使用数组进行增加元素比较麻烦因此我们引入了集合1)Map接口常用实现类有HashMap,Hashtable和Properties,其中HashMap是Map接口使用 频率最高的实现类2)HashMap是以key-val键值对的方式来储存数据的3)key不能重复,只允许添加一个为空值。但是值可以重复,允许添加多个Null值。

2023-12-15 16:34:43 709

原创 三、包装类(引用类型)

Java是一个面向对象的编程语言,但是Java中的八种基本数据类型却是不面向对象的,为了使用方便和解决这个不足,在设计类时为每个基本数据类型设计了一个对应的类进行代表,这样八种基本数据类型对应的类统称为包装类(Wrapper Class),包装类均位于java.lang包。1)在实例化对象的时候,有两个属性 栈中的ex实例化对象指向堆中的str,str的value值指向常量池中的hsp 第二个属性是栈中的ex实例化对象指向堆中的ch数组,ch数组在堆中开辟新的空间存放java。

2023-12-10 21:01:04 759 1

原创 四、异常问题(粗略)

/要求范围在 18 – 120 之间,否则抛出一个自定义异常if(!//这里我们可以通过构造器,设置信息throw new AgeException("年龄需要在 18~120 之间");System.out.println("你的年龄范围正确.");//自定义一个异常//1. 一般情况下,我们自定义异常是继承 RuntimeException//2. 即把自定义异常做成 运行时异常,好处时,我们可以使用默认的处理机制//3. 即比较方便。

2023-12-09 15:12:16 770

原创 六、枚举和注解

1)构造器私有化2)本类内部创建一组对象3)对外暴露对象4)可以提供get方法,但是不要提供set方法1)@Overrider:限定某个方法,是重写父类方法,该注解只能用于方法2)@Deprecated:用于表示某个程序元素,已经过时3)@SuppressWarnings:抑制编译器警告4)@Target:用于修饰Annotation定义,用于指定被修饰的Annotation能用于修饰哪些程序元素 @Target也包含一个value成员变量。

2023-12-08 20:24:17 1352

原创 单例设计模式

饿汉式存在浪费资源的可能,懒汉式是使用是才创建,不存在这个问题。饿汉式不存在线程安全问题 懒汉式存在线程问题。1)构造器私有化 ,放置直接new。1)饿汉式是在类加载就创建类对象实例。3)向外暴露一个静态的公共方法。2)懒汉式是在使用时才创建。2)类的内部创建对象。

2023-12-07 16:58:07 260 1

原创 八皇后问题(最详细的八皇后讲解,包会)

/Math.abs(n -i)== Math.abs(array[n] -array[i])表示第n个换购是否和第i皇后是同一斜线的。//说明 array[i] == array[n]表示判断第n个皇后是否和前面的n-1个皇后在同一列。//定义数组array,保存皇后放置位置的结果,比如arr ={0,4,7,5,2,6,1,3}//放入皇后后,查看是否到达八个皇后的个数。//写一个方法 查看当我们放置第n个皇后时,就去检测该皇后是否和前面已经摆放的皇后冲突。//判断当放置第n个皇后到i列时,是否冲突。

2023-12-06 22:20:52 526 1

原创 二、面向对象编程(知识点概括 和 一些题型)

继承可以结局代码复用,当多个类存在相同的属性和方法时,可以从这些类中抽象出父类,在父类中定义这些相同 的属性和方法,所有的子类不需要重新定义这些属性和方法,只需要通过extends来声明继承父类即可。this先从本类中查找属性,从本类中查找方法,如果本类中没有属性和方法,再从父类中查找属性和方法 ,但不能访问父类的私有属性和方法。方法重写 ------方法名相同,参数列表相同,返回的类型和父类返回的类型一致,或者是父类 返回类型的 子类型。

2023-12-01 17:29:12 713 1

原创 一、java 数据类型

byte,short,char 不会自动转化 要先转换为Int 才可以进行计算。

2023-11-29 17:24:23 740 1

python复习题资料

python复习题资料

2024-01-04

空空如也

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

TA关注的人

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