MySQL 行列转换 场景面试的时候遇到的一个问题,之前没有碰到过这种场景,所以却是无论如何都回答不了呢!然而本着遇到的坑跌倒过一次就够了的理念,回来时吾辈稍微 Google 了一下这个问题,结果便在此记录一下好啦 行转列指的是将数据行根据状态区分为不同的列,主要应用场景应该是统计报表吧 例如下面这个 exam 表 1234567891011121314151617drop table if exists exam;c
MySQL 递归查询 场景最近需要将根据父级分类查询出所有的自己分类,所以却是需要使用 MySQL 实现递归查询的功能。 对于以下数据表(此处简化了) id parentId name 1 0 数学 2 1 高等数学 3 1 线性代数 4 0 英语 5 4 即时翻译 6 4 口语阅读 7 0 物理 8 7 高能物理 9 8 无限能量 10 9 迪克拉之海 SQL 结构
在 Windows 上使用 FTP/SFTP 服务端 场景最近在做 WebService 项目时遇到了定时上传统计报表的需求。协议是 FTP/SFTP,然而第三方服务暂时无法集成,所以只能在本地使用软件模拟出 FTP/SFTP 服务端,然后在代码中进行测试。 前言吾辈并未使用 Windows 上大名鼎鼎的 FileZilla。谜之音:FileZilla 开源免费,而且 FTP/SFTP/FTPS 都能支持岂不美滋滋?吾辈:然而安装完成直接启动就报错了
Java 跨域问题处理 问题在页面上要使用 Ajax 请求去获取另外一个服务的数据,由于浏览器的 同源策略,所以直接请求会得到一个 Error。 1Failed to load https://www.baidu.com/: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localh
Java 中 String 转 LocalDateTime 出现错误 场景在 Java 中使用 LocalDateTime 解析 String 失败 代码如下 12final LocalDateTime result = LocalDateTime.parse("2000-01-01", DateTimeFormatter.ofPattern("yyyy-MM-dd"));log.info("result: {}", result); 抛出异常 1java.tim
Java 优雅的拷贝对象属性 场景在 Java 项目中,经常遇到需要在对象之间拷贝属性的问题。然而,除了直接使用 Getter/Stter 方法,我们还有其他的方法么?当然有,例如 Apache Common Lang3 的 BeanUtils,然而 BeanUtils 却无法完全满足吾辈的需求,所以吾辈便自己封装了一个,这里分享出来以供参考。 需要大量复制对象的属性 对象之间的属性名可能是不同的 对象之间的属性类型可能是不
Java 使用 FTP/SFTP 场景项目中需要使用 FTP,所以做了简单的 FTP/SFTP 封装,此处仅做一下记录。 注:这里并未实现连接池管理,生产环境强烈建议手动实现连接池以提高性能! UML 图像说明形状 注:此处参考自 IDEA UML 图中的颜色 蓝色:类/步骤 黄色:字段 红色:函数 紫色:配置 图形 长方形:类/配置文件/依赖项 圆角长方形:字段/函数/对象/变量 箭头:拥有/向下依赖的意思 目标封装
Java8 函数式功能速查 场景有时候使用 lambda 参数的时候忘记应该接口的名字,所以便在此写一下 Java8function 包下原生的相关接口,方便快速查找。 lambda 接口 class 参数 返回值 Stream 示例 应用场景 Function <T> <R> map/flatMap 映射 Consumer <T> void forEach/peek 迭代
Java8 时间格式化 DateTimeFormatter 场景吾辈在使用 Java8 的 LocalDateTime 想要根据某种格式格式化字符串为日期时间,本以来会简单的事情,事实上却出乎预料! 问题想要格式化一个字符串为日期时间。例如常见的 yyyy-MM-dd hh:mm:ss 格式的 2017-12-11 10:11:05,吾辈习惯性的写出以下代码 1234final String text = "2017-12-11 10:11:05";fin
Spring 配置静态资源访问后结果发生 404 了? 场景这两天使用 SpringMVC 时突然发现了一个问题,在 spring-mvc.xml 中配置静态资源访问以后,突然发现访问什么 Controller 控制的页面都 404 了。如果把这个配置删除后,就能正常访问了,后来在与曾经的项目配置文件对比时发现是缺少了配置 <mvc:annotation-driven/>。然而,在没有添加静态资源访问时,没有这个配置也能够使用 Contro
MybatisPlus 自定义全局操作 exists 一直返回 null 场景为 mybatis-plus 自定义了一个全局操作,然后就一直返回 null。。。 在自定义 sql 注入器类的时候,突然发现 existsById() 一直都在抛空指针异常,就去看了一下结果发现一直返回 null。 1234567891011121314151617181920212223242526272829package com.rxliuli.example.mybatispluss
SpringBoot 使用 Jackson 处理 Java8 时间 API 场景在项目中的实体类里面使用了 Java8 新的时间 API,例如 LocalDate, LocalTime, LocalDateTime 等。然而在将这些时间类型的字段序列化返回到前端时,但格式却感觉有些异常。 嗯,大概就是下面这种样子的 12345678910111213141516{ "dayOfMonth": 27, "dayOfWeek": "MONDAY", "dayOfYear