java连接数据库——纯java封装JDBC

news/2024/5/18 22:59:19 标签: 连接数据库, JDBC, 封装

第一步:

package com.qq.db;
import java.sql.*;
/*
 * 封装一个数据库的工具类
 * 通用的获取数据的方法
 * 提高代码的高重用性
 * */
public class DBunit {
	private static final String url = "jdbc:mysql://localhost:3306/qqdb";
	private static final String user = "root";
	private static final String password = "6612";
	//封装了一个公共的获取数据库的连接方法
	public static Connection getConnection() {
		Connection conn = null;
		try {
			//1.加载驱动类
			Class.forName("com.mysql.jdbc.Driver");
			//2.创建数据库的连接(提供url+用户名+密码),向java.sql.DriverManger请求并获取Connection对象
			conn = DriverManager.getConnection(url,user,password);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return conn;
	}
	//封装一个查询语句
	public static ResultSet getQueryResult(String sql) {
		ResultSet rs = null;
		try {
			Connection conn = DBunit.getConnection();
			Statement stat = conn.createStatement();
			rs = stat.executeQuery(sql);
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return rs;
	}

}

第二步:测试

package com.qq;
//封装完之后用类名连接方式连接数据库
import java.sql.*;
import java.sql.DriverManager;
import com.qq.db.DBunit;;

public class TestDBC {
	public static void main(String[] args) {
		try {
			Connection conn = DBunit.getConnection();
			String sql = "select * from t_user";
			ResultSet rs = DBunit.getQueryResult(sql);//3.2相当于游标
			while(rs.next()) {//判断是否有下一行
				System.out.println(rs.getInt("id")+"\t"+rs.getString("name"));//输出数据内容
			}
			rs.close();
			conn.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

}

 


http://www.niftyadmin.cn/n/1472552.html

相关文章

java连接数据库——JSP实现JDBC

前两个是java连接数据库的典型方式,虽然除了JDBC还有odbc的方式,但odbc的效率和跨平台都不理想,所以现在的趋势就是使用JDBC来连接需要的数据库(我以MySQL为例),这节将介绍JSP中如何实现连接数据库&#xf…

保证Service不被Kill的解决方案

1、Service设置成START_STICKY(onStartCommand方法中),kill 后会被重启(等待5秒左右),重传Intent,保持与重启前一样 2、通过 startForeground将进程设置为前台进程,做前台服务&#…

java连接数据库——javabean实例(jsp实现)

这节我在前面三节的基础上进行整合,将讲解一个实例——图书管理数据库操作 首先:来看看设计的流程—— 界面设计 注册登录界面处理界面(出错界面、欢迎界面、成功界面、跳转界面)MySQL数据库操作——建立数据库和数据表对接后台…

正则表达+验证 [记录]

时间 日期 日期时间//日期 2014-01-01var reg /^[1-9]\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])$/;//时间 12:00:00var reg /^(20|21|22|23|[0-1]\d):[0-5]\d:[0-5]\d$/;//日期时间 2014-01-01 12:00:00var reg /^[1-9]\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|…

前端框架jQ使用之入门知识

jQuery——前端框架(jquery.js、node.js、argus.js) 它是一个快速的js库,对js进行了封装,用来更方便的处理HTML、event、dom以及动画效果。 一、首先需要知道两个概念:jQ对象&DOM对象 第一个——jQ对象&#xf…

Java之优先队列

PriorityQueue属于Java Collections Framework。PriorityQueue基于优先级堆,它是Queue接口的实现。当我们需要一个Queue实现时,可以使用这种数据结构, 并且我们需要根据每个元素的优先级,以特定的排序顺序来维护该集合的元素。它在…

前端框架jQ使用之下拉框文本内容的转移

在掌握了jQ的基础知识之后,我们来看看jQ如何实现下拉框文本内容的转移? 其实,在之前,博主我也写过一篇使用js实现下拉框文本内容的转移的文章,需要比较强的逻辑,jQ就简化了代码书写,便于理解。…

Day21-自定义分页

一. 先简单来个示例 1.1 在urls.py中增加1条,user_list from django.conf.urls import url,include from django.contrib import admin from app01 import viewsurlpatterns [url(r^tpl_1/, views.tpl_1),url(r^tpl_2/, views.tpl_2),url(r^tpl_3/, views.tpl_3),u…