做游戏客户端多一年多了,在大学学的java的SSH,基本上都忘完了,今天看了一下发现基本的连接数据库的都忘了。。。太可怕了这遗忘的速度。

所以写了个连接的例子吧。。安装好mysql数据库之后新建了两张表tx1,tx2。接下来连接数据库,往前面两张表里插入数据。

首先是公共连接类:

TestConnection.java

package cn.wan;

import java.sql.Connection;
import java.sql.*; public class TestConnection { private String driver;
private String url;
private String dbName;
private String password;
Connection conn;
Statement sta;
PreparedStatement prepare; public TestConnection()
{
this.driver = "com.mysql.jdbc.Driver";
this.url = "jdbc:mysql://localhost:3306/tx";
this.dbName = "root";
this.password = "126";
} public Connection getConnection()throws Exception
{
try {
Class.forName(driver);
conn = DriverManager.getConnection(url, dbName, password);
} catch (Exception e) {
e.printStackTrace();
}
return conn;
} public void closeConn()
{
try {
if(this.conn!=null)
{
this.conn.close();
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
}

使用Statement类向tx1中插入数据,值得注意的是tx1表的key是整型的,所以注意插入数据的写法。。

package cn.wan;

import java.sql.Connection;
import java.sql.Statement; public class TestStatement { // private static TestConnection connection; public static void main(String[] args)throws Exception
{
Connection conn;
Statement state = null;
Long start = System.currentTimeMillis();
TestConnection connection =new TestConnection();
try {
conn = connection.getConnection();
state = conn.createStatement();
// 需要使用100条sql语句来插入数据
for(int i= 0;i<100;i++)
{
int num= i;
String str2 = "name"+i;
state.executeUpdate("insert into tx1 values('"+num+"','str"+i+"')");
}
System.out.println("使用Statement费时:"+(System.currentTimeMillis()- start));
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}finally
{
connection.closeConn();
if(state !=null)
{
state.close();
}
} }
}

使用PreparedStatement类向tx2表中插入数据,也要注意他的语句的写法:

package cn.wan;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.Statement; public class TestPrepared { public static void main(String[] args)throws Exception
{
String sqlString = "insert into tx2 values(?,?)";
Connection conn= null;
PreparedStatement state = null;
Long startLong = System.currentTimeMillis();
TestConnection connection = new TestConnection();
try {
conn = connection.getConnection();
// 使用Connection来创建一个PreparedStatemet对象
state = conn.prepareStatement(sqlString);
// 100次为PreparedStatemet的参数赋值,就能插入100条记录
for(int i = 0;i<100;i++)
{
state.setInt(1, i);
state.setString(2, i+"");
state.executeUpdate();
}
System.out.println("使用PreparedStatemet耗时:"+(System.currentTimeMillis()-startLong));
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
finally
{
connection.closeConn();
if(state !=null)
{
state.close();
}
}
}
}

至此连接和两种不同的数据插入就已经完成了。。

java连接mysql数据库实例的更多相关文章

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

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

  2. Java进阶(二十五)Java连接mysql数据库(底层实现)

    Java进阶(二十五)Java连接mysql数据库(底层实现) 前言 很长时间没有系统的使用java做项目了.现在需要使用java完成一个实验,其中涉及到java连接数据库.让自己来写,记忆中已无从搜 ...

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

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

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

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

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

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

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

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

  7. Java 连接 MySQL 数据库

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

  8. java连接MySql数据库 zeroDateTimeBehavior

    JAVA连接MySQL数据库,在操作值为0的timestamp类型时不能正确的处理,而是默认抛出一个异常, 就是所见的:java.sql.SQLException: Cannot convert va ...

  9. JDBC Java 连接 MySQL 数据库

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

随机推荐

  1. MATLAB数据处理快速学习教程

    转自:http://blog.csdn.net/abcjennifer/article/details/7706581 本篇内容集合了MATLAB中的基本操作.数据存储与计算.数据的直线与曲线拟合与画 ...

  2. [Backbone] First Application!!!!

    Important things to remember: 1. Usually, we create Collection, CollectionViews, Model, View. Collec ...

  3. 2014年ENVI/IDL遥感应用与开发培训班-11月重庆站 開始报名了

    主办单位: 中国遥感应用协会 Esri中国信息技术有限公司 内容简单介绍: 依据中国遥感应用协会栾恩杰理事长推动国内遥感技术和应用的指示精神,2014年中国遥感应用协会组织培训交流部与Esri中国信息 ...

  4. 算法笔记_192:历届试题 买不到的数目(Java)

    目录 1 问题描述 2 解决方案   1 问题描述 问题描述 小明开了一家糖果店.他别出心裁:把水果糖包成4颗一包和7颗一包的两种.糖果不能拆包卖. 小朋友来买糖的时候,他就用这两种包装来组合.当然有 ...

  5. java 验证码生成

    import java.awt.Color; import java.awt.Font; import java.io.IOException; import java.io.OutputStream ...

  6. spring的applicationContext.xml中的DBCP配置如下:

    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy ...

  7. Java之异常机制(1) - 高效处理异常

    Java开发人员做出的有关架构的最重要的决定之一便是如何使用Java异常模型.Java异常处理成为社区中讨论最多的话题之一.一些人认为Java语 言中的已检查异常(Checked Exceptions ...

  8. jquery遍历集合&数组&标签

      jquery遍历集合&数组的两种方式 CreateTime--2017年4月24日08:31:49Author:Marydon 方法一: $(function(){ $("inp ...

  9. oracle 建表时显示ORA-00904无效的标识符

      oracle 建表时显示ORA-00904无效的标识符 CreationTime--2018年7月19日16点03分 Author:Marydon 1.情景展示 使用plsql建表时,报错 字段展 ...

  10. UsageGrideReport++

      迁移时间:2017年5月20日11:42:02CreateTime--2016年9月29日15:46:15Author:Marydon版本Gride Report++6.0使用说明:参考链接:ht ...