SpringBoot
一个程序员的成长
这个作者很懒,什么都没留下…
展开
-
SpringBoot过滤器中的异常处理
在昨天的文章我跟大家分享了SpringBoot中异常的处理中,我说了一个需要注意的点,就是过滤器中抛出的异常无法被异常处理类捕获,然后这个朋友就问应该如何处理。其实处理这种问题的处理方式有好几种,那么我就简单分享一下我近期一个项目中的处理方式。Filter中的异常处理思路首先我们要明白,在过滤器中我们一般是不会写很长的业务逻辑的,一般都是做一些基础参数或者权限的校验,所以不会出现太过复杂的代...原创 2020-04-22 12:55:50 · 3211 阅读 · 0 评论 -
SpringBoot中的异常处理与参数校验
兄弟们好,这次来跟老铁交流两个问题,异常和参数校验,在说参数校验之前我们先来说异常处理吧,因为后面参数的校验会牵扯到异常处理这块的内容。异常处理说到异常处理,我不知道大家有没有写过或者遇到过如下的写法。public void saveUser() { try { // 所有的业务内容,目测几百行 }catch (Exception e) {...原创 2020-04-21 09:09:24 · 1407 阅读 · 1 评论 -
SpringBoot + Redisson实现分布式锁
一、什么是分布式?要想说什么是分布式,那么首先要知道分布式之前的系统是什么样的架构,之前的架构又存在什么样的问题?单体架构 分布式之前就是单体架构,单体架构顾名思义就是将所有的业务功能打包在一个应用中,然后部署在服务器上。如果我们把单体架构比作一个汽车工厂,那么从汽车发动机到汽车上的一个螺丝钉都需要由它来负责完成,如果有一天这家工厂由于自然灾害的原因导致业务量急剧下滑,甚至停止生产,那么...原创 2019-12-01 18:29:39 · 475 阅读 · 0 评论 -
SpringBoot多数据源中的分布式事务
虽然现在微服务越来越流行,我们的系统随之也拆分出来好多的模块功能。这样做的目的其实就是为了弥补单体架构中存在的不足。随着微服务的拆分,肯定设计到分库分表,但这之中肯定设计到分布式事务。最典型的例子就是银行转账,比如银行A给银行B转账500块钱,流程肯定是银行A-500,银行B+500,在这个过程要么都成功,要么都成仁。首先银行A和银行B的数肯定是在不同的数据库,如果在转账的过程中,银行A首先-5...原创 2019-11-24 15:19:40 · 7996 阅读 · 18 评论 -
Java开发中那些不容忽略的小问题-1
写公众号说实话挺久了,也因此认识了很多的朋友,咨询什么的都有,总之,或多或少的帮助到过一些人。最近想了好久,我往后应该写一些什么类型的文章?1、偏理论的?感觉在一篇文章里面去概述一些比较复杂的理论,说不说的完暂且不说,作为一个读者大部分肯定是没有耐心看下去的,而且看完吸收的也不会很多,这种东西还是得通过啃书的方式可能会更好。2、偏代码层次的?之前也写过几篇文章里面代码很多,但是其实很少有...原创 2019-11-08 20:06:13 · 1027 阅读 · 0 评论 -
SpringBoot整合easyexcel实现Excel导入
上篇写了Excel如何导出,那么其实在提供的那几个工具类中已经有了导入的方法,只需要直接调用即可。下面我们来简单演示一下,如何导入。我们先看下Controller是如何写的@PostMapping("/import/order")public ResultMsg import_order(MultipartFile excel) { Object objList = Exce...原创 2019-10-10 22:05:37 · 1948 阅读 · 0 评论 -
SpringBoot整合easyexcel实现Excel的导出
在一般不管大的或者小的系统中,各家的产品都一样,闲的无聊的时候都喜欢让我们这些程序员导出一些数据出来供他观赏,非说这是必须需求,非做不可,那么我们就只能苦逼的哼哧哼哧的写bug喽。之前使用POI导出excel需要自己先去创建excel文件,还要创建sheet,写表头,操作起来确实很麻烦,针对产品这种随心而欲的需求我们能不能快速的做完这样一个产品看起来挺简单的功能。基于这样一个快速开发的场景...原创 2019-10-09 21:54:25 · 23334 阅读 · 16 评论 -
SpringBoot集成Redis引起的序列化问题
想必大家对SpringBoot可能已经很熟悉了,包括集成Redis这种常用的技术,之前一直用一贯的写法去集成Redis,写配置类没发现过任何问题,但是上周在给Redis配置类加了一个Bean之后就出现了很难发现的问题。配置类代码@Configurationpublic class RedisConfig extends CachingConfigurerSupport { ...原创 2019-10-08 21:32:24 · 1402 阅读 · 0 评论 -
Redis如何保证接口的幂等性?
在最近的一次业务升级中,遇到这样一个问题,我们设计了新的账户体系,需要在用户将应用升级之后将原来账户的数据手动的同步过来,就是需要用户自己去触发同步按钮进行同步,因为有些数据是用户存在自己本地的。那么在这个过程中就存在一个问题,要是因为网络的问题,用户重复点击了这个按钮怎么办?就算我们在客户端做了一些处理,在同步的过程中,不能再次点击,但是经过我最近的爬虫实践,要是别人抓到了我们的接口那么还是不安...原创 2019-07-15 22:57:07 · 1117 阅读 · 0 评论 -
SpringBoot整合数据源的驼峰命名问题
上次跟大家分享了SpringBoot如何配置多个数据源,配置多个数据源是成功了,但是有个小问题,就是关于驼峰命名的字段并没有查询出来,也就是说,我们的驼峰命名规则是没有生效的。大家可以看下上篇文章的代码结果。SpringBoot如何整合多个数据源,看这篇就够了,可以很清楚的看出我们的时间值是没有查询出来的,那么我今天就跟大家来说一下这个问题的解决办法。@Bean(name = "...原创 2019-07-03 23:40:40 · 947 阅读 · 0 评论 -
SpringBoot如何整合多个数据源,看这篇就够了
SpringBoot现在是很多很多公司应用的后端框架,因为它搭建快,能更好、更快速的整合其他第三方。那么随着业务的不断扩展,业务量的增加,这时候就会牵扯到分库分表,虽然这个词听起来很熟悉,作为程序员也很容易理解,但是我想应该也有不少读者没接触过分库分表,今天我们不聊如何分库分表,而是聊SpringBoot如何整合多个数据源的事情。也就是如何接入不同的(多个)数据库。我们直接开始,我们...原创 2019-07-01 23:47:38 · 615 阅读 · 1 评论