赞
踩
checkout branch 然后 merge
在idea当中merge之后由于加上了这些符号,文件会报错,这个时候手动修改就好了
建议参考https://blog.csdn.net/weixin_45797022/article/details/121199814
总的来说就是merge是整合另一个分支到本分支上,这会产生一个新的commit提交到远程库(请注意commit只提交与远程端不同的那部分文件数据),分支还是两个分支而且会形成一个环,而rebase是在另一个分支的基础上进行修改,分支变成了一条直线。
这个。。。好像知道有权限控制框架但是。。没用过,说一下数据库的权限管理吧,grant Select/delete on “主机@用户”
参考这篇文章https://blog.csdn.net/singit/article/details/103274908
一般来说注入的方式三种setter注入,构造器注入,注解注入(最常用),前两者是在xml文件当中实现的,具有非常强的可读性,后者最方便而且不同逻辑层对应不同的注释。
setter注入需要实现类实体的set方法,而构造其注入必须要实现构造器方法
首先检查缓存,然后是bean后处理器扫描构造方法构造bean,然后是依赖注入(后处理器接着扫描注入注解),初始化init方法,销毁标记(diposable接口)。
有controller (负责控制视图即可),service(负责处理数据逻辑), dao (负责读取数据的操作), mapper
建议参考如下的文章非常有帮助:
https://blog.csdn.net/insomsia/article/details/88865144
总的来说,spring、boot相较于spring的优点在于搭建的时候更加简洁,这都是springboot自动配置为我们提供的方便。
这种自动配置的表面功臣是启动类上方的注解@springbootApplication,但是点进去会有复合注解实现@springbootApplication的功能,其中@EnableAutoconfigration实现了自动配置,再点进去就会发现实际上这是通过@Conditional来加载指定的配置类进入到context环境中的。
锁重入是对当前线程而言的,对于不可重入锁显然当前线程想要去获取锁的时候发现该对象已经被上锁而等待,然而上锁的人就是它自己,这样就会造成死锁。
然而对于重入锁,在对象的头部mark word当中会写入当前线程的record ,之后对比record相同那么就放行,这就是可重入锁。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。