
SpringFramework源码
回车爱好者
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Spring+Mybatis应对代码扫描SQL注入问题
Spring+Mybatis应对代码扫描SQL注入问题在一些代码安全扫描中,经常会出现难以处理的“SQL注入”漏洞,也就是在Mybatis的Mapper中使用了${},这些地方无法轻易改为#{},例如需要动态决定查询的表名。那么我们应该如何应对这种棘手的情况呢?首先,我们做一个假设,扫描软件只能识别$。在这种情况下,我们可以考虑改变Mapper中的占位符,比如改为@{}。这样,我们只需要在SQL语句被实际执行前,把写在代码里的@替换成$就行了,功能不会受影响,且扫描软件无法发现。直接上代码:@C原创 2021-09-03 16:30:53 · 2422 阅读 · 1 评论 -
Spring容器刷新之obtainFreshBeanFactory
obtainFreshBeanFactory是容器刷新的第二步,主要是刷新beanfactory,然后返回beanfactory。 protected ConfigurableListableBeanFactory obtainFreshBeanFactory() { refreshBeanFactory(); //模版方法,子类实现 return getBeanFactory(); ...原创 2020-04-19 01:30:39 · 254 阅读 · 0 评论 -
Spring容器刷新之prepareRefresh
prepareRefresh是容器刷新的第一步,过程比较简单,直接看中文注释。 protected void prepareRefresh() { // Switch to active. this.startupDate = System.currentTimeMillis(); //记录启动时间 //设置启动标志 this.closed.set(false); this...原创 2020-04-18 22:45:18 · 225 阅读 · 0 评论 -
Spring容器刷新之invokeBeanFactoryPostProcessors
invokeBeanFactoryPostProcessors是容器刷新的第五步,其作用就是创建已注册的BeanFactoryPostProceessor并执行他们的postProcess处理方法。这一过程的核心方法就是PostProcessorRegistrationDelegate类的静态方法invokeBeanFactoryPostProcessors(ConfigurableListabl...原创 2020-04-03 02:11:59 · 252 阅读 · 0 评论