java与MySQL数据库的连接
1.数据库的安装和建立参见上一篇博客中的第1,2步骤。(http://blog.csdn.net/nuptboyzhb/article/details/8043091)
或使用SQL语句
- # ubuntu Linux
- sudo mysql -u root -p
- #Windows 7(mysql.exe)
- create database testdb;
- use testdb;
- CREATE TABLE `name_table` (
- `_id` int(11) NOT NULL,
- `name` varchar(32) CHARACTER SET utf8,
- `age` int(11) NOT NULL,
- `work` varchar(32) CHARACTER SET utf8,
- `others` varchar(512) CHARACTER SET utf8 DEFAULT NULL,
- PRIMARY KEY (`_id`)
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
2.Eclipse的配置。
导入包mysql-connector-java-5.0.5-bin.jar

3.java代码的编写
[java code]
- /*
- *@author: ZhengHaibo
- *web: blog.csdn.net/nuptboyzhb
- *mail: zhb931706659@126.com
- *2012-10-6 Nanjing njupt
- */
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.PreparedStatement;
- import java.sql.ResultSet;
- import java.sql.SQLException;
- public class helloworld {
- private Connection conn = null;
- PreparedStatement statement = null;
- // connect to MySQL
- void connSQL() {
- String urle = "jdbc:mysql://localhost:3306/testdb";//port:3306 database:testdb
- String username = "root";//user
- String password = "931706659";//password
- try {
- Class.forName("com.mysql.jdbc.Driver" );//加载驱动,连接数据库
- conn = DriverManager.getConnection(urle,username, password );
- }
- //捕获加载驱动程序异常
- catch ( ClassNotFoundException cnfex ) {
- System.err.println(
- "装载 JDBC/ODBC 驱动程序失败。" );
- cnfex.printStackTrace();
- }
- //捕获连接数据库异常
- catch ( SQLException sqlex ) {
- System.err.println( "无法连接数据库" );
- sqlex.printStackTrace();
- }
- }
- // disconnect to MySQL
- void deconnSQL() {
- try {
- if (conn != null)
- conn.close();
- } catch (Exception e) {
- System.out.println("关闭数据库问题 :");
- e.printStackTrace();
- }
- }
- // execute selection language
- ResultSet selectSQL(String sql) {
- ResultSet rs = null;
- try {
- statement = conn.prepareStatement(sql);
- rs = statement.executeQuery(sql);
- } catch (SQLException e) {
- e.printStackTrace();
- }
- return rs;
- }
- // execute insertion language
- boolean insertSQL(String sql) {
- try {
- statement = conn.prepareStatement(sql);
- statement.executeUpdate();
- return true;
- } catch (SQLException e) {
- System.out.println("插入数据库时出错:");
- e.printStackTrace();
- } catch (Exception e) {
- System.out.println("插入时出错:");
- e.printStackTrace();
- }
- return false;
- }
- //execute delete language
- boolean deleteSQL(String sql) {
- try {
- statement = conn.prepareStatement(sql);
- statement.executeUpdate();
- return true;
- } catch (SQLException e) {
- System.out.println("插入数据库时出错:");
- e.printStackTrace();
- } catch (Exception e) {
- System.out.println("插入时出错:");
- e.printStackTrace();
- }
- return false;
- }
- //execute update language
- boolean updateSQL(String sql) {
- try {
- statement = conn.prepareStatement(sql);
- statement.executeUpdate();
- return true;
- } catch (SQLException e) {
- System.out.println("插入数据库时出错:");
- e.printStackTrace();
- } catch (Exception e) {
- System.out.println("插入时出错:");
- e.printStackTrace();
- }
- return false;
- }
- // show data in ju_users
- void layoutStyle2(ResultSet rs) {
- System.out.println("-----------------");
- System.out.println("执行结果如下所示:");
- System.out.println("-----------------");
- System.out.println(" id" + "\t\t" + "name" +"\t\t" + "age" + "\t\t" +"work"+ "\t\t" + "others");
- System.out.println("-----------------");
- try {
- while (rs.next()) {
- System.out.println(rs.getInt("_id") + "\t\t"
- + rs.getString("name") + "\t\t"
- +rs.getInt("age") + "\t\t"
- + rs.getString("work")+ "\t\t"
- + rs.getString("others"));
- }
- } catch (SQLException e) {
- System.out.println("显示时数据库出错。");
- e.printStackTrace();
- } catch (Exception e) {
- System.out.println("显示出错。");
- e.printStackTrace();
- }
- }
- public static void main(String args[]) {
- helloworld h = new helloworld();
- h.connSQL();
- String s = "select * from name_table";
- String insert = "insert into name_table(_id,name,age,work,others) values("+15+",'csdn',"+24+",'M.S.','nupt')";
- String update = "update name_table set age =19 where name= 'zhb'";
- String delete = "delete from name_table where name= 'csdn'";
- if (h.insertSQL(insert) == true) {
- System.out.println("insert successfully");
- ResultSet resultSet = h.selectSQL(s);
- h.layoutStyle2(resultSet);
- }
- if (h.updateSQL(update) == true) {
- System.out.println("update successfully");
- ResultSet resultSet = h.selectSQL(s);
- h.layoutStyle2(resultSet);
- }
- if (h.insertSQL(delete) == true) {
- System.out.println("delete successfully");
- ResultSet resultSet = h.selectSQL(s);
- h.layoutStyle2(resultSet);
- }
- h.deconnSQL();
- }
- }
整个项目的源代码:http://download.csdn.net/detail/nuptboyzhb/4620059
4.实验结果
[image]

java与MySQL数据库的连接的更多相关文章
- Java对MySQL数据库进行连接、查询和修改(转)
Java对MySQL数据库进行连接.查询和修改 0. 一般过程: (1) 调用Class.forName()方法加载驱动程序. (2) 调用DriverManager对象的getConnection( ...
- Java对MySQL数据库进行连接、查询和修改【转载】
一般过程: (1) 调用Class.forName()方法加载驱动程序. (2) 调用DriverManager对象的getConnection()方法,获得一个Connection对象. (3) 创 ...
- java操作MySQL数据库(插入、删除、修改、查询、获取所有行数)
插播一段广告哈:我之前共享了两个自己写的小应用,见这篇博客百度地图开发的两个应用源码共享(Android版),没 想到有人找我来做毕设了,年前交付,时间不是很紧,大概了解了下就接下了,主要用到的就是和 ...
- 写给小白的JAVA链接MySQL数据库的步骤(JDBC):
作为复习总结的笔记,我罗列了几个jdbc步骤,后边举个简单的例子,其中的try块请读者自行处理. /* * 1.下载驱动包:com.mysql.jdbc.Driver;网上很多下载资源,自己找度娘,此 ...
- MySQL入门很简单: 15 java访问MySQL数据库
1. 连接数据库 1.1 下载安装驱动 java通过JDBC(Java Database Connectivity,Java数据库连接)来访问MySQL数据库.JDBC的编程接口提供的接口和类与MyS ...
- [JavaWeb基础] 003.JAVA访问Mysql数据库
上面两篇讲解了简单的JSP + Servlet的搭建和请求,那么后面我们肯定要用到数据交互,也就是操纵数据库的数据,包括对数字的增加,删除,修改,查询.我们就用简单的MySql来做例子 我们需要引入驱 ...
- Java实现MySQL数据库导入
距离上班还有一段时间.现在总结一下如何使用Java语言实现MySQL数据库导入: 首先新建名为test的数据库: 其次执行下面Java代码: import java.io.File; import j ...
- Java实现MySQL数据库备份(二)
权声明:本文为博主原创文章,未经博主允许不得转载. 博客<Java实现MySQL数据库备份(一)>使用I/O流的方式实现了MySQL数据库的备份,这种方法比较繁杂,下面介绍另一种备份MyS ...
- MySQL数据库远程连接
12.00 MySQL数据库远程连接 参考: http://www.jb51.net/article/24508.htm http://www.linuxdiyf.com/viewarticle.ph ...
随机推荐
- JQuery 移动端 上下 滑动 切换 插件 pageSlider
HTML <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta ...
- Linux vim中方向键变成字母的问题
使用Ubuntu Desktop 18.04 时 发现 vim 在编辑模式的时候,方向键变成了字母ABCD. 原因: Ubuntu预装的是vim tiny版本,安装vim full版本即可解决. 1. ...
- CSS - 背景半透明
就一句话 background: rgba(0, 0, 0, .2); body { background-color: pink; } div { width: 200px; height: 200 ...
- MySQL8.0 ROW_NUMBER、RANK、DENSE_RANK窗口函数 分组排序排名
MySQL8.0 (ROW_NUMBER)窗口函数 排名 暂时理解函数意义,后面再进行优化,如果有关变量排序,查看这个大哥的 mysql的分组排序和变量赋值顺序 先查看一个例子: # 按照每科课程分数 ...
- SVM总结(参考源码ml.hpp)
如何使用,请查阅我的另一篇博客——SVM的使用 1.setType() SVM的类型,默认SVM::C_SVC.具体有C_SVC=100,NU_SVC=101,ONE_CLASS=102,EPS_SV ...
- Mybatis的三种批量操作数据的方法
方法1: 使用for循环在java代码中insert (不推荐) 方法2: 使用 在Mapper.xml当中使用 foreach循环的方式进行insert PersonDao.java文件 publi ...
- 3 CSS 定位&浮动&水平对齐&组合选择符&伪类&伪元素
CSS Position(定位):元素的定位与文档流无关 static定位: HTML元素的默认值, 没有定位,元素出现在正常的流中 静态定位的元素不会受到top,bottom,left,right影 ...
- 常见Linux发行版有哪些?
Linux 发行版(英语:Linux distribution,也被叫做GNU/Linux 发行版),为一般用户预先集成好的Linux操作系统及各种应用软件.一般用户不需要重新编译,在直接安装之后,只 ...
- Django 学习 之ORM多表操作
一.创建模型 1.模型关系整理 创建一对一的关系:OneToOne("要绑定关系的表名") 创建一对多的关系:ForeignKey("要绑定关系的表名") 创建 ...
- 设计模式课程 设计模式精讲 12-2 适配器模式coding
1 重要 1.1 类适配器和对象适配器最大的区别 2 代码演练 2.1 代码演练1(类适配器模式) 2.2 代码演练2(对象适配模式) 2.3 代码演练3(具体应用场景) 1 重要 1.1 类适配器和 ...