摘要:
作用: 这个字段用于控制是否输出JDK动态代理自动生成的代理类文件 原因: 如果这个字段的值为true,就生成相关文件并输出到指定目录下,ProxyGenerator源码如下: 使用方法: 在启动参数VM中添加属性: sun.misc.ProxyGenerator.saveGeneratedFile 阅读全文
摘要:
如果我们想在Spring启动完成后立即做某些事情,可以用这个接口实现. 1.如何使用? 创建一个类贴上@Component注解,交由IOC容器管理,实现CommandLineRunner接口,重写run方法,启动后立即执行的逻辑就放在run方法中. 2.假如有多个逻辑需要实现怎么做? 创建多个这样的 阅读全文
摘要:
因为经常用MyBatis框架开发,关于底层的java如何连接和操作数据库的方法差不多忘完了,今天专门回顾了一下,总结一下. 1.JDBC是干什么的? JDBC是java用来连接和操作数据库的一套工具,JDBC的全称是Java DataBase Connectivity(即: java数据库连接器). 阅读全文
摘要:
大字符对象CLOB一般用于存储字符数超过4000的字段,如富文本,这些包含了格式的内容很容易超过4000字符. 1.存储富文本时,一般含有很多尖括号这种特殊字符,如果不转换一下,很可能无法传递到后台,因为这些特殊字符让框架无法识别,解决办法是用URLEncoder编码一下,就能把这些特殊字符转义成能 阅读全文
摘要:
该方法字面意思是忽略依赖类,注释给出的解释是在自动装配时忽略指定类型的依赖注入. 经过我在网上查的资料,发现自动装配有两种方式: 一种是在xml配置文件中的<beans>标签中配置一个属性,如下: 另一种是在依赖上添加@AutoWired注解,只有添加了该注解的依赖才会被自动注入实例. 而ignor 阅读全文
摘要:
该方法目的是获取bean工厂.主要逻辑是:刷新bean工厂,获取bean工厂,进而返回bean工厂,但实际上并没有刷新bean工厂,基本上为空实现.源码如下: 而刷新bean工厂,正如注释所说,do nothing 关于刷新bean工厂的事什么也没做,只是设置了一个序列化id 而获取bean工厂只是 阅读全文
摘要:
该方法目的是做刷新上下文前的准备工作: 首先清空bean扫描器map中的内容,然后调用父类的prepareRefresh方法: 父类的准备刷新方法,主要做了3个工作: 1.简单的标志赋值 >2.初始化属性源 >3.验证必须的属性是否都有 其中初始化属性源,主要工作是:判断servletContext 阅读全文
摘要:
该方法目的是刷新应用上下文,是容器启动最主要的方法,其实现是一个模板方法,内容巨大,所以先看模板方法都做了哪些事,然后再细看每个方法的实现机制. refreshContext(context)方法首先调用了本类中一个refresh(context)方法: 然后在该方法中,context变身Abstr 阅读全文
摘要:
该方法目的是对上面刚创建的环境对象进行相关配置,包含两步:配置属性源和配置活跃profiles. 其中配置属性源如下: 1.首先获取属性源 2.然后将默认属性源添加到属性源中 3.然后将命令行属性源添加到属性源中(两种情况: 一种复合,一种简单) 属性源配置结束,说明配置属性源就是将默认属性源和命令 阅读全文