链接数据库增删改通用
生活随笔
收集整理的這篇文章主要介紹了
链接数据库增删改通用
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
實現對SQLServer和MySql數據庫通用鏈接及數據的增刪改
我們經常需要和數據庫打交道,對數據庫數據進行增改刪查的操作,首先我們必須要先鏈接數據庫,然后對數據內容進行相關增刪改操作。
首先看一下目錄結構
程序解讀:一共有三個子包分別為model包test包和util包
@:model包是數據信息的類
@@:test包是對數據進行查詢獲取內容
@@@:util包里的DBUtil是對數據庫進行鏈接和增刪改操作的內容,info文件是數據庫的相關信息包括,url,name和pwd等
下面向大家展示代碼
util包的DBUtil.java
package com.util;import java.io.IOException; import java.sql.*; import java.util.ArrayList; import java.util.List; import java.util.Properties;/** 通用增刪改!!!!!!!!!!!!!!* 數據庫驅動* 張叔行*/ public class DBUtil {public DBUtil() {System.out.println("啟動jdbc");}/*** 定義變量*/private static String driver = null;//驅動private static String url = null;//mysql鏈接private static String name = null;//數據庫鏈接賬戶private static String pwd = null;//數據庫鏈接密碼/*** 定義靜態代碼塊*/static {Properties porperties = new Properties();//java 的配置文件try {porperties.load(DBUtil.class.getResourceAsStream("info.properties"));driver = porperties.getProperty("driver");url = porperties.getProperty("url");name = porperties.getProperty("name");pwd = porperties.getProperty("pwd");} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}/*** 鏈接數據庫*/public static Connection getConn() {Connection conn = null;try {Driver.class.forName(driver);conn = DriverManager.getConnection(url,name,pwd);} catch (ClassNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}System.out.println("數據庫鏈接成功");return conn;}/*** 關閉數據庫*/public static void setClose(Connection conn,PreparedStatement ps , ResultSet rs) {try {if(conn != null) {conn.close();}else if(ps != null) {ps.close();}else if(rs != null) {rs.close();}} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}}/*** 通用增刪改*/public static boolean executeUpdate(String sql , Object[] obj) {PreparedStatement ps = null;Connection conn = getConn();Boolean bool = false;int rsInt = 0;try {sql = "insert into user(u_id,u_name,u_sex,u_phone,u_money,u_map) values(?,?,?,?,?,?)";ps = conn.prepareStatement(sql);for(int i = 0;i<obj.length;i++) {ps.setObject(i+1, obj[i]);}rsInt = ps.executeUpdate();if(rsInt < 0) {System.out.println("添加失敗");bool = false;}else {System.out.println("添加成功");bool = true;}} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}return bool;}/*** 通用查通用查不能用list指定的返回類型要是通用的ResultSet來返回* 通用指的是任何查詢都能用*/public static ResultSet executeSelect(String sql , Object[] obj) {Connection conn = getConn();PreparedStatement ps = null;ResultSet rs = null;try {ps = conn.prepareStatement(sql);//如果object的值不等于空來執行這一句話if( obj != null) {for(int i = 0;i<obj.length;i++) {ps.setObject(i+1, obj[i]);}}rs = ps.executeQuery();} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}return rs;} }util包里的info文件:
特別注意:此處是實現對不同數據庫鏈接及增刪改操作的重要部分,***鏈接不同的數據庫要修改相對應的url,name和pwd***,修改了之后就可以實現對SQLServer或者MySql數據庫等的鏈接及增刪改操作了。
driver=com.mysql.jdbc.Driver url=jdbc:mysql://localhost:3306/log?useUnicode=true&characterEncoding=utf8 name=root pwd=roottest包里的test.java
package com.test;import com.util.DBUtil;import java.sql.ResultSet; import java.sql.SQLException;public class test {public static void main(String[] args) {// TODO Auto-generated method stub//通用的增刪改String sql = "select * from user where u_name = ?";Object obj[] = {"hwl"};ResultSet selectS = DBUtil.executeSelect(sql, obj);try {while(selectS.next()) {System.out.println(selectS.getString(1)+"\t"+selectS.getString(2)+"\t"+selectS.getString(3)+"\t"+selectS.getInt(4)+"\t"+selectS.getString(5)+"\t"+selectS.getString(6));}} catch (SQLException e) {e.printStackTrace();}}}model包里的user.java
package com.model;public class user {private static String UId;private static String UName;private static String USex;private static String UPhone;private static int UMoney;private static String UMap;public static String getUId() {return UId;}public static void setUId(String uId) {UId = uId;}public static String getUName() {return UName;}public static void setUName(String uName) {UName = uName;}public static String getUSex() {return USex;}public static void setUSex(String uSex) {USex = uSex;}public static String getUPhone() {return UPhone;}public static void setUPhone(String uPhone) {UPhone = uPhone;}public static int getUMoney() {return UMoney;}public static void setUMoney(int uMoney) {UMoney = uMoney;}public static String getUMap() {return UMap;}public static void setUMap(String uMap) {UMap = uMap;}}看到這里相信已經能夠解決你的困惑了,快去執行數據庫吧!!!
總結
以上是生活随笔為你收集整理的链接数据库增删改通用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 表格生成器
- 下一篇: 车仪表台上的装饰_一汽大众销量最差的车,