1、#{}和${}的区别是什么?
两者都表示占位符;
#{}预编译处理,,mybatis在执行sql语句时#{}会替换为?调用preparedStatement方法来赋值
#{}可以防止SQL注入,提高系统安全性
${}是字符串的替换:
mybatis在处理${}时,就是把${}替换成变量的值
2、数组有没有length()方法?String有没有length()方法?
数组没有length方法,但有length属性,String有length方法.(注: JavaScript中,获得字符串的长度是通过length属性得到的,这一点容易和Java混淆 )
3、阐述final、finally、finalize的区别。
final:修饰符 ,被final修饰的类不能被继承,被final修饰的方法不能被重写,被final修饰的变量不能被改变,被final声明的变量必须在生声明时给定初值,只能被读取不能被修改.
finally:try…catch..finall,异常处理语句结构的一部分,表示总是会执行,一常用于一些流的关闭
finalize: Object类的一个方法,java中允许使用finalize()方法在垃圾收集器将对象从内存中清除之前作必要的清理工作,这个方法是由垃圾收集器在销毁对象时调用的,通过重写finalize()方法可以整理系统资源或者执行其他清理工作.
4.spring配置bean实例化有哪些方式(IOC)?
2.3.实例工厂方式: