《Java面经汇总【背诵版】囊括了基本所有考点【自己总结的】》文章优化

Java面经汇总【背诵版】囊括了基本所有考点【自己总结的】文章优化
RabbitMQ有以下几种工作模式???

你在开发中遇到什么问题?是怎么解决的?
例子:
在处理订单时要用到定时任务,当时采用的是Spring Task来完成,由于一个订单服务会部署多个,多个订单服务
同时去处理任务会造成任务被重复处理的情况,如何解决任务的重复处理。
解决:
采用乐观锁解决,在任务表中设置一个version字段记录版本号,取出任务记录同时拿到任务的版本号,执行前对
任务进行锁定,具体的做法是执行update根据当前版本号将版本号加1,update成功表示锁定任务成功,即可开始执行任务。

例子:
注册中心和服务提供者集群注册失败,启动报错
解决:修改yml文件,修改启动类上的注解,yml文件缩进出了问题,服务端启动类上应该添加注解@EnableEurekaServer,客户端@EnableDiscoveryClient

例子:
git合并冲突,甲乙都是根据point.java文件进行开发,甲开发出来版本2,并且提交了代码,乙开发出来版本3,也需要提交代码,此时将会报错存在冲突。因为甲提交版本之后,此时远端的代码已经是版本2了,而乙是在版本1的基础上进行开发出了版本3,所以乙想要提交代码,势必要将自己的代码更新为版本2的代码,然后在进行提交。
解决:拉去远端代码,存在冲突,会报错。此时我们需要将本地代码暂存起来stash;更新本地代码,将本地代码版本更新和远端的代码一致,将暂存的代码合并到更新后的代码后,有冲突的要手动解决冲突,然后提交解决冲突后的代码。

git add models/paper.go
git commit -m 'fix a bug'
git push origin master 因为有人就先push过,报错
git pull 自动合并,生成新的commit。分叉了!
(git log --oneline --graph)
git rebase 没有分叉了
(git log --oneline --graph)
git push origin master
==============
git pull --rebase ???

git checkout -b feature
(git branch)
git add newFunc.go
git commit -m 'add new func'
(git log --oneline --graph)
git checkout master
git merge feature 因为两个分支之前的版本不同步了???报错
git status 根据both modified的内容,手动解决conflict
git add newFunc.go
git commit -m 'merge master and feature' 合并成功,分叉了
(git log --oneline --graph)
==================(git reset --hard head^ 回退一个版本;git log --oneline --graph)
git checkout feature
git rebase master(以master为基础,将feature分支上的修改增加到master分支上,并生成新的版本。因为两个分支修改个同一个文件,产生了冲突,所以会rebase执行部分以后失败)
手动解决冲突
git add newFunc.go
git rebase --continue 不分叉了
(git log --oneline --graph)
git checkout master
git merge feature
(git log --oneline --graph)
git branch -d feature
Git rebase使用。上面内容的源文,不全懂。
git技巧之提交代码冲突。git stash暂存和还原没明白。

全部评论

相关推荐

点赞 3 评论
分享
牛客网
牛客企业服务