一、异常为什么没有回滚
事务分为声明式和编程式
发生运行时异常如果想要回滚需满足两个条件
- 在xml配置使用SpringAop配置事务 如果是注解开启事务需要在配置文件中开启事务并在要添加事务的类或者方法上添加@Transaction注解
- 事务要有异常,才会回滚,如果运行期异常被try catch了,但是异常捕获后没有继续抛出RuntimeException运行期异常,事务无法获取异常信息,也不会回滚。
二、idea中如何解决git冲突
出现这种情况原因?
由于git远程仓库代码和本地代码不一致。导致pull的时候出错
解决办法:
- 创建Stash Changes 个人理解:应该是把本地的代码先隐藏起来
- git pull 这时候就可以把远程git仓库代码拉取下来覆盖本地,此时我们在UnStash Changes 把刚才隐藏的代码恢复
这时会弹出一个框然后点进去
出现一个界面,分为三部分,从左到右依次是服务器远程仓库代码、本地git仓库代码、在本地修改之后并没有提交到本地仓库的代码。选择你所需要的并且接受,commit提交并push到远程仓库完成本地仓库和远程仓库的同步。至此冲突完美结局。
三、MySQL 数据库字符集 utf8 和 utf8mb4 的区别
- MySQL 的 utf8mb4 是真正的 UTF-8。
- MySQL 的 utf8 是一种专属的编码,它能够编码的 Unicode 字符并不多。
四、maven多模块项目,子模块依赖父模块不写版本号时编译器报错
解决办法:
百度之后我发现要加我在父模块已经加了还是报错 最后试了下在子模块中这样配置就是多加了个就不在报错了 但是当我去掉之后神奇般的也不报错了,好奇怪
org.springframework.bootspring-boot-starter-parent2.3.3.RELEASE
五、idea中提交代码之后并没有push到远程仓库,如何撤回提交
1、在log提交记录中找到刚才提交的那条记录,右键undo commit。
2、在log提交记录中找到刚才提交的上一条记录,右键Reset Current Branch to Here
之后选择Mixed,意思就是,回滚后,不仅移动了本地库的指针,同时暂存区的东西也没了,就是你上次添加到暂存区的文件没了。这时我们修改之后可以重新提交刚刚撤销的文件
3、分支合并
https://blog.csdn.net/fengfengchen95/article/details/82910308
六、调用第三方接口一些简便方法
1、调用接口返回一个对象可以用Map<String,Object>接收,返回一个数组对象可以用List<Map<String,Object>>接收。
2、利用Feign将请求封装在interface接口方便调用。