java项目中连接MySql
来源:互联网 发布:linux大作业 编辑:程序博客网 时间:2024/06/06 07:45
在Java之中,所有数据库操作的类和接口都保存在了Java.sql包中,在这个包中
一个类:DriverManager类
四个接口:Connection,Statement,ResultS,PreparedStatement
所有JDBC连接数据库的操作流程都是固定的,按照如下几部完成:
1. 加载数据库的驱动程序(向容器加载)
2. 进行数据库连接(通过DriverManager类完成,Connection表示连接)
3. 进行数据的CRUD(Statement,PreparedStatement,ResultSet)
4. 关闭数据库操作以及连接(直接关闭连接就够了)
一. 加载数据库的驱动程序
所有的JDBC实际上都是由各个不同的数据库生产商提供的数据库驱动程序,这些都是由 *.jar包给出来的,所以如果要使用那么就需要为其配置CLASSPATH,而后要设置驱动程序的类名称(包.类)
- 新建Java项目
- 在项目中引入mysql-connector-java-5.1.44-bin.jar包(包在MySQL官网中下载)右键项目-Build Path-Add External Archievs…
- 加载数据库驱动程序(一组类和包):
MySQL驱动程序类:com.mysql.jdbc.Driver
加载类使用:Class.forName(“com.mysql.jdbc.Driver”);
二.数据库连接
要想连接数据库需要提供有如下几个信息:
- 数据库的连接地址 : jdbc:mysql://localhost/
- 数据库名称:mydata
- 数据库的用户名 :root
- 数据库的密码 : xxx
因此,可写为:
jdbc:mysql://localhost/mydata?user=root&password=xxx
要连接数据库必须依靠DriverManager类完成,在此类定义有如下方法:
连接数据库:
public static Connection getConnection(String url,String user,String password)
在JDBC里面,每一个数据库的连接都要求使用一个Connection对象进行封装,所以只要有一个新的Connection对象就表示要连接一次数据库
三. 数据库的操作
数据库的操作依靠Statement接口完成
如果想要取得Statement接口的实例化对象则需要依靠Connection接口提供的方法完成
取得Statement接口对象:
public Statement createStatement() throw SQLException
当取得了Statement接口对象之后可以使用以下两个方法实现数据库的操作:
- 数据更新
public int executeUpdate(String sql) throws SQLException
返回更新的行数
- 数据查询
public ResultSet executeQuery(String sql) throws SQLException
返回一个集合
在ReslutSet接口里面定义了如下方法:
向下移动指针并判断是否有数据行:
public boolean next() throws SQLException()
移动之后就可以直接取得当前数据行中所有数据列的内容了:
取出数据列的内容:getInt(),getDouble,getString(),getDate()
数据更新实例:
Statement stmt=conn.createStatement();String sql="insert into dept values (70,'C','C')";int len=stmt.executeUpdate(sql);System.out.println("影响的数据行:"+len);
输出:
数据查询实例:
ResultSet rs=stmt.executeQuery("Select * from dept");while(rs.next()){ System.out.println(rs.getString("deptno")); }
四. 关闭数据库
Connection接口提供有close()方法:
public void close() throw SQLException
实例:
数据库mydata中表dept中的内容
Java代码:
import java.sql.*;public class TestMySqlConnection { public static void main(String[] args) { // TODO Auto-generated method stub try{ //第一步加载数据库驱动程序 Class.forName("com.mysql.jdbc.Driver"); }catch (Exception ex){ ex.printStackTrace(); } try{ //数据库的连接 Connection conn=DriverManager.getConnection("jdbc:mysql://localhost/mydata?user=root&password=961218"); Statement stmt=conn.createStatement(); ResultSet rs=stmt.executeQuery("Select * from dept"); while(rs.next()){ System.out.println(rs.getString("deptno")); } }catch(SQLException ex){ System.out.println("SQLException"+ex.getMessage()); System.out.println("SQLState:"+ex.getSQLState()); System.out.println("VendorError"+ex.getErrorCode()); } }}
输出:
取出了dept表中的deptno
- java项目中连接MySql
- java项目中使用JDBC连接mysql数据库查询数据
- java 项目连接mysql 数据库
- 在JAVA中连接MYSQL
- JAVA中MySQL建立连接
- JAVA中连接mysql数据库
- Eclipse中SSH项目连接mysql数据库
- java项目无法连接到mysql
- Java Web项目中连接Access数据库
- spring-java项目中连接redis数据库
- Java Web项目中连接Access数据库
- java编程中mysql的连接问题
- Java中连接MySql数据库的例子
- eclipse中java连接mysql步骤
- Java中JDBC连接MySql数据库(下)
- JAVA中使用JDBC连接MySQL
- java开发中JDBC连接MySQL
- java中与mysql连接详细操作
- 019day(字符串库函数的学习)
- 在线扩容datanode脚本(用fabric)
- MATLAB与C++汇编中调试.cpp的方法
- 前端学习_01.css选择器
- ionic -bootstrap 问题
- java项目中连接MySql
- Find The Multiple(搜索)
- 【图论】[luoguP1364]医院设置
- 多态成员的特点
- 三种距离.A*算法解八数码问题
- 信息学奥赛一本通(C++版) 第二部分 基础算法 第四章 递归算法
- hbase rest api的使用
- Scala隐式转换之隐式参数
- arduino学习笔记4 读取模拟器,PWM调节灯光亮度,感热灯