自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 文件类:如何将excel文件转为csv文件(且保留时间格式)?

最近有个场景,在ftp服务器上,读取csv文件并入库,但是客户提供的一部分文件却是xls文件,就得搞个将excel转为csv文件的方法,话不多说直接开干。

2024-07-11 14:03:45 283

原创 本地电脑连接FTP服务器,显示无权限连接?

打开文档,在这一栏输入ftp服务器地址,按下回车,弹出无权限提示。

2024-07-10 10:10:07 388

原创 Java_Java基础:int类型计算

提供两个int型,a和b。

2024-07-05 14:51:01 134

原创 Java_MyBatis框架:MyBatis框架

MyBatis的执行流程先加载配置文件再通过SqlSessionFactoryBuilder创建SqlSessionFactory对象获取SqlSession生成代理对象执行Excutor匹配执行SQL语句MyBatis的一级缓存和二级缓存一级缓存:也叫SqlSession级缓存,无需手动开启,可直接使用,为每个SqlSession单独分配的缓存空间,多个SqlSession之间的缓存不共享。二级缓存:namespace级别缓存,即一个mapper一个缓存,相互独立互不影响,同一个n

2024-07-05 09:45:00 243

原创 Java_Spring框架:AOP

AOP采取横向抽取机制,将分散在各个方法中的重复代码提取出来,在程序编译或运行时,再将这些提取出来的代码应用到需要执行的地方。AOP:面向切面编程。

2024-07-04 10:30:00 128

原创 Java_网络通信:http和https

HTTP: 是互联网上应用最为广泛的一种网络通信协议,基于TCP,可以使浏览器工作更为高效,减少网络传输。HTTPS: 是HTTP的加强版,可以认为是HTTP+SSL(Secure Socket Layer)。在HTTP的基础上增加了一系列的安全机制。一方面保证数据传输安全,另一位方面对访问者增加了验证机制。是目前现行架构下,最为安全的解决方案。

2024-07-04 09:00:00 228

原创 Java_Spring框架:Bean的生命周期

销毁(Destruction):当Bean不再被需要时,Spring会调用Bean的销毁方法进行资源释放和清理工作。Bean的销毁阶段只有在容器关闭时才会触发,或者在使用单例作用域的Bean时,当Bean不再被引用时被垃圾回收器回收。以上是Spring框架中Bean的典型生命周期阶段,每个阶段都提供了相应的扩展点,可以在不同阶段进行自定义操作。属性赋值(Population):在实例化后,Spring会通过依赖注入(Dependency Injection)或者属性赋值的方式,将Bean的属性值设置好。

2024-07-03 13:56:07 124 1

原创 Java_网络通信:TCP和UDP

TCP和UDP,三次握手四次挥手

2024-07-03 10:30:00 157 1

原创 Java_多线程:ThreadLocal

ThreadLocal,即线程本地变量。如果你创建了一个ThreadLocal变量,那么访问这个变量的每个线程都会有这个变量的一个本地拷贝,多个线程操作这个变量的时候,实际是操作自己本地内存里面的变量,从而起到线程隔离的作用,避免了线程安全问题。ThreadLocalMap内部维护了Entry数组,每个Entry代表一个完整的对象,key是ThreadLocal本身,value是ThreadLocal的泛型值。弱引用:只要垃圾回收机制一运行,不管JVM的内存空间是否充足,都会回收该对象占用的内存。

2024-07-03 10:30:00 489

原创 Java_多线程:线程和死锁

多个线程同时被阻塞,它们中的一个或者全部都在等待某个资源被释放。由于线程被无限期地阻塞,因此程序不可能正常终止。

2024-07-02 20:18:23 1170

原创 Java_多线程:线程池

线程池不允许使用Executors去创建,而是通过ThreadPoolExecutor的方式,这样的处理方式让写的同学更加明确线程池的运行规则,规避资源耗尽的风险。

2024-07-02 18:32:53 1338

原创 Java_多线程:实现多线程

【代码】Java_多线程:实现多线程。

2024-07-02 17:25:54 550

原创 Java_Java基础:int 和 Integer

非new生成的Integer变量和new Integer()生成的变量比较时,结果为false。(因为非new生成的Integer变量指向的是java常量池中的对象,而new Integer()生成的变量指向堆中新建的对象,两者在内存中的地址不同)Integer变量和int变量比较时,只要两个变量的值是向等的,则结果为true(因为包装类Integer和基本数据类型int比较时,java会自动拆包装为int,然后进行比较,实际上就变为两个int变量的比较)的(因为new生成的是两个对象,其。

2024-07-01 16:05:55 483

原创 Java_JVM:垃圾收集算法

我们常用的垃圾回收器一般都采用分代收集算法。

2024-06-30 19:57:13 362

原创 Java_JVM:如何判断对象可以被回收?JVM的永久代中会发生垃圾回收么?

垃圾回收不会发生在永久代,如果永久代满了或者是超过了临界值,会触发完全垃圾回收(FullGC)。如果你仔细查看垃圾收集器的输出信息,就会发现永久代也是被回收的。这就是为什么正确的永久代大小对避免Full GC是非常重要的原因。请参考下Java8:从永久代到元数据区 (注:Java8中已经移除了永久代,新加了一个叫做元数据区的native内存区)

2024-06-30 10:00:00 144

原创 Java_Java基础:深拷贝、浅拷贝和引用拷贝

浅拷贝只复制了对象本身,不会复制对象内部的数据。深拷贝递归地复制了对象及其所有子对象的内容。引用拷贝是将一个对象的引用赋值给另一个变量,使得两个变量指向同一个对象。

2024-06-29 09:45:00 183

原创 Java_Java基础:String的特性

String是引用类型,以下是其特点:

2024-06-29 09:30:00 93

原创 Java_Java基础:HashCode详解

这种方式将集合分成若干个存储区域,每个对象可以计算出一个哈希码,可以将哈希码分组,每组分别对应某个存储区域,根据一个对象的哈希码就可以确定该对象应该存储的那个区域。在产生hash冲突时,两个不相等的对象就会有相同的 hashcode 值。集合要添加新的元素时,先调用这个元素的hashCode方法,就一下子能定位到它应该放置的物理。果这个位置上已经有元素了,就调用它的equals方法与新元素进行比较,相同的话就不存了,不相。如果这个位置上没有元素,它就可以直接存储在这个位置上,不用再进行任何比较了;

2024-06-28 17:20:53 357

原创 Java_Java基础:IO流

Java_Java基础:IO流。

2024-06-28 17:10:16 720

原创 postman忘记密码发邮件,久久收不到怎么办?

找个平台或者软件,访问这个链接即可完成修改密码后续操作,不用再傻傻等着验证码了。有需要协助的朋友也可私信我,看到不忙会回复的。根本原因是需要FQ!

2024-06-26 23:05:17 314

原创 Java_Java基础:static关键字

虽然使用类实例化的对象也能够调用该属性,但是该属性是属于类所有,所有该类的实例化对象和该类共享一个值,即操作的是同一个值。静态内部类与普通内部类不同,它可以直接通过外部类的类名访问,并且不需要依赖于外部类的实例。被static修饰的内部类完全独立于其所在的外部类,不属于外部类的对象,可以认为两个类是完全没有关系的两个类。简单的来说被static修饰的方法,可以认为是属于类的,只要类进行加载以后,则就可以进行使用。被static修饰的属性,可以认为是属于类的,只要类进行加载以后,便可以使用。

2024-06-26 23:00:07 749

原创 Java_Java基础:final关键字

被final修饰的类不可以被继承被final修饰的方法不可以被重写被final修饰的变量不可以被改变。如果修饰引用,那么表示引用不可变,引用指向的内容可变被final修饰的方法,JVM会尝试将其内联,以提高运行效率被final修饰的常量,在编译阶段会存入常量池中

2024-06-26 17:25:18 70

原创 Java_Java基础:instanceof关键字的作用

其中 obj 为一个对象,Class 表示一个类或者一个接口,当 obj 为 Class 的对象,或者是其直接或间接子类,或者是其接口的实现类,结果result 都返回 true,否则返回false。instanceof 严格来说是Java中的一个双目运算符,用来测试一个对象是否为一个类的实例,用法。

2024-06-26 17:20:58 335

原创 Java_Java基础:异常

定义:Exception类本身,以及Exception的子类中除了"运行时异常"之外的其它子类都属于被检查异常。定义:RuntimeException及其子类都被称为运行时异常。定义:Error类及其子类。

2024-06-26 17:13:29 150

原创 Java_Java基础:Object中常用的方法

getClass():获取类的class对象。hashCode():获取对象的hashCode值equals():比较对象是否相等,比较的是值和地址,子类可重写以自定义。clone():克隆方法。toString():如果没有重写,应用对象将打印的是地址值。notify():随机选择一个在该对象上调用wait方法的线程,解除其阻塞状态。该方法只能在同步方法或同步块内部调用。如果当前线程不是锁的持有者,该方法抛出一个IllegalMonitorStateException异常。notifyall

2024-06-26 17:02:04 101

原创 Java_Java基础:抽象类和接口

抽象类和接口都是Java中的重要概念,它们都可以用来定义抽象的数据类型。抽象类可以包含非抽象方法,而接口只能包含抽象方法。类只能继承一个抽象类,但可以实现多个接口。抽象类可以有构造方法,而接口不能有构造方法。抽象类可以有成员变量,而接口只能有常量。抽象类的方法可以有public、protected和default访问修饰符,而接口的方法只能有public访问修饰符。抽象类的子类必须实现所有抽象方法,而实现接口的类必须实现所有接口中的方法。抽象类可以有普通方法,而接口不能有普通方法。

2024-06-25 12:11:12 507

原创 Java_Java基础:hashCode()和equals()的关系

Java 对于 equals() 方法和 hashCode() 方法是这样规定的:

2024-06-25 12:00:28 201

原创 Java_Java基础:HashMap和HashTable

当get()方法返回null值时,即可以表示 HashMap中没有该键,也可以表示该键所对应的值为null。因此,在HashMap中不能由get()方法来判断HashMap中是否存在某个键, 而应该用containsKey()方法来判断。

2024-06-24 11:32:44 1021

原创 Java_Java基础:throw、throws和异常

throw:

2024-06-24 09:45:00 1168

原创 Java_Java基础:String、StringBuffer和StringBuilder

执行速度由快到慢:StringBuilder > StringBuffer > String。

2024-06-23 18:03:50 476

原创 Java_SpringBoot:常用注解

以下 3 个注解:@Configuration、@EnableAutoConfiguration、@ComponentScan,均作用在主类上。启动类上面的注解是@SpringBootApplication,它也是 Spring Boot 的核心注解,主要组合包含了。本文仅作为学习笔记整理,如有侵权,联系删除。

2024-06-21 23:07:48 518

原创 Java_Java基础:equals和==

= 在基本数据类型:值内容, 引用类型时:地址equals 重写:值内容 , equals不重写:地址。

2024-06-21 17:22:41 458

原创 Java_Spring框架:依赖注入

在依赖注入中,您不必创建对象,但必须描述如何创建它们。您不是直接在代码中将组件和服务连接在一起,而是描述配置文件中哪些组件需要哪些服务。由 IoC 容器将它们装配在一起。构造函数注入setter 注入接口注入在 Spring Framework 中,仅使用构造函数和 setter 注入。

2024-06-20 19:09:22 177

原创 Java_Spring框架:优点

优点好处。

2024-06-20 19:05:02 280

原创 Java_Java基础:集合详解

集合精讲

2024-06-19 22:31:19 1804 2

原创 MySQL_subString和substr

substring(str0,str1)表示从字符串的第几个截取到第几个,如果第一个参数写了,第二个参数没有写的话,那么代表着从第一个参数的索引开始截取到字符串的末尾。但是和slice不同的是,slice中参数是负值,那么倒着开始数,而substring参数是负值的话,代表着往前数几位,它是不能倒着开始数的。substr (开始的索引,长度),表示从第几个开始,一直往后截取第二个参数的大小的长度。此时得到的为字符串a从下标为1的位置开始截取到下标为5的位置的值(不包括下标为5的值),也就是2345;

2024-06-19 10:00:00 148

原创 MySQL_索引

B+树和B树最主要的区别在于的问题B树:非叶子节点和叶子节点都会存储数据。B+树:所有的数据都会出现在叶子节点。叶子节点形成一个单向链表。非叶子节点仅仅起到索引数据作用,具体的数据都是在叶子节点存放的。

2024-06-18 14:24:20 785

原创 maven3.6版本下载

maven下载

2024-06-18 14:19:29 499

原创 JSP_四大作用域对象

JSP有四大作用域对象,存储数据和获取数据的方式一样,不同的是有差别。

2024-06-18 11:54:19 115 1

原创 基于Java+SpringBoot+Vue+elementUI的学生宿舍管理平台的设计与开发

学生宿舍管理平台;java;springboot;vue;element ui;mysql;redis

2024-06-17 18:05:08 360 2

空空如也

空空如也

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

TA关注的人

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