zoukankan      html  css  js  c++  java
  • 一个简单程序快速入门JDBC

    首先创建jdbc的库,再在这个库里面创建一张users表。

    drop database if exists jdbc;
    create database if not exists jdbc;
    
    use jdbc;
    
    drop table if exists users;
    create table if not exists users(
      id int(5),
      name varchar(10),
      sal double(8,2),        
      hire timestamp
    );
    
    insert into users(id,name,sal) values(1,'张小明',1111.11);
    insert into users(id,name,sal) values(2,'张明',2222.22);
    insert into users(id,name,sal) values(3,'张大明',3333.33);
    insert into users(id,name,sal) values(4,'刘星',4444.44);
    insert into users(id,name,sal) values(5,'刘星雨',5555.55);
    insert into users(id,name,sal) values(6,'李金星',6666.66);
    insert into users(id,name,sal) values(7,'何小明',7777.77);

    (因为一行行的插入,保证李最后一个字段时间值不一样)通过查询操作,可看到表结构如下:


    新建web工程,或者javase工程。

    快速入门代码详细解释如下:

    package cn.ydl.j2ee.dao;
    
    /**
     * SUN公司JDBC规则
     */
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.Statement;
    import java.sql.Timestamp;
    
    /**
     * JDBC入门,查询users表中的所有记录,并在控制台显示
     */
    public class JavaToMysql1 {
    	public static void main(String[] args) throws Exception{
    		//连接MySQL数据库服务器的字符串
    		//jdbc:主协议,即如果你用jdbc规则来连接数据库的话,主协议必定是jdbc
    		//mysql:子协议,即连接的是哪种数据库服务器,如果是mysql数据库服务器的话,必定是mysql
    		//127.0.0.1:数据库服务器是位于哪台PC的上,可以用ip表示,也可以用域名表示,例如:localhost
    		//3306:表示MySQL数据库服务器安装以PC上的端口号
    		//jdbc:表示需要访问MySQL数据库服务器上的哪个具体的数据库
    		//如果你访问的MySQL数据库服务器的本机上的话,且端口号是3306的话,可以简写成:jdbc:mysql:///jdbc
    		String url = "jdbc:mysql://127.0.0.1:3306/jdbc";
    		//进入MySQL数据库服务器的用户名
    		String user = "root";
    		//进入MySQL数据库服务器的密码,项目中密码不可以明文,必须加密
    		String password = "root";
    		//需要执行的SQL语句,建议用大写字母   ctrl+shift+x
    		String sql = "SELECT ID,NAME,SAL,HIRE FROM USERS";
    		
    		//NO1)表面:在classpath中查询com.mysql.jdbc.Driver这个字符串对象的类,加载到JVM中
    		//NO1)深层:向DriverManager注册数据库驱动
    		Class.forName("com.mysql.jdbc.Driver");
    
    		//NO2)获取与MySQL数据库服务器的连接
    		Connection conn = DriverManager.getConnection(url,user,password);
    		
    		//NO3)创建封装SQL语句的对象
    		Statement stmt = conn.createStatement();
    		
    		//NO4)执行SQL语句,这里我们使用查询,将结果封装到结果集
    		ResultSet rs = stmt.executeQuery(sql);
    		
    		//NO5)处理结果集,在默认情况下,指针位于结果集第一行记录之前/上
    		//rs.next()如果指向有记录的话,返回true;否则返回false
    		while(rs.next()){
    			//以行为单位,获取每个字段的值
    			int id = rs.getInt("id");
    			String name = rs.getString("name");
    			double sal = rs.getDouble("sal");
    			Timestamp hire = rs.getTimestamp("hire");
    			//显示在控制吧
    			System.out.println(id+"	"+name+"	"+sal+"	"+hire);
    		}
    		
    		//NO6)关闭所用过的连接对象
    		rs.close();
    		stmt.close();
    		conn.close();
    		
    		//rs和stat叫轻量级对象,即创建和销毁不耗时
    		//conn叫重量级对象,即创建和销毁要耗时
    	}
    }
    
    
    
    

    运行java程序。打印出了数据库中的id和name字段信息:

    1    张小明
    2    张明
    3    张大明
    4    刘星
    5    刘星雨
    6    李金星
    7    何小明


  • 相关阅读:
    判断设备类型是iPhone还是iPad
    robotium使用中的问题
    onTouchEvent()
    [ObjectC]@class的含义
    关于左外连接和内连接的区别
    web services = XML + HTTP
    c#中的变量
    C#捕捉异常
    ASP.NET中Visio图形的控制与数据的动态显示
    用存储过程在数据库中批量插入数据1w条
  • 原文地址:https://www.cnblogs.com/wanghang/p/6299653.html
Copyright © 2011-2022 走看看