public class UtilJDBC{
String url = "jdbc:mysql://localhost:3306/shen";
String username = "root";
String password = "root123";
public static void main(String[] args){
//加载驱动
DriverManager.registerDriver(new Driver());
//或者 Class.forName("com.mysql.jdbc.Driver");
//连接数据库
Connection conn=DriverManager.getConnection(url,username,password);
//3.获取用于向数据库发送sql语句的statement
Statement st = conn.createStatement();
//4.向数据库发sql
String sql = "select id,name,password,email,birthday from users";
st.executeQuery(sql);
Statement.close;
conn.close;
//方式二
2、PreperedStatement
PreperedStatement是Statement的子类,它的实例对象可以通过调用:
PreperedStatement st = conn.preparedStatement()
PreperedStatement st = null;
String sql = "select * from users where name=? and password=?";
//3.获取用于向数据库发送sql语句的Preperedstatement
st = conn.preparedStatement(sql);//在此次传入,进行预编译
st.setString(1, username);
st.setString(2, password);
//4.向数据库发sql
st.executeQuery();//在这里不需要传入sql
1. PreperedStatement可以避免SQL注入的问题。
2. Statement会使数据库频繁编译SQL,可能造成数据库缓冲区溢出。PreparedStatement 可对SQL进行预编译,从而提高数据库的执行效率。
3. 并且PreperedStatement对于sql中的参数,允许使用占位符的形式进行替换,简化sql语句的编写。
jdbc
最新推荐文章于 2024-09-26 14:19:34 发布