实验环境:

OS : CentOS5.5 (Linux)

IDE : Eclipse

DBMS : MySQL

准备工作:

1、安装 MySql 。

详见http://www.cnblogs.com/zyumeng/archive/2012/09/17/2688772.html

2、安装 JDBC :

在命令行中输入:

wegt http://www.mysql.com/downloads/connector/j/mysql-connector-java-5.1.22.tar.gz

tar xzvf mysql-connector-java-5.1.22.tar.gz

3、将 mysql 服务器启动起来:

service mysqld start

4、登陆服务器以建立数据库:

mysql –u root –ppassword

5、建立数据库:

     create database Data;

然后即可在 IDE (Eclipse)下实现连接。

6、在Eclipse建立项目,然后 将驱动加载到该项目上。

方法为 : 点击项目右键 ->Properties( 属性 )->Java Build Path->Libraries->Add External JARs :

选择“解压JDBC目录”/mysql-connector-java-5.1.15.jar

在Eclipse中建立Java文件,命名为DataBase.java

具体代码:

    import java.io.UnsupportedEncodingException ;
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 DataBase
{
public static final String driver = "com.mysql.jdbc.Driver" ; // 驱动
public static final String url = "jdbc:mysql://localhost:3306/Data" ;// 定义URL
public static final String user = "root" ; // 用户名字
public static final String password = "password" ; // 用户密码 private static Connection connection ;// 用于建立连接
private static Statement statement ;// 用于执行 public static void main( String[] args ) throws ClassNotFoundException ,
SQLException , UnsupportedEncodingException
{
connect() ;// 先和数据库服务器建立连接
createTable() ;// 建立表
insert() ;// 向表中插入值
query() ;// 查询
close() ;// 关闭连接
} /**
* @throws ClassNotFoundException
* @throws SQLException
* 此方法建立连接
*/
private static void connect() throws ClassNotFoundException , SQLException
{ Class.forName( driver ) ;
connection = DriverManager.getConnection( url , user , password ) ;// 建立连接
if( !connection.isClosed() )
{
System.out.println( "Succeeded connecting to the Database!" ) ;
}
statement = connection.createStatement() ;// 建立statement
} /**
* @throws SQLException
* 建立表
*/
private static void createTable() throws SQLException
{
String sql = "create table Student( Id char(20) not null , Name char(20) not null , Sex char(10) not null , Mail char(30) not null , Adress char(30) not null , primary key(Id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 ;" ;
statement.executeUpdate( "drop table if exists Student ;" ) ;// 如果该表已经有了则删除
statement.executeUpdate( sql ) ;// 建立表
} /**
* @throws UnsupportedEncodingException
* @throws SQLException
* 插入值
*/
private static void insert() throws UnsupportedEncodingException ,
SQLException
{
// 声明常量
String[] ids = { "123" , "456" , "789" } ;
String[] names = { "张三" , "李四" , "王五" } ;
String[] sexs = { "女" , "男" , "男" } ;
String[] mails = { "123@qq.com" , "456@qq.com" , "789@qq.com" } ;
String[] addresses = { "北京" , "上海" , "深圳" } ; String id = null , name = null , sex = null , mail = null , address = null ;
String sql = "insert into Student( Id , Name , Sex , Mail , Adress ) values( ? , ? , ? , ? , ? ) ;" ;
PreparedStatement preparedStatement = connection.prepareStatement( sql ) ;
for( int i = 0 ; i < 3 ; ++ i )
{
id = ids[ i ] ;
name = new String( names[ i ].getBytes( "gbk" ) , "ISO-8859-1" ) ;// 因为中文会出现乱码,因此先转码
sex = new String( sexs[ i ].getBytes( "gbk" ) , "ISO-8859-1" ) ;
mail = mails[ i ] ;
address = new String( addresses[ i ].getBytes( "gbk" ) ,
"ISO-8859-1" ) ; preparedStatement.setString( 1 , id ) ;
preparedStatement.setString( 2 , name ) ;
preparedStatement.setString( 3 , sex ) ;
preparedStatement.setString( 4 , mail ) ;
preparedStatement.setString( 5 , address ) ;
preparedStatement.executeUpdate() ;// 执行
}
} /**
* @throws SQLException
* @throws UnsupportedEncodingException
* 查询
*/
private static void query() throws SQLException ,
UnsupportedEncodingException
{
String query = "select * from Student" ;
ResultSet resultset = null ; resultset = statement.executeQuery( query ) ;// 先将结果保存到resultset中 System.out.println( "Id/tName/tSex/tMail/t/tAddress" ) ;
System.out
.println( "---------------------------------------------------------------" ) ;
// 将结果读出来
while( resultset.next() )
{
String id = resultset.getString( "Id" ) ;
String name = new String( resultset.getString( "Name" ).getBytes(
"ISO-8859-1" ) , "gbk" ) ;// 将码再转回来,以防乱码
String sex = new String( resultset.getString( "Sex" ).getBytes(
"ISO-8859-1" ) , "gbk" ) ;
String mail = resultset.getString( "Mail" ) ;
String address = new String( resultset.getString( "Adress" )
.getBytes( "ISO-8859-1" ) , "gbk" ) ;
System.out.println( id + "/t" + name + "/t" + sex + "/t" + mail
+ "/t" + address ) ;
}
System.out
.println( "---------------------------------------------------------------" ) ;
} /**
* @throws SQLException
* 关闭连接
*/
private static void close() throws SQLException
{
statement.close() ;// 关闭statement
connection.close() ;// 关闭连接
} }

