Statement和prepareStatement 有什么区别啊

Statement和prepareStatement 有什么区别啊?我知道怎么用,到不知道他们的区别啊?
各位大虾,请指教啊。多谢!

prepareStatement 更加安全,能够防止sql注入,威胁数据库安全。
例如:

如果用户输入'' or 1=1
登录验证时查询语句变为select * from user where username='' or 1=1;
依然成立 绕过验证。
还有很多sql注入代码~~
prepareStatement 能够预处理sql语句,防止这种情况