如何将个人网站建设和维护纳入教育课程体系?
摘要:个人做门户网站,网站开发维护入哪个科目,公司网站备案电话,网站asp一(JDBC的编程步骤) 1.加载数据库驱动 加载数据库驱动通常使用class类的静态方法forName&
个人做门户网站,网站开发维护入哪个科目,公司网站备案电话,网站asp一#xff08;JDBC的编程步骤#xff09;
1.加载数据库驱动
加载数据库驱动通常使用class类的静态方法forName#xff08;#xff09;来实现#xff0c;具体实现方式如下#xff1a;
Class.forName#xff08;“DriverName”#xff09;#xff0c;DriverName就是数…一JDBC的编程步骤
1.加载数据库驱动
加载数据库驱动通常使用class类的静态方法forName来实现具体实现方式如下
Class.forName“DriverName”DriverName就是数据库驱动类所对应的字符串。
要加载MySQL数据库的驱动可以采用如下代码
Class.forName(com.mysql.cj.jdbc.Driver);//MySQL8版本
Class.forName(com.mysql.jdbc.Driver);//MySQL5版本
加载Oracle数据库的驱动可以采用如下代码
Class.forName(Oracle.jdbc.driver.OracleDriver);
从上面两种加载数据库驱动的代码可以看出在加载驱动时所加载的并不是真正使用数据库的驱动类而是数据库驱动类名的字符串。
2.通过DriverManage获取数据库连接。
DriverManage中提供了一个getConnection方法来获取数据库连接获取方式如下
Connection conDriverManage.getConnection(String url,String user,String pwd);
方法里面的三个参数分别表示连接数据库的url登录数据库的用户名和密码。其中用户名和密码通常由数据库管理员设置而连接数据库的url则遵循一定的写法。以MySQL数据库为例其地址的书写格式如下
urljdbc:mysql://hostname:port/databasename;
eg:urljdbc:mysql://localhost:3306/stu ;
上面代码中jdbc:mysql是固定写法mysql指的是MySQL数据库。hostname表示主机名如果数据库在本机上hostname可以为localhost或者127.0.0.1,如果在其他机器上hostname为所要连接机器的IP地址port指的是连接数据库的端口号MySQL端口号默认为3306databasename指的是MySQL中相应数据库的名称。
3.通过Connection对象获取Statement对象。
Connection创建Statement的方式有以下3种
1createStatement创建基本的Statenment对象。
2prepareStatementString sql根据传递的SQL语句创建PrepareStatement对象。
3: prepareCallString sql根据传递的SQL语句创建CallableStatement对象。
以创建基本的Statement对象为例创建方式如下
Statement stmtcon.createStatement();
4.使用Statement执行SQL语句。
所有的Statement都有如下三种执行SQL语句的方法。
1executeString sql,用于执行任意的SQL语句。
2executeQueryString sql用于执行查询。返回一个ResuleSet结果集对象。
3.executeUpdateString sql主要用于执行DML数据操作语言和DDL数据定义语言语句。执行DML语句INSERTUPDATEDELETE时会返回受SQL语句影响的行数执行DDLCREATEALTER语句返回0。
以execyteQuery方法为例其使用方式如下
ResultSet rsstmt.executeQuery(sql);
5.操作ResultSet结果集。
如果执行的SQL语句是查询语句执行结果将会返回一个ResultSet对象该对象里保存了SQL语句查询的结果。程序可以通过操作该ResultSet对象来取出查询结果。
6.关闭连接释放资源。
每次操作数据哭结束后都要关闭数据库连接释放资源以重复利用资源 。需要注意的是通常资源的关闭顺序与打开顺序相反关闭资源顺序为ResultSetStatement或PrepareStatement和Connection。为了保证在异常情况下也能关闭资源。需要在try……catch的finally代码块中统一关闭资源。
二案例展示
从数据库中的数据表读取数据并将结果打印在控制台。
1搭建数据库环境。
在MySQL数据库中创建一个名为jdbc的数据库在该数据库下创建一个名称为tb_user的表创建数据库和表的SQL语句如下
create database jdbc;
use jdbc;
create table tb_user(id int primary key auto_increment,NAME varchar(40),sex varchar(2),email varchar(60),birthday DATE);
上述创建tb_user表时添加了idNAMEsexemailbirthday5个字段NAME字段名称为大写形式是因为NAME在MYSQL数据库中属于关键字为方便区分所以将NAME字段名称全部用大写表示。
数据库和表创建成功后再向tb_user表中添加3条数据插入的SQL语句如下
insert into tb_user(NAME,sex,email,birthday)
values (Jack,男,jack126,com,2000-08-01),(Tom,男,tom126.com,1999-01-09),(Alice,女,alice126,com,2001-05-06);
查看数据是否添加成功使用select语句查询tb_user表中的数据查询结果如下 2创建项目环境导入数据库驱动。
2.1 在项目中新建一个文件夹Directory取名为lib将数据库驱动文件JAR包mysql-connector-java-8.0.18复制在lib文件夹中驱动下载地址可进maven仓库。
2.2 右键File-Project Structure-Libraries--Java-项目下lib包中的驱动包-ok-ok-ok-Apply-ok 2.3 编写JDBC程序
package jdbc;import java.sql.*;public class Demo1 {public static void main(String[] args) throws SQLException {Connection connull;Statement stanull;ResultSet resnull;try {//1.加载数据库驱动Class.forName(com.mysql.cj.jdbc.Driver);//2.通过DriverManage获取数据库连接String urljdbc:mysql://localhost:3306/jdbc?serverTimezoneUTCuseUnicodetruecharacterEncodingutf8useSSLtrue;String userroot;String password123456;con DriverManager.getConnection(url,user,password);//3.通过Connection对象来获取Statement对象sta con.createStatement();//4.使用Statement对象来执行SQL语句String sqlselect * from tb_user;res sta.executeQuery(sql);//5.操作ResultSet结果集System.out.println(id\tname\tsex\teamil\tbirthday);while(res.next()){//通过列名获取指定字段的值int idres.getInt(id);String nameres.getString(name);String sexres.getString(sex);String emailres.getString(email);Date birthdayres.getDate(birthday);System.out.println(id\tname\tsex\temail\t birthday);}} catch (Exception e) {e.printStackTrace();}finally {//6.关闭连接释放资源if(res!null){res.close();}if(sta!null){sta.close();}if(con!null){con.close();}}}}该案例中首先注册了MySQL数据库驱动通过DriverManage获取一个Connection对象然后使用Connection对象创建一个Statement对象Statement对象通过executeQueryString sql方法执行了SQL语句并返回结果集ResultSet接下来遍历ResultSet得到查询结果并输出最后关闭连接释放数据库资源。
