javaweb实训第四天上午——JDBC入门(1)https://developer.aliyun.com/article/1414842
3.1.3 拿到连接(贾琏)
注册驱动成功之后,接着拿到链接;(贾琏是一个人名字)
贾:加载驱动;
链:建立连接;
注册驱动之后,怎么建立连接?
通过DriverManger 驱动管理建立连接:
Static Connction getConnection(String url,String user,String password); Url :连接协议(固定的协议格式,大家能找到即可 详见:JDBC连接主流数据库.txt) User:用户名 Password:密码
jdbc:mysql://localhost:3306/mydb
jdbc:mysql://ip地址:端口号/数据库名称
jdbc:mysql:///数据库名称
代码:
DriverManager.getConnction(“jdbc:msql://localhost:3306/test0303”,”root”,”admin”);
(了解)验证已经获取连接:可以在MySQL控制台,使用命令:show processlist( 查看MySQL运行进程.)
其他的连接:打开工具,也需要建立连接;
(了解)如果把 Class.forName(“com.mysql.jdbc.Driver”);注释,查看能否拿到连接?
从Java6(JDBC4.0)开始,可以不再加载注册驱动.
为啥不再需要加载注册驱动了?
从Java6开始,规范要求每一个JDBC驱动的包,都必须带有META-INF/services/java.sql.Driver文件.
开发建议:依然还是建议手动的加载注册驱动. 如此,可以兼容之前的JDK版本.
注意点:常见的错:
没有导包
1类的全限定名写错了
2 没有导入包
使用的字符串写错 com.mysql.jdbc.Driver3
数据库,用户名,密码写错(用户名密码错误 都提示密码错误)
3.2 使用JDBC执行DDL
整个连接已经拿到,接着使用JDBC执行DDL语句–
去创建一张表
步骤:①准备sql 发送到数据库,去执行
② 执行JDBC,牢记口诀--==贾琏欲执事==
贾:加载驱动 链:创建并连接 欲:获得语句对象 Statement(语句对象)(需要SQL语句) 执:执行SQL语句 事:释放资源(用完之后,需要释放,不然会一直占用内存)
欲: 获得语句对象:下句代码和上面句代码都有关系的,拿到连接之后,才能拿到语句对象,因此从连接里面拿到语句对象
connction.createStatement() 创建一个Statement对象(也就是语句对象)来将SQL语句发送到数据库;
执: 执行sql语句 Statement(语句对象)里面的方法
释:释放资源 (我们需要关闭哪些资源,这些资源的顺序是怎样的
① 关闭对象; 一个statement(语句对象)一个connection(链接对象))
② 顺序,从里到外,先语句对象,然后连接对象(比如出门一样,先关闭卧室,然后在外面的)
总结:记住口诀 “贾琏欲执事”–重点
3.3 添加一条数据
刚才已经完成“贾琏欲执事”,并且完成创建了一张表,接下来完成增 删,改的功能;
接下来这段代码,会用正确的方式来完成;
刚才的方式错误的 —》可能连接出错的时候,也无法关闭资源
那怎样 一定让 资源关闭呢?
写到finally里面
3.4 修改数据
3.5 删除数据(标准格式)
javaweb实训第四天上午——JDBC入门(3)https://developer.aliyun.com/article/1414844?spm=a2c6h.13148508.setting.45.6e1a4f0eQzpjQW