如何使用jdbc连接mysql数据库
JDBC连接MySQL(假设数据库和jdk环境已经安装好):
加载及注册JDBC驱动程序 Class.forName("com.mysql.jdbc.Driver"); Class.forName("com.mysql.jdbc.Driver").newInstance(); JDBC URL 定义驱动程序与数据源之间的连接 标准语法: <protocol(主要通讯协议)>:<subprotocol(次要通讯协议,即驱动程序名称)>:<data source identifier(数据源)> MySQL的JDBC URL格式: jdbc:mysql//[hostname][:port]/[dbname][?param1=value1][¶m2=value2]…. 示例:jdbc:mysql://localhost:3306/sample_db?user=root&password=your_password 常见参数: user 用户名 password 密码 autoReconnect 联机失败,是否重新联机(true/false) maxReconnect 尝试重新联机次数 initialTimeout 尝试重新联机间隔 maxRows 传回最大行数 useUnicode 是否使用Unicode字体编码(true/false) characterEncoding 何种编码(GB2312/UTF-8/…) relaxAutocommit 是否自动提交(true/false) capitalizeTypeNames 数据定义的名称以大写表示 大写表示 建立连接对象 String url="jdbc:mysql://localhost:3306/sample_db?user=root&password=your_password";Connection con = DriverManager.getConnection(url); 建立SQL陈述式对象(Statement Object) Statement stmt = con.createStatement(); 执行SQL语句 executeQuery() String query = "select * from test"; ResultSet rs=stmt.executeQuery(query); 结果集ResultSet while(rs.next()) {rs.getString(1);rs.getInt(2);} executeUpdate() String upd="insert into test (id,name) values(1001,xuzhaori)"; int con=stmt.executeUpdate(upd); execute() 示例: try { } catch(SQLException sqle) { } finally { } Java类型和SQL类型 技术手册P421 PreparedStatement(预编语句) PreparedStatement stmt = conn.prepareStatement("insert into test(id,name)values(?,?)"); stmt.setInt(1,id); stmt.setString(2,name); 注:一旦设定语句的参数值后,就可以多次执行改语句,直到调用clearParameters()方法将他清除为止 |