已验证上述程序正确

参考资料:

http://blog.csdn.net/shiyanhui66/article/details/6382483

《MySQL快速入门》 第18章 清华大学出版社

转载出处:https://www.cnblogs.com/zyumeng/archive/2012/10/09/2716370.html

Linux 下使用Java连接MySQL数据库,并且实现插入、删除、选择操作的更多相关文章

  1. Linux下的C#连接Mysql数据库

    今天在尝试在 Linux 系统下使用C#连接数据库,发现网上这方面的信息很少,所以就写一篇博客记录一下. Linux下这里使用的是mono. 首先是缺少Mysql.Data.dll这个库的,所以需要安 ...

  2. java连接mysql数据库 三 实现增删改查操作

    同以前一样,先写一个数据库打开和关闭操作类 public class DBConnection { String driver = "com.mysql.jdbc.Driver"; ...

  3. Java连接MySQL数据库及简单操作代码

    1.Java连接MySQL数据库 Java连接MySql需要下载JDBC驱动MySQL-connector-java-5.0.5.zip(举例,现有新版本).然后将其解压缩到任一目录.我是解压到D盘, ...

  4. 转载:Java连接MySQL 数据库的正确操作流程

    转载网址:http://www.bitscn.com/pdb/mysql/201005/186551.html       以下的文章主要介绍的是Java连接MySQL 数据库(以MySQL数据库为例 ...

  5. Java连接MySQL数据库增删改查通用方法

    版权声明:本文为博主原创文章,未经博主允许不得转载. Java连接MySQL数据库增删改查通用方法 运行环境:eclipse+MySQL 以前我们Java连接MySQL数据库都是一个数据库写一个类,类 ...

  6. Java 连接 MySQL 数据库

    最近想学习一下 Java 连接 MySQL 数据库,于是有了这样的一些问题&解决办法. 首先是解决 JDBC(Java Data Base Connectivity)驱动问题,因为默认安装的J ...

  7. 在linux下安装并配置mysql数据库

    在linux下安装并配置mysql数据库 工具/原料   MySql5.6 CentOS 方法/步骤   1 查找以前是否安装有mysql,使用下面命令: rpm -qa|grep -i mysql ...

  8. MySQL学习(一)——Java连接MySql数据库

    MySQL学习(一)——Java连接MySql数据库 API详解: 获得语句执行 String sql = "Insert into category(cid, cname) values( ...

  9. JDBC Java 连接 MySQL 数据库

    MySQL 版本:Server version: 5.7.17-log MySQL Community Server (GPL) 用于测试的 MySQL 数据库:game 查看数据库中的表 mysql ...

  10. java连接mysql数据库详细步骤解析

    java连接mysql数据库详细步骤解析      第一步:下载一个JDBC驱动包,例如我用的是:mysql-connector-java-5.1.17-bin.jar      第二步:导入下载的J ...

随机推荐

  1. 基于权电阻网络的VGA色条显示#DE10-lite#verilog#qp

  2. Multisim14.0安装步骤

    免责声明:以下图片资源来源于Internet,作搜集学习之用.   此处,若只用到multisim仿真,可以只选择multisim 14.0 下面的education edition.

  3. CRAPS赌博小游戏

    游戏规则 代码实现 首先把这个规则用代码写出来 再在它基础上进行简单的可视化(主要是利用Easygui的界面) 最后查缺补漏,看看有没有什么Bug 利用pyinstaller -F -w -i xx. ...

  4. C 语言编程 — 函数

    目录 文章目录 目录 前文列表 函数 函数的声明 函数的定义 函数的形参与实参 值传递 引用传递 可变长形参列表 函数的调用 函数的指针 回调函数 递归函数 数的阶乘 斐波那契数列 构造函数(Cons ...

  5. 【PB案例学习笔记】-01创建应用、窗口与控件

    写在前面 这是PB案例学习笔记系列文章的第一篇,也是最基础的一篇.后续文章中[创建程序基本框架]部分操作都跟这篇文章一样, 将不再重复.该系列文章是针对具有一定PB基础的读者,通过一个个由浅入深的编程 ...

  6. kubernets之init容器作用

    一  init容器的作用 1.1  init容器是在pod的生命周期,保证该pod运行的一些前置条件满足之后才开始运行这个pod,例如需要依赖一些其他的pod,服务等,可以去对这些服务的状态进行检测, ...

  7. springcloud整合geteway网关服务

    geteway网关 1. 什么是 API 网关(API Gateway)分布式服务架构.微服务架构与 API 网关在微服务架构里,服务的粒度被进一步细分,各个业务服务可以被独立的设计.开发.测试.部署 ...

  8. 二:nacos 的服务注册

    一:怎么引用依赖 dependencyManagement:spring cloud alibaba 的版本,由于spring cloud alibaba 还未纳入spring cloud 的主版本管 ...

  9. ChatGPT-4o模型功能介绍

    1.概述 OpenAI 持续突破人工智能的边界,推出了其最新模型 ChatGPT-4o,作为 ChatGPT-4 的继承者,该模型有望带来显著的提升和创新功能.本文将深入解析 ChatGPT-4 与 ...

  10. golang import 导入的四种方式

    1 标准导入: import "package_name" 2 导入别名: import ( alias "package_name" ) 3 匿名导入: _ ...