07 2020 档案

摘要:众所周知,使用@RequestParam(required = false) 封装请求参数的时候,如果客户端不提交参数,或者是只声明参数,并不赋值。那么方法的形参值,默认为null(基本数据类型除外)。 一个Controller方法,有2个参数 @GetMapping public Object u 阅读全文
posted @ 2020-07-29 22:33 KevinBlandy 阅读(6024) 评论(0) 推荐(0)
摘要:业务场景:客户端把json数据进行加密后,编码成Base64字符串,提交给服务器。服务器再进行解密。 使用 @RequestBodyAdvice,可以在不修改任何Controller代码的前提下,轻松完成。 之前写过一篇帖子,使用@ResponseBodyAdvice统一对响应的数据进行处理。演示了 阅读全文
posted @ 2020-07-22 13:45 KevinBlandy 阅读(2542) 评论(0) 推荐(0)
摘要:投影查询,就是仅仅检索表的部分字段。而不是粗暴的 SELECT * FROM...检索出所有列数据。例如检索用户余额信息的时候,就不需要检索用户的头像,创建日期等字段。节省了带宽传输和内存占用,也避免了可能暴露更多数据给客户端。 这里先啰嗦一下jpql的一些注意点 操作的是对象 @Entity, 不 阅读全文
posted @ 2020-07-16 11:48 KevinBlandy 阅读(309) 评论(0) 推荐(0)
摘要:允许用户上传图片资源(头像,发帖)是APP常见的需求,特别需要把用户的资源IO到磁盘情况下,需要防止坏人提交一些非法的文件,例如木马,webshell,可执行程序等等。这类非法文件不仅会导致客户端图片资源显示失败,而且还会给服务器带来安全问题。 通过文件后缀判断文件的合法性 这种方式比较常见,也很简 阅读全文
posted @ 2020-07-15 21:53 KevinBlandy 阅读(1143) 评论(1) 推荐(1)
摘要:使用SpringBoot开发前后端分离的应用,可以使用Nginx作为网关来统一解决跨域问题。这种好处是,可以不修改应用代码的情况下,让应用支持跨域。 对于很多不支持的跨域的网站,你也可以弄个Nginx给它“加个Buff”,也就可以进行跨域访问了。 😆 Nginx配置(这个配置,可以解决 95% 以 阅读全文
posted @ 2020-07-13 17:15 KevinBlandy 阅读(6235) 评论(0) 推荐(2)
摘要:查询方法,就是根据方法名来检索数据。按照一定的规则,通过方法名描述要检索的字段,过滤的条件,排序的策略等等,它们大都以find, get... 等开头。spring-data-jpa会自动解析,并且完成检索。省时省力。 在 Repository 中定义查询方法 public interface Us 阅读全文
posted @ 2020-07-13 12:45 KevinBlandy 阅读(524) 评论(0) 推荐(0)
摘要:在SpringBoot中使用HikariCP连接池 HikariCP 是一款性能极佳的数据库连接池,体积很小,大约130Kb。SpringBoot2.0也已经采用HikariCP作为默认连接池配置.。 HikariCP官方Github https://github.com/brettwooldrid 阅读全文
posted @ 2020-07-09 16:27 KevinBlandy 阅读(1544) 评论(0) 推荐(0)
摘要:在浏览器中使用js-spark-md5计算文件的MD5 最近开发一个视频系统,用户需要把文件上传到服务器。服务器再上传到转码服务器,编码为m3u8格式。我觉得客户端可以直接上传到转码服务器。对转码服务器设置了跨域后,客户端可以直接上传视频文件,但是上传接口需要文件的MD5值,网上找了一个口碑极好的M 阅读全文
posted @ 2020-07-06 21:59 KevinBlandy 阅读(2347) 评论(1) 推荐(1)
摘要:SpringBoot在WebSocket长连接中获取到HttpSession Websocket是通过http协议握手后升级成为长连接,在握手的时候,可以读取到客户端http请求的所有信息,自然也包括 HttpSession。 自定义配置类,继承 Configurator ,覆写modifyHand 阅读全文
posted @ 2020-07-03 14:33 KevinBlandy 阅读(2960) 评论(0) 推荐(0)
摘要:使用零拷贝对文件高效的切片和合并 对文件的切片/合并在应用中是一个很常见的需求,使用 FileChannel的 transferTo / transferFrom 的零拷贝方法(需要操作系统支持),可以高效的完成。 切片 /** * 对文件按照指定大小进行分片,在文件所在目录生成分片后的文件块儿 * 阅读全文
posted @ 2020-07-01 12:07 KevinBlandy 阅读(594) 评论(0) 推荐(0)