JDBC是操作数据库的接口,对于一般的web框架来说,这个有点经典了,
它是web应用程序最基本的接口,属于底层开发必须具备的基本功能,接下来,就看鉴神怎样调用JDBC API。
JDBC的基本功能为装载驱动、连接数据库、装载SQL语句,访问数据库、处理返回结果、关闭连接。这几个基本步骤除了关闭连接外,其他必不可少。
JDBC访问数据库的基本步骤为:
装载驱动
为什么转载驱动,JDBC是这样封装的,我也不知道为什么
try { Class.forName("com.mysql.jdbc.Driver"); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } try { DriverManager.registerDriver(new Driver()); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }
装载驱动后再能建立数据库的连接,JDBC是这样的过程,我也不知道为什么
数据库连接
数据库连接使用下面的代码
Connection conn; String url = "jdbc:mysql://localhost:3360/base?useUnicode=true&" + "characterEncoding=UTF-8"; try { conn = DriverManager.getConnection(url, "root", "XXXX"); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }
在url中,base是需要连接的数据库:
useUnicode=true&characterEncoding=UTF-8
这个也是基本不变的,JDBC是这样举例的,
连接数据库后才能访问数据库。
装载SQL语句
装载SQL语句的代码为:
String sql = "INSERT INTO GOODS(GOODS_ID,GOODS_NAME,CLASS_ID) " + "VALUES(?,?,?)"; PreparedStatement st; try { st = (PreparedStatement)conn.prepareStatement(sql); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }
在sql语句中?,?,?是需要传递的参数
接下来只要对参数进行赋值就可以了,接着看
传入参数
try { st.setString(1, "3456223"); st.setString(2, "答嗔"); st.setString(3, "1024"); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }
注意,参数必须和对应的?一一对应。
访问数据库
try { st.execute(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }
那么我们就说到这里了,
下文再见。