博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
一个简单程序快速入门JDBC
阅读量:5051 次
发布时间:2019-06-12

本文共 2496 字,大约阅读时间需要 8 分钟。

首先创建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+"\t"+name+"\t"+sal+"\t"+hire);		}				//NO6)关闭所用过的连接对象		rs.close();		stmt.close();		conn.close();				//rs和stat叫轻量级对象,即创建和销毁不耗时		//conn叫重量级对象,即创建和销毁要耗时	}}

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

1    张小明

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

转载于:https://www.cnblogs.com/wanghang/p/6299653.html

你可能感兴趣的文章
多变量微积分笔记24——空间线积分
查看>>
poi操作oracle数据库导出excel文件
查看>>
(转)Intent的基本使用方法总结
查看>>
Windows Phone开发(24):启动器与选择器之发送短信
查看>>
JS截取字符串常用方法
查看>>
Google非官方的Text To Speech和Speech Recognition的API
查看>>
stdext - A C++ STL Extensions Libary
查看>>
Django 内建 中间件组件
查看>>
bootstrap-Table服务端分页,获取到的数据怎么再页面的表格里显示
查看>>
进程间通信系列 之 socket套接字及其实例
查看>>
天气预报插件
查看>>
Unity 游戏框架搭建 (十三) 无需继承的单例的模板
查看>>
模块与包
查看>>
mysql忘记root密码
查看>>
apache服务器中设置目录不可访问
查看>>
嵌入式Linux驱动学习之路(十)字符设备驱动-my_led
查看>>
【NOIP模拟】密码
查看>>
java容器---------手工实现Linkedlist 链表
查看>>
three.js 性能优化的几种方法
查看>>
《梦断代码》读书笔记(三)
查看>>