https://github.com/javastacks/spring-boot-best-practice先来回顾下原生Jdbc查询:
那是否PreparedStatement对象这种方式就一定比Statement对象方式好?以上简单回顾了下Jdbc中PreparedStatement与Statement对象;
没有那么绝对的事,大家要理解:
PreparedStatement对象的好处是,sql已经提前编译好,剩下的工作就是传入参数即可,编译好的sql可以复用,传入不同的参数,则数据库就将相应的参数填入编译好的sql。而Statement对象就是每次都要传入sql,丢给数据库去编译再执行;但是创建PreparedStatement对象的开销是比Statement对象大的。
回归到日常开发中,以上的区别我们压根也不用在意,事实上,百分之九十的场景我们使用的是PreparedStatement对象的方式,可能平时没有感知到,因为这是框架已经封装了。再者,当系统出现性能问题时,也绝对不会是因为这两个对象的原因。
sql中的问号代表参数占位符,这也是PreparedStatement对象特点之一,会将你传入的参数一一替换进占位符反之如下:
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) | Powered by Discuz! X3.4 |