java JDBC方式操作mysql数据库

前期准备:

1 首先你需要安装mysql数据库软件

2 从mysql官网下载mysql JDBC的驱动程序,驱动程序要与mysql版本一致,但我没有找到与我mysql版本一致的驱动。我只看到了 5.1.44版本的,下来试试吧。下载后解压得到mysql-connector-java-5.1.44-bin.jar文件

3 设置驱动程序类路径

方法一:在环境变量classpath中添加驱动程序路径信息。

方法二:把驱动程序复制到应用程序类路径下(项目的src目录)。然后在eclipse中,右击项目名,在下拉菜单中,选择 build path -> configure build path 打开对话框后选择 Libraries 标签,单击 Add JARs 选择刚才放在src目录下的jar包点击 OK 完成配置。

如果是WEB项目,把驱动程序复制到webRoot\WEB-INF\lib 目录下就可以了,eclipse会自动把lib目录下的类库添加到类路径中。

创建测试数据库并添加数据:

CREATE TABLE `user` (
 `id` int(11) NOT NULL AUTO_INCREMENT,
 `name` varchar(20) NOT NULL,
 `phone` varchar(15) NOT NULL,
 PRIMARY KEY (`id`),
 KEY `name` (`name`),
 KEY `phone` (`phone`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;


INSERT INTO `user` (`id`, `name`, `phone`) VALUES
(1, 'king', '13100000000'),
(2, 'queen', '13111111111');


基本使用

package JdbcMysql;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class MysqlOperator {
	// java jdbc操作mysql数据库基本步骤
	// 1  加载JDBC驱动
	// 2 创建数据库连接
	// 3 创建Statement对象
	// 4 执行sql语句,返回结果集对象ResultSet
	// 5 处理返回的结果
	// 6 关闭创建的各对象
    final static String driver = "com.mysql.jdbc.Driver";
    final static String url = "jdbc:mysql://localhost:3306/test";
    final static String user = "root";
    final static String password = "root";
    
    // 加载驱动程序
    static {
    	try {
			Class.forName(driver);
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		}
    }
	public static void main(String[] args) throws ClassNotFoundException, SQLException {
	  
		// 创建连接
		Connection conn = getConn();
         if(conn==null){
        	 System.out.println("创建连接失败");
        	 System.exit(0);
         }
         // 创建Statement对象
         Statement stmt = conn.createStatement();
         String sql = "select * from user";
         // 执行sql查询
         ResultSet res = stmt.executeQuery(sql);
         // 从结果集中取数据   可以按列名称取值    也可以按索引号取值
         while(res.next()){
        	 System.out.println(res.getString("name")+"---"+res.getString("phone"));
         }
         
         // PreparedStatement 的基本用法  带条件查询
         ResultSet res1 = getResultSetByPhone("13100000000",conn);
         while(res1.next()){
        	 System.out.println(res1.getString("name")+"---"+res1.getString("phone"));
         }
         
         // 关闭连接
         closeConn(conn);
         
	}
	
	// 创建连接
	public static Connection getConn() throws SQLException{
		Connection conn = null;
		conn = DriverManager.getConnection(url,user,password);
		return conn;
	}
 
	// 关闭连接
	public static void closeConn(Connection conn) throws SQLException{
		if(conn!=null&&!conn.isClosed()){
			conn.close();
		}
	}
	
	// 封装一个带条件查询
	public static ResultSet getResultSetByPhone(String phone,Connection conn) throws SQLException{
		String sql = "select * from user where phone=?";
		PreparedStatement pstmt = conn.prepareStatement(sql);
		pstmt.setString(1, phone);
		return pstmt.executeQuery();
	}

}

在有了以上基础后,我们需要对涉及到的  Connection  Statement  ResultSet 对象进行深入研究,以便实现对mysql的更高级操作,比如 插入 修改 删除  调用存储过程  实现事务等。



猜你喜欢

转载自blog.csdn.net/wang740209668/article/details/78450898
今日推荐