京东背调有病吧......

大家好,我是鸭鸭!

又到周一,新的一周新的摸鱼,今天鸭鸭也在高强度互联网冲浪,没想到刷到这么一条帖子:

一般来说,很多大公司入职流程中都会包含背调,大家也都习惯了会准备好相应的信息。但京东这波操作,既要前任领导联系方式,还要内部职级截图;既要社保缴纳登记,还要近两年每月的社保缴纳信息;不仅如此,还要求提供多位前公司同事联系信息进行核实,这属实是让打工人无法接受。

评论区还有一位被京东过度背调的"受害者"发言:

公司背调的目的应该是核实应聘者提供信息的真实性,避免发生简历造假的情况,像东子这种过分收集索取个人信息,还要反复多人电话核实,恨不得把你的职业生涯都翻出来的,还是不常见的。

过分索取个人隐私信息的背调,不止是楼主觉得不被尊重,鸭鸭看着也很生气。

大家也可以来评论区分享自己遇到或者听过的奇葩背调经历,现在打工人求职已经很难了,希望大家都可以维护好自己的权益。


来看看鸭鸭今天为大家准备的面试题,一起来提升自己的就业竞争力吧!

Spring 事务在什么情况下会失效?

回答重点

一般而言失效的情况都是用了声明式事务即 @Transactional 注解,如果使用了这个注解那么在以下几个情况下会导致事务失效:

1)rollbackFor 没设置对,比如默认没有任何设置(RuntimeException 或者 Error 才能捕获),则方法内抛出 IOException 则不会回滚,需要配置 @Transactional(rollbackFor = Exception.class)

2)异常被捕获了,比如代码抛错,但是被 catch 了,仅打了 log 没有抛出异常,这样事务无法正常获取到错误,因此不会回滚。

3)同一个类中方法调用,因此事务是基于动态代理实现的,同类的方法调用不会走代理方法,因此事务自然就失效了。

4)@Transactional 应用在非 public 修饰的方法上,Spring 事务管理器判断非公共方法则不应用事务。

5)@Transactional 应用在 final 和 static 方法上,因为 aop (Spring Boot2.x版本默认是 cglib,Spring 自身默认是 jdk,一般现在用的都是 SpringBoot)默认是 cglib 代理,无法对 final 方法子类化。static 是静态方法,属于类,不属于实例对象,无法被代理!

6)propagation 传播机制配置错误,例如以下的代码

复制代码
@Transactional(propagation = Propagation.REQUIRES_NEW, rollbackFor = Exception.class)
public void addUserAndAddress(User user,Address address) throws Exception {
    userMapper.save(user);
    addAddress(address);
}

@Transactional(propagation = Propagation.REQUIRES_NEW, rollbackFor = Exception.class)
public void addAddress(Address address) {
    addressMapper.save(address);
}

因为配置了 Propagation.REQUIRES_NEW,是新起了一个事务,即 addAddress 的事务和 addUserAndAddress 其实不是一个事务,因此两个事务之间当然就无法保证数据的一致性了。

7)多线程环境,因为 @Transactional 是基于 ThreadLocal 存储上下文的,多线程情况下每个线程都有自己的上下文,那么之间如何保持事务同步?保持不了,因此事务失效。

8)用的是 MySQL MyISAM,这个引擎本身不支持事务!

最后

再来推荐下我们的面试刷题网站和小程序:面试鸭!

相关推荐
数据智能老司机18 小时前
CockroachDB权威指南——CockroachDB SQL
数据库·分布式·架构
数据智能老司机18 小时前
CockroachDB权威指南——开始使用
数据库·分布式·架构
云上艺旅18 小时前
K8S学习之基础七十四:部署在线书店bookinfo
学习·云原生·容器·kubernetes
松果猿18 小时前
空间数据库学习(二)—— PostgreSQL数据库的备份转储和导入恢复
数据库
无名之逆19 小时前
Rust 开发提效神器:lombok-macros 宏库
服务器·开发语言·前端·数据库·后端·python·rust
s91236010119 小时前
rust 同时处理多个异步任务
java·数据库·rust
你觉得20519 小时前
哈尔滨工业大学DeepSeek公开课:探索大模型原理、技术与应用从GPT到DeepSeek|附视频与讲义下载方法
大数据·人工智能·python·gpt·学习·机器学习·aigc
数据智能老司机19 小时前
CockroachDB权威指南——CockroachDB 架构
数据库·分布式·架构
hzulwy19 小时前
Redis常用的数据结构及其使用场景
数据库·redis
程序猿熊跃晖19 小时前
解决 MyBatis-Plus 中 `update.setProcInsId(null)` 不生效的问题
数据库·tomcat·mybatis