最简单的使用mysql数据库的Java代码

假设mysql进程已经启动(默认端口3306),登录该实例的mysql账号为:root,密码为:root,该实例里面的目标数据库名字为test,则Java代码如下:

说明:实例即是instance,所有的类在使用前都需要建立一个instance

package ione.core.login;

import java.lang.System;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

import java.sql.Statement;
import java.sql.ResultSet;

//Notice:do not inport com.mysq.jdbc.*
//or you will have problems!

public class ConnectDB {
	
	public static void main(String[] args) {

		//1.使用Class类的forName()方法注册并建立一个Driver实例
		try {
			Class.forName("com.mysql.jdbc.Driver").newInstance();
		} catch (Exception ex) {
			ex.printStackTrace();
			//System.out.println(ex); 	//System.out.println(ex) = System.out.println("SQLException:" + ex.getMessage())
		}
		
		
		Connection conn = null;
		//2.使用DriverManager的getConnection()方法建立一个Connection实例conn
		try {
			conn = DriverManager.getConnection("jdbc:mysql://localhost/test?" +
					"user=root&password=root");			
		} catch (SQLException ex){
			ex.printStackTrace();
		}

		
		Statement stmt = null;
		ResultSet rs = null;
		
		//3.使用Connection对象(即conn)的createStatement()方法创建一个Statement对象;
		//		createStatement()方法的第一个参数:设置ResultSet的数据类型为动态或者静态 ; 
		//		createStatement()方法的第二个参数:设置ResultSet的并发模式。
		try {
			stmt = conn.createStatement(java.sql.ResultSet.TYPE_FORWARD_ONLY,
					java.sql.ResultSet.CONCUR_READ_ONLY);	
			
			//4.使用Statement对象(即stmt)的executeQuery()方法执行sql语句,并把返回的	
			//结果集赋值给ResultSet的对象rs
			rs = stmt.executeQuery("select * from users;");	

			
			if (stmt.execute("select * from users;")) {
				rs = stmt.getResultSet();
			} 
			
			//5.打印结果集中的数据
			if (rs.next()) {
				System.out.println("id\t" + "username\t" + "password\t" + "created_time\t\t" + "update_time\t");
				System.out.print(rs.getString("id")				+ "\t");
				System.out.print(rs.getString("username")		+ "\t\t");
				System.out.print(rs.getString("password")		+ "\t\t");
				System.out.print(rs.getString("created_time")	+ "\t");
				System.out.println(rs.getString("updated_time"));
			}
			
		} catch (SQLException ex) {
				ex.printStackTrace();
			}
		
		//6.在final{}块中释放资源,释放的顺序与创建实例的顺序恰好相反
		finally {
			if (rs != null) {
				try {
					rs.close();
				} catch (SQLException ex) {}
				rs = null;
			}
			
			if (stmt != null) {
				try {
					stmt.close();
				} catch (SQLException ex) {}
				stmt = null;
			}
		
		}
	}	//End of main
	
	
}	//End of the Java class


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值