JDBC工具类。。。
package it.cast.jdbcutils; import java.io.InputStream; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.Properties; public class JdbcUtils { private static String JDriver=null; private static String connectDB=null; private static String username=null; private static String password=null; static { try { InputStream in =null; in= JdbcUtils.class.getClassLoader().getResourceAsStream("db.properties"); Properties prop=new Properties(); prop.load(in); JDriver=prop.getProperty("JDriver"); connectDB=prop.getProperty("connectDB"); username=prop.getProperty("username"); password=prop.getProperty("password"); Class.forName(JDriver); System.out.println("数据库连接成功"); } catch (Exception e) { throw new ExceptionInInitializerError("连接失败"); } } public static Connection getConnection() throws SQLException { return DriverManager.getConnection(connectDB,username,password); } public static void release (Connection conn,Statement st,ResultSet rs) { if(rs!=null) { try { rs.close(); } catch(Exception e) { e.printStackTrace(); } } if(st!=null) { try { st.close(); } catch(Exception e) { e.printStackTrace(); } } if(conn!=null) { try { conn.close(); } catch(Exception e) { e.printStackTrace(); } } System.out.println("数据库已经断开连接"); } //增删改方法。 public static void query(String sql,Object params []) throws SQLException { Connection conn =null; PreparedStatement st=null; ResultSet rs = null; conn = JdbcUtils.getConnection(); try { //获取数据连接 conn = JdbcUtils.getConnection(); //获取数据库对象并对SQL进行预编译 st =conn.prepareStatement(sql); //获取传进来的SQL,和传进来的参数。并进行赋值。 ;i<params.length;i++) { st.setObject(i+,params[i]); System.out.println(params[i]); } //执行 st.executeUpdate(); } finally { //释放 JdbcUtils.release(conn, st, rs); } } }
//实体类。
package in.cast.dao; public class data { private String date; private Integer num; public data (String date,Integer num) { this.date=date; this.num=num; } public String getDate() { return date; } public void setDate(String date) { this.date = date; } public int getNum() { return num; } public void setNum(Integer num) { this.num = num; } public String toString() { return date+" : "+num ; } }

  

测试:

package in.cast.dao;
import it.cast.jdbcutils.JdbcUtils;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
public class JDBC_TEST {
    public static void main (String [] args) throws Exception
    {

        JDBC_TEST T=new JDBC_TEST();

        HashMap<Integer,data> m=T.insert();

        DataSearch(m);

    }
    public static void DataSearch(HashMap<Integer, data> m) {
        Set<Map.Entry<Integer,data>> entryset=m.entrySet();

        Iterator <Map.Entry<Integer,data>>it=entryset.iterator();

        while(it.hasNext())
        {
            Map.Entry<Integer,data> mp=it.next();
            System.out.println(mp.getKey()+" : "+mp.getValue());

        }
    }
    public  HashMap<Integer,data> insert() throws Exception
    {
        HashMap<Integer,data> mp = new HashMap<Integer,data>();
        String s1;
        Integer s2;
        Connection conn=null;
        Statement st=null;
        ResultSet rs=null;
        Integer iCount=0;
        try
        {
            //获取数据库连接
            conn=JdbcUtils.getConnection();

            //返回一个statement,作用于发送SQL语句 。
            st = conn.createStatement();
            //SQL 语句
            String sql=" select * from tt ; " ;
            //返回一个数据集
            rs = st.executeQuery(sql) ;  //update
            //循环
            while(rs.next())
            {
                iCount++;
                s1=rs.getString("日期");//等同getObject(column_name)
                s2=Integer.parseInt(rs.getString("存入"));
                mp.put(iCount,new data(s1,s2));

            }
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }
        finally
        {
             JdbcUtils.release(conn,st, rs);
        }

        return mp;
    }
    

配置文件:

JDriver=com.microsoft.sqlserver.jdbc.SQLServerDriver
connectDB=jdbc:sqlserver://127.0.0.1:1433;DatabaseName=test
username=sa
password=123

JDBC。

package in.cast.dao;
import java.sql.*;
public class test1{
    public static void main(String[] args) {
        //com.microsoft.sqlserver.jdbc.SQLServerDriver 2008
     String JDriver="com.microsoft.sqlserver.jdbc"; 2005 String connectDB="jdbc:sqlserver://127.0.0.1:1433;DatabaseName=test"; try{ Class.forName(JDriver);//通过反射加载驱动。 }catch(ClassNotFoundException e) { System.out.println("数据库连接异常"); //这里可以抛出一个自定义异常 } System.out.println("锟斤拷菘锟斤拷锟缴癸拷"); try{ String user="sa"; String password="123"; Connection con=DriverManager.getConnection(connectDB,user,password); Statement stmt=con.createStatement(); //建表 String query="create table TABLE1(ID NCHAR(2),NAME NCHAR(10))"; //提交语句 stmt.executeUpdate(query); String a1="INSERT INTO TABLE1 VALUES('1','a')"; String a2="INSERT INTO TABLE1 VALUES('2','b')"; String a3="INSERT INTO TABLE1 VALUES('3','c')"; stmt.executeUpdate(a1); stmt.executeUpdate(a2); stmt.executeUpdate(a3); ResultSet rs=stmt.executeQuery("SELECT * FROM TABLE1"); while(rs.next()){ System.out.println(rs.getString("ID")+"\t"+rs.getString("NAME")); } //从建表到插入数据到查询 。仅为熟悉语句。 stmt.close(); con.close(); }catch(SQLException e){ e.printStackTrace(); System.exit(0); } } }

java jdbc 封装。。的更多相关文章

  1. Java JDBC封装模式

    模仿DBUtils里面的一些用法,下面是一些简单的实现数据集的操作的方法 下面使用到的两个bean.首先是userbean package bean; public class user { Stri ...

  2. Java面向对象㈠ -- 封装

    Java的面向对象有三大特征:封装.继承.多态.这里主要对封装进行讲解. 封装可以理解为隐藏一个类的成员变量和成员函数,只对外提供需要提供的成员函数. Java的封装主要通过访问权限控制符:priva ...

  3. java jdbc 连接mysql数据库 实现增删改查

    好久没有写博文了,写个简单的东西热热身,分享给大家. jdbc相信大家都不陌生,只要是个搞java的,最初接触j2ee的时候都是要学习这么个东西的,谁叫程序得和数据库打交道呢!而jdbc就是和数据库打 ...

  4. Java JDBC高级特性

    1.JDBC批处理 实际开发中需要向数据库发送多条SQL语句,这时,如果逐条执行SQL语句,效率会很低,因此可以使用JDBC提供的批处理机制.Statement和PreparedStatemen都实现 ...

  5. Java JDBC下执行SQL的不同方式、参数化预编译防御

    相关学习资料 http://zh.wikipedia.org/wiki/Java数据库连接 http://lavasoft.blog.51cto.com/62575/20588 http://blog ...

  6. Java JDBC批处理插入数据操作

    在此笔记里,我们将看到我们如何可以使用像Statement和PreparedStatement JDBC API来批量在任何数据库中插入数据.此外,我们将努力探索一些场景,如在内存不足时正常运行,以及 ...

  7. 体验Java的封装性

    package com.cnblogs.java; //体验Java的封装性 /* * 如下的人类年龄赋值-300岁,显然很不合理,这种直接对类的属性赋值,有时候虽然不合理但却会编译通过. * 所以我 ...

  8. JAVA中封装JSONUtils工具类及使用

    在JAVA中用json-lib-2.3-jdk15.jar包中提供了JSONObject和JSONArray基类,用于JSON的序列化和反序列化的操作.但是我们更习惯将其进一步封装,达到更好的重用. ...

  9. Java JDBC批处理插入数据操作(转)

    在此笔记里,我们将看到我们如何可以使用像Statement和PreparedStatement JDBC API来批量在任何数据库中插入数据.此外,我们将努力探索一些场景,如在内存不足时正常运行,以及 ...

随机推荐

  1. 聊聊Azure的安全性

    本来没打算写这篇博文,毕竟感觉太理论化,不像做技术的人应该写的东西,但是作为一名售前,发现很多不了解Azure的客户,上来的第一个问题竟然就是Azure如何保证客户数据的安全性,我清楚记得我第一次被问 ...

  2. WebApi身份认证解决方案:Basic基础认证

    前言:最近,讨论到数据库安全的问题,于是就引出了WebApi服务没有加任何验证的问题.也就是说,任何人只要知道了接口的url,都能够模拟http请求去访问我们的服务接口,从而去增删改查数据库,这后果想 ...

  3. HTML与CSS基础知识补遗(一)

    开始从零基础系统地学习前端知识了,虽说html和css多少了解一些,但是学着还是能发现很多新大陆.... 一. HTML中head标签 1. <meta>标签: meta标签里是一些基础的 ...

  4. 强联通 poj 2762

    t个样例    (注意清零) n个点m条边 有向; 任意2点是否能从a->b或者b->a; Yes  No #include<stdio.h> #include<algo ...

  5. Android&mdash;&mdash;组件简介

    开发android应用程序,需要理解View.Activity.Fragment.Intent .ContentProvider.Service.AndroidManifest.xml文件和AVD. ...

  6. Android 源码获取-----在Windows环境下通过Git得到Android源代码

    在学习Android的过程中,深入其源代码研究对我们来说是非常重要的,这里将介绍如何通过在Windows环境下使用Git来得到我们的Android源代码. 1.首先确保你电脑上安装了Git,这个通过  ...

  7. opencv载入,显示及保存图像

    1.声明一个表示图像的变量,在OpenCV2中,这个变量是cv::Mat类型,该类是用于保存图像以及其他矩阵数据的数据结构.默认情况下它们的尺寸为0. cv::Mat  image;       // ...

  8. python抓取性感尤物美女图

    由于是只用标准库,装了python3运行本代码就能下载到多多的美女图... 写出代码前面部分的时候,我意识到自己的函数设计错了,强忍继续把代码写完. 测试发现速度一般,200K左右的下载速度,也没有很 ...

  9. python常见错误总结

    TypeError: 'module' object is not callable 模块未正确导入,层级关系没找对 缩进错误. IndentationError: unindent does not ...

  10. c++函数重载---2

    原创博客:转载请标明出处:http://www.cnblogs.com/zxouxuewei/ 写在前面: 函数重载的重要性不言而明,但是你知道C++中函数重载是如何实现的呢(虽然本文谈的是C++中函 ...