• springboot入门13 – 多CacheManager应用

    概述 之前有写过springboot缓存应用的说明(《springboot入门01 – 缓存的使用》)。不过实际的场景有时候会比较复杂一些,比如:需要同时使用redis和caffine来做多级缓存,或者需要在通用配置外应用一些个性化的配置。

    [阅读更多...]
  • springboot入门12 – SpringBoot MyBatis读写分离

    概述 随业务量增长,数据库读写分离是迟早要面临的问题。另外,公司在上规模后一般也会要求统一采用主从分布式数据库。 我习惯的处理方案是在应用层进行隔离:即将以写为主的业务放在一个应用上,以读为主的业务放在其他应用上。这应该算是最简单粗暴的解决

    [阅读更多...]
  • Excel导出超过65535行报异常

    工程中在使用POI导出Excel数据,某次因为导出的数据量比较大就报了下面的错误: 查了下资料,了解到问题在于使用了HSSFWorkbook。HSSFWorkbook用来操作Excel2003以前(包括2003)的版本,限制了每个Sheet

    [阅读更多...]
  • SpringBoot读写xml上传到S3

    最近的工作涉及到了生成xml文件并上传到AWS存储服务S3这样的处理。期间遇到了两个问题,简单记录下: springboot读取xml模板异常 将生成的xml上传到S3的问题 springboot的版本是2.1.9.RELEASE,读写xm

    [阅读更多...]
  • Java SpringBoot实现上传文件到AWS S3

    简单记录一下在Springboot中上传文件到AWS S3存储服务的代码。 在application.xml中添加aws相关配置: 新建一个AwsS3Componment类来执行上传文件操作: 因为使用的服务有设置endpoint,所以这里

    [阅读更多...]
  • Jackson处理json中的反斜杠

    在使用jackson处理json时遇到了反斜杠相关的问题。比如我们从数据库或文件中读到了这样的一个json字符串: 可以看到在World前面有一个反斜杠。因为这个反斜杠,JetBrains IDEA会提示这是一个错误的字符串,使用jakcs

    [阅读更多...]
  • springboot入门11 – MyBatis写入时null问题统一处理方案

    如果MySQL表的一些字段被设置为不允许为空,使用MyBatis写入的数据中相应字段的值是null就有可能会报类似下面的错误: 对于这个问题,我通常的做法是为对应字段的null值直接赋值一个空字符串(或其它默认值)。但是这次,不知道为什么那

    [阅读更多...]
  • java唯一字符串ID生成方案

    工作中经常会有生成唯一字符串的需求。通常最容易想到的是UUID。UUID的唯一性毋庸置疑,但是32位的长度也容易让人退避三舍。也曾经想过参考《短网址生成方案》来生成一串ID,但是试验了一下发现唯一性不太好。 最终采用的方案是时钟方案,简单来

    [阅读更多...]
  • Java 抽象工具类

    在SpringBoot的源码中有看到使用abstract关键字定义的工具类,如: 使用abstract关键字的目的猜测应该是为了避免实例化。 同样为了避免实例化,在jdk中定义的工具类则通常是使用私有化构造器来实现的: 目的都是为了避免实例

    [阅读更多...]
  • Java AES加密

    做360广告的对接需要对密码进行AES加密,下面是点睛平台文档的描述: (AES模式为CBC,加密算法MCRYPT_RIJNDAEL_128)对MD5加密后的密码实现对称加密。秘钥是apiSecret 的前16位,向量是后16位,加密结果为

    [阅读更多...]