在学了jdbc一段时间后感觉自己写一个简单的封装来试试,于是參考的一些资料就写了一下不是多好,毕竟刚学也不太久

首先写配置文件:直接在src下建立一个db.properties文件然后写上内容

<span style="font-size:18px;">MysqlDriver=com.mysql.jdbc.Driver
MysqlURL=jdbc\:mysql\://localhost\:3306/one
User=root
Pwd=123456
</span>

之后再写一个类代码例如以下

<span style="font-size:18px;">package cn.java.ad;

import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;
/**
* 本例是写了一个小的封装
* 对jdbc的封装练习
* @author hello
* @version jdk 1.8
*/
public class ReadMain {
static Properties pos=null;//设置静态的在载入类的时候仅仅须要一次
static{
pos=new Properties(); //建立Peoperties用来读取配置文件
try {//以下是用来读取配置文件的
pos.load(Thread.currentThread().getContextClassLoader().getResourceAsStream("db.properties"));
} catch (IOException e) {
e.printStackTrace();
}
}
public static Connection getcon(){//建立Connection连接
try {
Class.forName(pos.getProperty("MysqlDriver"));//载入com.mysql.jdbc.Driver
}catch (ClassNotFoundException e) {
e.printStackTrace();
}
try {//载入URL ,User,password
return DriverManager.getConnection(pos.getProperty("MysqlURL"),
pos.getProperty("User"),pos.getProperty("Pwd"));
} catch (SQLException e) { e.printStackTrace();
}
return null;
}
public static void Close(ResultSet rs,Statement st,Connection co){
try {//关闭数据库连接採用重载的方法便于封装
if(rs!=null)
rs.close();
if(st!=null)
st.close();
if(co!=null)
co.close();
} catch (Exception e) {
e.printStackTrace();
}
}
public static void Close(ResultSet rs,Connection co){
try {//关闭ResultSet Connection
if(rs!=null)
rs.close();
if(co!=null)
co.close();
} catch (Exception e) {
e.printStackTrace();
}
}
public static void Close(Connection co){
try { //关闭Connection
if(co!=null)
co.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
//程序结束</span>

之后写主类代码例如以下

<span style="font-size:18px;">package cn.java.ad;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
public class Main { public static void main(String[] args) {
Connection con=null;
ResultSet res=null;
Statement sta=null;
String sql=null;
String name="李雷";
String sex="男";
PreparedStatement ps=null;
try {
con=ReadMain.getcon();
sql="insert into student(id,name,sex,phone)VALUES(1235,? ,?,15896324131)";
ps=con.prepareStatement(sql);//获取sql语句
//在这里 the first parameter is 1, the second is 2, ...
//x the parameter value
//能够看出下标是从1開始的
ps.setString(1, name);
//将相应的name插入数据表中
ps.setString(2, sex);
//将相应的sex插入数据表中
ps.execute();
//运行sql语句而且没有返回值
System.out.println("插入成功");
} catch (Exception e) {
e.printStackTrace();
}
finally{
ReadMain.Close(res, sta, con);
//依次关闭连接
} } }
</span>

以下是两张图是建立db.properties的步骤

java的jdbc简单封装的更多相关文章

  1. 利用jdbc简单封装一个小框架(类似DBUtils)

    利用jdbc写的一个类似DBUtils的框架 package com.jdbc.orm.dbutils; import java.io.IOException; import java.io.Inpu ...

  2. java系列-JDBC的封装

    参考:http://blog.csdn.net/liuhenghui5201/article/details/16369773 一. 1.加载驱动-->>封装    --->> ...

  3. DBUtils开源JDBC类库,对JDBC简单封装(作用是:简化编码工作量,同时不会影响程序的性能)

    DBUtils:提高了程序的性能,编程更加简便 架包 mysql-connector-java-jar commons-dbcp-1.4jar commons-pool-1.5.5jar common ...

  4. DBUtils-对JDBC简单封装的开源工具类库

    DBUtils 是对JDBC简单封装的开源工具类 详细介绍地址:  https://baike.baidu.com/item/Dbutils/10655914?fr=aladdin 在使用DBUtil ...

  5. Spring jdbc 对象Mapper的简单封装

    一般查询实体的时候,都需要这么使用/**      * 根据id查询      *       * @return      */     public Emp queryEmpById(Intege ...

  6. Java通过JDBC进行简单的增删改查(以MySQL为例)

    Java通过JDBC进行简单的增删改查(以MySQL为例) 目录: 前言:什么是JDBC 一.准备工作(一):MySQL安装配置和基础学习 二.准备工作(二):下载数据库对应的jar包并导入 三.JD ...

  7. Java通过JDBC 进行Dao层的封装

    前言 前面有一章节,我专门讲解了Java通过JDBC 进行MySQL数据库操作,这主要讲解了MySQL数据库的连接和简单的操作,但是在真正的Java项目中,我们要不断的和数据库打交道,为了提高数据库操 ...

  8. JDBC【2】-- JDBC工作原理以及简单封装

    目录 1. 工作原理 1.1 加载驱动 1.1.1 类加载相关知识 1.1.2 为什么JDK 1.6之后不需要显示加载了? 1.2 驱动加载完成了,然后呢? 2. 简单封装 1. 工作原理 一般我们主 ...

  9. JAVA使用jdbc连接MYSQL简单示例

    以下展示的为JAVA使用jdbc连接MYSQL简单示例: import java.sql.DriverManager; import java.sql.ResultSet; import java.s ...

随机推荐

  1. 【手势识别】简介 GestureDetector ScaleGestureDetector

    2017-3-6 单点触摸手势识别器GestureDetector 当用户触摸屏幕的时候,会产生许多手势,例如down,up,scroll,filing等.一般情况下,我们可以通过View或Activ ...

  2. 页面的缓存设置与meta的作用详细解释

    网上转的,来自JSP的,但是原理大同小异哦,有时间 写个asp.net版的 HTML的HTTP协议头信息中控制着页面在几个地方的缓存信息,包括浏览器端,中间缓存服务器端(如:squid等),Web服务 ...

  3. MySQL bin-log与主从服务器

    试验环境                                                                                       Ubuntu    ...

  4. CentOS 7上安装WordPress详细步骤

    一.搭建Wordpress服务器环境需求: php 5.2.4 或者更高版本.MySQL 5.0 或者更高版本. 二.搭建Wordpress平台:以下以Wordpress3.92版本为例进行说明,如果 ...

  5. UITabBarController — 标签视图控制器

    UITabBarController - 标签视图控制器 UITabBarController 分为三层结构: (1).tab bar (2.)Custom Content (3.). Tab bar ...

  6. java list按照元素对象的指定多个字段属性进行排序

    ListUtils.java---功能类 package com.enable.common.utils; import java.lang.reflect.Field;import java.tex ...

  7. idea中dependencies中总是有红色波浪线(缺少dependency)的解决办法

    使用IDEA进行maven开发时,将新项目import进工作空间时,Maven Projects栏中的dependencies中总是有红色波浪线,如下图: 但是这些jar在我本地的maven仓库中实际 ...

  8. [Node.js]33. Level 7: Persisting Questions

    Let's go back to our live-moderation app and add some persistence, first to the questions people ask ...

  9. 设计好玩的3D文字效果

    ​在线演示 本地下载 好玩的3D文字效果,可以替换汉字.快来试试吧!

  10. IE下target获得焦点时存在虚线的问题

    IE下target获得焦点时存在虚线时,用IE的特定属性:hidefocus="true"即可解决!