总结

https://blog.csdn.net/hanliuxi4265/article/details/87971982

1 mybatis # 和$区别

#{}是预编译处理,${}是字符串替换。

Mybatis在处理#{}时,会将sql中的#{}替换为?号,调用PreparedStatement的set方法来赋值;

Mybatis在处理${}时,就是把${}替换成变量的值。

使用#{}可以有效的防止SQL注入,提高系统安全性。

 

String和StringBulider的区别

String类中成员变量是final修饰的字符数组,创建后长度确定,拼接的时候,需要重新创建新的对象的方法,效率低。
StringBuilder类中成员变量是没有修饰的字符数组,当我们调用append();方法进行拼接的时候,调用父类的方法对数组扩容,本地方法实现字符串的拼接

StringBulider和StringBuffer的区别

 

posted @ 2019-09-02 21:49  夕阳下的无名草  阅读(116)  评论(0编辑  收藏  举报