暂时未有相关云产品技术能力~
生命不息,学习不止!我是水滴,学习的路上与你同在!
我们自己制作的 PDF 文件,为了避免被别人滥用,通常会加上水印。而市面上很多工具都是收费的,这无疑增加了我们的成本。 所以,我使用 Python 编写了一段加水印的代码,可以批量的为多个 PDF 文件加水印,完全是免费的,在这里分享给大家。
在平时的工作中,我们总会希望将需要的 PDF 文件转换为 Word 文件,而市面上很多工具都是收费的,这无疑增加了我们的成本。 所以,我使用 Python 编写了一个转换代码,可以 将 PDF 转换为 Word,完全是免费的,在这里分享给大家。
对于将 Word 文件转换为 PDF 文件,是我们经常需要的工作。单个文件转的话,Word 本身就支持手动转换,但若有大批量的文件需要转换,这种方式还是有不小的工作量。 所以,为了更加便利和高效,我使用 Python 编写了一个批量转换工具,在这里分享给大家。
Java BIO(Blocking I/O)是一种同步阻塞式I/O模型,从JDK1.0到JDK1.3,Java只能使用BIO实现Socket通信。
对象流有两个类:ObjectOutputStream 和 ObjectInputStream,其主要作用是将 Java 对象序列化为流数据,或将流数据反序列化为 Java 对象。
数据流与要是将 Java 的基础数据类型读取或写入流中,它有如下特点: > 数据流是一个处理流,它必须套接在节点流之上。 数据流在读取和写入时的顺序要一致。否则,读取的数据会失真,造成乱码。
今天的主题是字节数组流,即`ByteArrayInputStream` 和 `ByteArrayOutputStream`。这两个流主要用于字节数组与流之前的转换。
缓冲流是一个包装流,在创建缓冲流实例时,需要传入底层真实操作的输入或输出流。其主要的作用就是为了提高读写效率而生的。 今天讲的字符缓冲流有两个:`BuffreadReader` (字符缓冲输入流)和 `BufferedWriter`(字符缓冲输出流)。本文会介绍它们的构造函数和一些常用方法,最后使用真实案例来学习字符缓冲流是如何使用的。
缓冲流是一个包装流,在创建缓冲流实例时,需要传入底层真实操作的输入或输出流。其主要的作用就是为了提高读写效率而生的。 今天讲的字节缓冲流有两个:`BufferedInputStream` (字节缓冲输入流)和 `BufferedOutputStream` (字节缓冲输出流)。本文会介绍它们的构造函数和一些常用方法,最后使用真实案例来看下字节缓冲流是如何使用的。
本篇文章主要讲述“文件字符输入流”和“文件字符输出流”两个类的使用,并列举了一些读写案例,帮助学习。
前面我们已经学会了字节流的使用,本篇开始介绍字符流。字符输入输出流是所有字符流的超类,学会了它们的方法,也基本上掌握了其子类的使用了。
本篇文章主要讲述“文件字节输入流”和“文件字节输出流”两个类的使用,并列举了一些案例,帮助学习。
最近遇到了一些文件流读写的问题,发现对这块知识掌握的还不够系统,所以花了一些时间将 Java IO 流相关的知识整理了一下,也在这里分享给你们,希望能够有所帮助。 先来看第一篇:本文讲述了计算机文件的基本知识,以及 Java 中如何使用 File 类来操作文件的。
我们在项目中会用到createBy、createTime、updateBy、updateTime字段,来记录数据的插入和更新历史。若要实现这些字段的自动填充,MyBatisPlus需要增加一些配置,下面看具体内容吧。
使用乐观锁的意图是:当要更新一条记录的时候,希望这条记录没有被别人更新。那么需要在表中增加一个字段version来实现。
在项目中软删除是必须用到的,那么需要一些配置来支持软删除
使用主键注解@TableId,加到pojo类的主键上
MyBatisPlus有现成的分页功能,需要将插件添加到配置中
散列表(Hash Table)也叫哈希表,是根据给定关键字(Key)来计算出该关键字在表中存储地址的数据结构。也就是说,散列表建立了关键字与存储地址之间的一种直接映射关系,将关键字映射到表中记录的地址,这加快了查找速度。
通过前篇文章《[数组](https://blog.csdn.net/gozhuyinglong/article/details/109702860)》了解到数组的存储结构是一块连续的内存,插入和删除元素时其每个部分都有可能整体移动。为了避免这样的线性开销,我们需要保证数据可以不连续存储。本篇介绍另一种数据结构:链表。
今天启动 SpringBoot 项目时,报了如下错误:`java: Can't generate mapping method with primitive return type.`
今天使用 Python 的 selenium 时,一直在报如下错误:[30616:22540:0328/093748.004:ERROR:ssl_client_socket_impl.cc(992)] handshake failed; returned -1, SSL error code 1, net_error -100
今天使用 `Spring Initializr` 创建了一个 `Spring Boot` 项目,启动时发现如下报错:Error:(3, 32) java:无法访问org.springframework.boot.SpringApplication 错误的类文件...
卸载 Python 时报“No Python 3.* installation was detected.”错误。
最近开机时总能收到来自“Flash助手推荐”的弹窗广告,好烦啊~ 那么我们该如何消灭它呢?继续往下看吧。
使用 SpringBoot 集成 Netty 时,报如下错误:io.netty.channel.ChannelPipelineException: ***Handler is not a @Sharable handler, so can't be added or removed multiple times.
在使用 Kettle(Spoon) 工具创建 MySQL 数据库连接时,提示:Driver class 'org.gjt.mm.mysql.Driver' could not be found, make sure the 'MySQL' driver (jar file) is installed. org.gjt.mm.mysql.Driver
使用 IDEA 时,调用 `main` 方法,提示 `Error: Module not specified` 错误,意思是“module 未指定”。
今天使用 Netty 搭建一个项目,接收报文时提示如下错误:`io.netty.util.IllegalReferenceCountException: refCnt: 0, decrement: 1`
在使用 Kettle(Spoon) 工具创建 SQL Server 数据库连接时,提示:Driver class 'com.microsoft.sqlserver.jdbc.SQLServerDriver' could not be found, make sure the 'MS SQL Server (Native)' driver (jar file) is installed. com.microsoft.sqlserver.jdbc.SQLServerDriver
今天建了一个新项目,使用 Spring Boot 整合 Redis 时,IDEA 被提醒“Could not autowire. No beans of 'RedisConnectionFactory' type found. ”错误,意思是不能自动装配“RedisConnectionFactory”。
在 Spring Boot 项目中,添加一个配置文件时,会提示“Spring Boot Configuration Annotation Processor not configured”
公众号管理员添加开发者时,提醒:该微信用户未开启“公众号安全助手”的消息接收功能,请先开启后再绑定
SSH: Connecting from host [WIN-...] SSH: Connecting with configuration [192.168....] ... ERROR: Exception when publishing, exception message [Failed to connect and initialize SSH connection. Message: [Failed to connect session for config [192.168....]. Message [java.net.ConnectException: Connection
Traceback (most recent call last): File "C:\Users\Administrator\AppData\Local\Programs\Python\Python38\lib\runpy.py", line 194, in _run_module_as_main return _run_code(code, main_globals, None, File "C:\Users\Administrator\AppData\Local\Programs\Python\Python38\lib\runpy.py", line 87, in _ru
分区表是一个独立的逻辑表,其底层由多个物理子表组成。对分区表的请求,在 MySQL 底层都会被转换为对范围内的物理子表的请求,并将结果合并到一起返回。
本篇文章主要讲述,对特点类型的查询进行优化。
上一篇我们讲到通到优化数据访问,来解决慢查询问题,这是解决慢查询的基础。但有时我们的查询过于复杂,导致查询速度慢,我们不得不重构查询。今天就来讲下重构查询的几种方式。
前面几篇文章中介绍了如何设计最优的库表结构,以及如何建立最好的索引,这些对于高性能来说是必不可少的。但这还不够——还需要合理的设计查询。如果查询写得很糟糕,即使库表结构再合理、索引再合适,也无法实现高性能。
MySQL 支持的数据类型有很多,在设计表结构时,选择正确的数据类型可以获得更高的性能。如果你还不知道如何选择,那么希望这篇文章能帮到你。
MVCC(Multiversion Concurrency Control)即多版本并发控制,它是数据库系统常用的一种并发控制,用于提升事务内数据的并发性。可以认为 MVCC 是行锁的一个变种,在很多种情况下避免了加锁操作,因此开销更低。 MVCC 的实现,是通过保存数据在某个时间点的**快照**来实现的。也就是说,每个事务读到的数据都是一个历史快照,不管这个事务执行多长时间,事务内看到的数据总是一致的。
事务(Transaction)是一个独立的工作单元,它由一组具有原子性的 SQL 语句构成,通常该组 SQL 语句对应着一个完整的业务。在事务内的语句,要么全部执行成功,要么全部执行失败。
无论何时,当多个进程或线程并发访问同一资源时,就会产生并发控制的问题。在数据库系统中,数据也是一种多用户共享的资源,为了保证数据的一致性,需要对数据操作进行并发控制,而数据库系统通常使用锁(Lock)来控制并发问题。
本篇文章主要描述了 MySQL 的服务器架构,以及对每一层服务进行简短的概述。我们可以使用一张图来表示 MySQL 的逻辑架构,这便于我们的理解与记忆。