千家信息网

java连接mysql底层封装的示例分析

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,小编给大家分享一下java连接mysql底层封装的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!连接数据库pack
千家信息网最后更新 2026年11月01日java连接mysql底层封装的示例分析

小编给大家分享一下java连接mysql底层封装的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

连接数据库

package com.dao.db;import java.sql.Connection;import java.sql.SQLException;/** * 数据库连接层MYSQL * @author Administrator * */public class DBConnection {   /**  * 连接数据库  * @return  */ public static Connection getDBConnection() {  // 1. 注册驱动  try {   Class.forName("com.mysql.jdbc.Driver");  } catch (ClassNotFoundException e) {   // TODO Auto-generated catch block   e.printStackTrace();  }  // 获取数据库的连接  try {   Connection conn = java.sql.DriverManager.getConnection("jdbc:mysql://localhost/mysql?useUnicode=true&characterEncoding=utf-8", "root", "root");   return conn;  } catch (SQLException e1) {   e1.printStackTrace();  }  return null; } }

数据层封装

package com.dao.db;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.ResultSetMetaData;import java.sql.SQLException;import java.sql.Types;import java.util.ArrayList;import java.util.HashMap;/** * MYSQL数据库底层封装 * @author Administrator * */public class DBManager {  private PreparedStatement pstmt; private Connection conn; private ResultSet rs;  /**  * 打开数据库  */ public DBManager() {  conn = DBConnection.getDBConnection(); }  /**  * 执行修改添加操作  * @param coulmn  * @param type  * @param sql  * @return  * @throws SQLException  */ public boolean updateOrAdd(String[] coulmn, int[] type, String sql) throws SQLException {  if(!setPstmtParam(coulmn, type, sql))   return false;  boolean flag = pstmt.executeUpdate()>0?true:false;  closeDB();  return flag; } /**  * 获取查询结果集  * @param coulmn  * @param type  * @param sql  * @throws SQLException  */ public DataTable getResultData(String[] coulmn, int[] type, String sql) throws SQLException {  DataTable dt = new DataTable();    ArrayList>list = new ArrayList>();    if(!setPstmtParam(coulmn, type, sql))   return null;  rs = pstmt.executeQuery();  ResultSetMetaData rsmd = rs.getMetaData();//取数据库的列名   int numberOfColumns = rsmd.getColumnCount();  while(rs.next())  {   HashMap rsTree = new HashMap();    for(int r=1;r

数据集封装

package com.dao.db;import java.util.ArrayList;import java.util.HashMap;import java.util.Iterator;import java.util.Map;import java.util.Set;/** * 数据集封装 * @author Administrator * */public class DataTable {  public String[] column;//列字段 public String[][] row; //行值 public int rowCount = 0;//行数 public int colCoun = 0;//列数   public DataTable() {  super(); }  public DataTable(String[] column, String[][] row, int rowCount, int colCoun) {  super();  this.column = column;  this.row = row;  this.rowCount = rowCount;  this.colCoun = colCoun; } public void setDataTable(ArrayList> list) {  rowCount = list.size();  colCoun = list.get(0).size();  column = new String[colCoun];  row = new String[rowCount][colCoun];  for (int i = 0; i < rowCount; i++) {   Set> set = list.get(i).entrySet();   int j = 0;   for (Iterator> it = set.iterator(); it     .hasNext();) {    Map.Entry entry = (Map.Entry) it      .next();    row[i][j] = entry.getValue();    if (i == rowCount - 1) {     column[j] = entry.getKey();    }    j++;   }  } } public String[] getColumn() {  return column; } public void setColumn(String[] column) {  this.column = column; } public String[][] getRow() {  return row; } public void setRow(String[][] row) {  this.row = row; } public int getRowCount() {  return rowCount; } public void setRowCount(int rowCount) {  this.rowCount = rowCount; } public int getColCoun() {  return colCoun; } public void setColCoun(int colCoun) {  this.colCoun = colCoun; }  }

测试Demo

package com.bussiness.test;import java.sql.SQLException;import java.sql.Types;import com.dao.db.DBManager;import com.dao.db.DataTable;public class TestBusIness{  static String searchSql = "select * from score"; static String insertSql = "insert into score(name, age, score)values(?,?,?)"; static String deleteSql = "delete from score where id = ?"; static String updateSql = "update score set name = ? where id = ?";  public static void main(String[] args) {  intsertData();  searchData(); }  private static void intsertData() {   DBManager dm = new DBManager();  String[] coulmn = new String[]{"wyf2", "23", "89.5"};  int[] type = new int[]{Types.CHAR, Types.INTEGER, Types.DOUBLE};    try {   boolean flag = dm.updateOrAdd(coulmn, type, insertSql);   if(flag)    System.out.println("插入成功");  } catch (SQLException e) {   e.printStackTrace();  } } private static void searchData() {   DBManager dm = new DBManager();  String[] coulmn = null;  int[] type = null;    try {   DataTable dt = dm.getResultData(coulmn, type, searchSql);   if(dt != null && dt.getRowCount()> 0){       for(int i = 0; i

以上是"java连接mysql底层封装的示例分析"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

数据 数据库 封装 底层 篇文章 示例 分析 内容 查询 成功 不怎么 参数 大部分 字段 更多 知识 结果 行业 资讯 资讯频道 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 瑰夏咖啡 互联网科技网 中国互联网科技工作委员会毛军 智能科技公司是互联网公司吗 没上市的科技互联网公司 互联网公司 科技公司 唐信互联网科技 大连 成都仁贤领冠互联网科技有限公司 苏州五指互联网络科技有限 苏州铭阳互联网科技有限公司 畅思互联网科技 浙南科技城互联网大厦建设工程 无锡工业互联网科技有限公司 互联网科技实习生岗位 富国互联网科技002692 上海互联网科技公司ppt 35岁以上互联网科技行业 唐山双旺合互联网科技产业园 北京瑞云互联网科技有限公司 恒生科技互联网指数十大成分股 互联网金融科技 伟宏互联网科技 疫情对互联网科技公司影响 互联网科技金融 汇久创客互联网科技 壕鑫互联网络科技 滨湖区互联网智能科技产品供应 中国互联网有什么科技含量 互联网科技与大数据专业 小牛互联网科技有限公司地址
0