连接数据库步骤:
一.注册驱动
注册驱动的三种方法:
1.DriverManager.registerDriver(new com.mysql.jdbc.Driver());
2.System.setProperty("jdbc.drivers", "com.mysql.jdbc.Driver");
3.Class.forName("com.mysql.jdbc.Driver"); 推荐使用这种 //无需引包
二.建立连接:
Connection conn = DriverManager.getConnection(url, user, password);
url格式:
jdbc:子协议:子名称://主机名:端口/数据库名?属性名=属性值&...
String url = "jdbc:mysql://localhost:3306/jdbc";
// 若主机名及端口号均为缺省值,则可省略掉,如 String url = "jdbc:mysql:///jdbc"; (localhost:3306)为mysql缺省端口号
User,password可以用“属性名=属性值”方式告诉数据库
其他参数如:
useUnicode=true&characterEncoding=GBK
三.创建语句:
四.执行语句:
五.处理结果
六.释放资源
PreparedStatement相对于Statement的优势:
1.没有SQL注入的问题
2.Statement会使数据库频繁编译SQL,可能造成数据库缓冲区溢出
3.数据库和驱动可以对PreparedStatement进行优化(只有在相关联的数据库连接没有关闭的情况下有效)
一.注册驱动
注册驱动的三种方法:
1.DriverManager.registerDriver(new com.mysql.jdbc.Driver());
2.System.setProperty("jdbc.drivers", "com.mysql.jdbc.Driver");
3.Class.forName("com.mysql.jdbc.Driver"); 推荐使用这种 //无需引包
二.建立连接:
Connection conn = DriverManager.getConnection(url, user, password);
url格式:
jdbc:子协议:子名称://主机名:端口/数据库名?属性名=属性值&...
String url = "jdbc:mysql://localhost:3306/jdbc";
// 若主机名及端口号均为缺省值,则可省略掉,如 String url = "jdbc:mysql:///jdbc"; (localhost:3306)为mysql缺省端口号
User,password可以用“属性名=属性值”方式告诉数据库
其他参数如:
useUnicode=true&characterEncoding=GBK
三.创建语句:
四.执行语句:
五.处理结果
六.释放资源
PreparedStatement相对于Statement的优势:
1.没有SQL注入的问题
2.Statement会使数据库频繁编译SQL,可能造成数据库缓冲区溢出
3.数据库和驱动可以对PreparedStatement进行优化(只有在相关联的数据库连接没有关闭的情况下有效)