mysql连接工具_连接MySQL常用工具

database.properties

如下:url中coursesystem为将要连接的数据库名;username为该数据库设置权限时的用户名;如果设置了密码,再添一项password=你的密码

driver=com.mysql.jdbc.Driver

url=jdbc:mysql://localhost:3306/coursesystem

username=root

工具util层,创建properties文件的解析工具ConfigerManager.java

package util;

import java.io.IOException;

import java.io.InputStream;

import java.util.Properties;

/*

* 解析配置文件,大前提是:

* 1、 你要有个配置文件

* 2、你要解析它的工具

* 过程:1.创建配置文件的输出流

* 2.用工具去解析配置文件输出流

* 3.创建利用key值获取value值的方法

*/

public class ConfigerManager {

// 创建配置文件解析工具

private static Properties param=new Properties();

static {

String configFile="database.properties";

InputStream is = ConfigerManager.class.getClassLoader().getResourceAsStream(configFile);

try {

param.load(is);

} catch (IOException e) {

e.printStackTrace();

}

}

public static String getValue(String key) {

return param.getProperty(key);

}

}

在dao层创建进行连接数据库以及其他基本操作的BaseDao.java

package dao;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;

import util.ConfigerManager;

/*

* 普适性的增删改操作,其他的增删改操作需要继承它

*/

public class BaseDao {

private static String driver=ConfigerManager.getValue("driver");

private String url=ConfigerManager.getValue("url");

private String username=ConfigerManager.getValue("username");

Connection conn = null;

PreparedStatement pds=null;

ResultSet rs=null;

int result=0;

static {

try {

Class.forName(driver);

} catch (ClassNotFoundException e) {

e.printStackTrace();

}

}

// 建立连接

public Connection getConnection() {

try {

conn=DriverManager.getConnection(url, username, null);

System.out.println("连接已建立!");

} catch (SQLException e) {

e.printStackTrace();

}

return conn;

}

// 断开连接

public void closeAll(ResultSet rs,PreparedStatement pds,Connection conn) {

if(rs!=null) {

try {

rs.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

if(pds!=null) {

try {

pds.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

if(conn!=null) {

try {

conn.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

}

// 增、删、改

public int updateData(String sql,Object[] params) {

conn = this.getConnection();

try {

pds=conn.prepareStatement(sql);

if(params!=null) {

for(int i=0;i

pds.setObject(i+1, params[i]); //MySQL语句中下标从1开始

}

}

result=pds.executeUpdate();

} catch (SQLException e) {

e.printStackTrace();

} finally {

this.closeAll(null, pds, conn);

}

return result;

}

// 查

public ResultSet queryData(String sql,Object[] params) {

conn=this.getConnection();

try {

pds=conn.prepareStatement(sql);

if(params!=null) {

for(int i=0;i

pds.setObject(i+1, params[i]); //MySQL语句中下标从1开始

}

}

rs=pds.executeQuery();

} catch (SQLException e) {

e.printStackTrace();

}

return rs;

}

}

简单的使用Junit对以上代码进行测试

package test;

import org.junit.Test;

import dao.BaseDao;

public class DatabaseTest {

@Test

public void linkDatabase() {

BaseDao dao=new BaseDao();

dao.getConnection();

}

}

MySQL常用工具、日志及读写分离

MySQL常用工具.日志及读写分离 1.MySQL中常用工具 1.1 mysql 1.1.1连接选项 1.1.2 执行选项 1.2 mysqladmin 1.3 mysqlbinlog 1.4 mys ...

Mysql 常用工具

mysqladmin:用于管理MySQL服务器的客户端 mysqladmin是一个执行管理操作的客户程序.可以用它来检查服务器的配置和当 前的状态,创建并删除数据库等等. 这样调用mysqladmin ...

MySQL 常用工具sysbench/fio/tpcc等测试

为什么要压力测试采购新设备,评估新设备性能开发新项目,评估数据库容量新系统上线前,预估/模拟数据库负载更换数据库版本,评估性能变化 关注指标  CPU %wait,%user,%sys 内存 只内存读 ...

【数据库开发】 C连接mysql——常用的函数

转载:http://blog.chinaunix.net/uid-26758020-id-3288633.html 1.MYSQL *mysql_init(MYSQL *mysql)    为mysq ...

设置更改root密码、连接mysql、mysql常用命令

6月19日任务 13.1 设置更改root密码13.2 连接mysql13.3 mysql常用命令 13.1 设置更改root密码 使用场景:例如长时间不用忘记了mysql的root密码,那么就需要去 ...

Python--day61 PyCharm连接MySQL工具的使用

第一步:连接mysql数据工具的位置 第二步:选定数据库 第三步:下载驱动 第四步:连接数据库配置 第五步:在pycharm中查看数据库中的表 第六步:添加数据 第七步:打开用sql语句操作数据库的界 ...

Python连接MySQL的准备工作

首先要安装MySQL,64位的win7可以安装64或者32位的MySQL版本,安装之后,python需要一个工具才能连接MySQL,这个工具叫MySQL-python,去这里或者这里下载1.2.3版本 ...

我的C语言连接Mysql之路

1.安装好mysql     2.要实现C连接数据库,需要安装数据库连接器(即MySQL Connector/C)    MySQL Connector/C是一个C语言的client库,这个库是为了实 ...

随机推荐

德国GFZ

关于GFZ的介绍,图片中有,这里不赘述. 在下面的图片中介绍的,除了能够提供免费的数据支持外,就属左边的应用框架. 1.目前开源框架里,空间数据库多是postgis,根据数据量和组织方式,可以选择mo ...

SPEL语言-Spring Expression Language

Spring表达式语言全称为"Spring Expression Language",缩写为"SpEL",类似于Struts 2x中使用的OGNL表达式语言,能 ...

程序员的家!我终于拥有自己的blog了!!!

经过多次提交诚恳的家园申请,终于得到了审核通过!今天就开始了我的.net成长之路!!!

UML_行为图

活动图是UML用于对系统的动态行为建模的另一种常用工具,它描述活动的顺序,展现从一个活动到另一个活动的控制流.活动图在本质上是一种流程图.活动图着重表现从一个活动到另一个活动的控制流,是内部处理驱动的 ...

Html的Table与Echart的饼图实现联动效果

功能描述: 单击Table中的某个单元格,Echart的饼图加载相关的数据,鼠标悬停在Echarts饼图中的某一块中,Table显示与Echarts饼图相关的数据. 例:楼宇经济概要显示每一个季度所有 ...

java 字符串替换函数replaceAll 一次同时替换多个字符串

public static void main(String[] args) throws Exception { String src = "南京市玄武区北京东路徐州市鼓楼区戏马台&quo ...

编译预处理命令define

#include 包含指令 将一个源文件嵌入到当前源文件中该点处. #include  按标准方式搜索,文件位于C++系统目录的include子目录下 #include&quot ...

javaScript事件机制深入学习(事件冒泡,事件捕获,事件绑定方式,移除事件方式,阻止浏览器默认行为,事件委托,模拟浏览器事件,自定义事件)

前言 JavaScript与HTML之间的交互是通过事件实现的.事件,就是文档或浏览器窗口中发生的一些特定的交互瞬间.可以使用侦听器(或处理程序)来预订事件,以便事件发生时执行相应的代码.这种在传统软 ...

FineUIMvc随笔(7)扩展通知对话框(显示多个不重叠)

声明:FineUIMvc(基础版)是免费软件,本系列文章适用于基础版. 这篇文章我们将改造 FineUIMvc 默认的通知对话框,使得同时显示多个也不会重叠.并提前出一个公共的JS文件,供大家使用. ...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值