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 ...
随机推荐
- 一个含有Zeta函数的级数
\[\Large\sum_{k=1}^{\infty}\frac{(2^{2k-1}-2)(4^{2k+1}-3^{2k+1})}{144^k\,k\,(2k+1)}\zeta(2k)\] \(\La ...
- java 类型转换一些相关问题
猜测:第二句 第四句会出错 结果是第二句和第四句会出错.说明了父类可以向子类类型转换,而不同的子类直接不能类型转换.
- uniGUI之通过URL控制参数(25)
通过URL代入参数,在代码中读取,如: http://localhost:8077/?ServerPort=212&&ServerIP=192.168.31.12 procedure ...
- 为PHP开发搭建环境
为了能在自己的电脑上(mac OS系统)开始编写PHP代码并完成运行,需要有: 1.安装Web服务器 2.安装PHP 3.安装数据库,比如MySQL 4.一个PHP的IDE 为了上面所提到的1~3步的 ...
- tf.reduce_max 与 reduce 系列 API
reduce 可以理解为 python 里的 reduce 函数: tensorflow 中有很多 reduce_ API,其用法完全相同 tf.reduce_max 以这个为例进行说明 def re ...
- c++对象初始化(翁恺c++公开课[10])
c++对象初始化 就是去调用构造函数来完成初始化操作: 构造函数有无参数的构造函数.有参数构造函数.默认构造函数(编译器给我们实现的)...(拷贝构造函数之后说) 注意:默认构造函数只有在我们自己没有 ...
- 38 java 使用标签跳出多层嵌套循环
public class Interview { public static void main(String[] args) { //使用带标签的break跳出多层嵌套循环 Boolean flag ...
- 若块级元素被设置为 display: table-cell 便无法设置宽度
工作中,遇到表格的单元格中的 div 设置宽度无效,后来是发现 div 被设置为 display: table-cell ,后将其修改为 display: block 则设置的宽度生效.
- docsify简单教程
简介 一个神奇的文档网站生成器. 简单而轻便(〜18kB压缩) 没有静态构建的HTML文件 多个主题 快速开始 建议docsify-cli全局安装,这有助于本地初始化和预览网站. npm i docs ...
- JS回弹原理-高级
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...