精华内容
下载资源
问答
  • Java Mysql工具类封装

    千次阅读 2019-06-15 12:45:15
    最近突然想到在上家公司封装的Mysql工具类没有保存一份,感觉比较可惜,在网上找了一下,找到一个不错的Mysql工具类封装,在这里记录一下,便于日后查阅。 1、数据库连接层MYSQL /** * 数据库连接层MYSQL * @...

    原文地址:https://www.cnblogs.com/FCWORLD/p/3401622.html

    最近突然想到在上家公司封装的Mysql工具类没有保存一份,感觉比较可惜,在网上找了一下,找到一个不错的Mysql工具类封装,在这里记录一下,便于日后查阅。

    1、数据库连接层MYSQL

    /**
     * 数据库连接层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;
        }
        
    }

    2、数据层封装

    /**
     * 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<HashMap<String, String>>list = new ArrayList<HashMap<String, String>>();
            
            if(!setPstmtParam(coulmn, type, sql))
                return null;
            rs = pstmt.executeQuery();
            ResultSetMetaData rsmd = rs.getMetaData();//取数据库的列名 
            int numberOfColumns = rsmd.getColumnCount();
            while(rs.next())
            {
                HashMap<String, String> rsTree = new HashMap<String, String>(); 
                for(int r=1;r<numberOfColumns+1;r++)
                 {
                   rsTree.put(rsmd.getColumnName(r),rs.getObject(r).toString());
                 }
                list.add(rsTree);
            }
            closeDB();
            dt.setDataTable(list);
            return dt;
        }
        
        /**
         * 参数设置
         * @param coulmn
         * @param type
         * @throws SQLException 
         * @throws NumberFormatException 
         */
        private boolean setPstmtParam(String[] coulmn, int[] type, String sql) throws NumberFormatException, SQLException
        {
            if(sql== null) return false;
            pstmt = conn.prepareStatement(sql);
            if(coulmn != null && type != null && coulmn.length !=0 && type.length !=0   )
            {        
                for (int i = 0; i<type.length; i++) {
                    switch (type[i]) {
                    case Types.INTEGER:
                        pstmt.setInt(i+1, Integer.parseInt(coulmn[i]));
                        break;
                    case Types.BOOLEAN:
                        pstmt.setBoolean(i+1, Boolean.parseBoolean(coulmn[i]));
                        break;
                    case Types.CHAR:
                        pstmt.setString(i+1, coulmn[i]);
                        break;
                    case Types.DOUBLE:
                        pstmt.setDouble(i+1, Double.parseDouble(coulmn[i]));
                        break;
                    case Types.FLOAT:
                        pstmt.setFloat(i+1, Float.parseFloat(coulmn[i]));
                        break;
                    default:
                        break;
                    }
                }
            }
            return true;
        }
        
        /**
         * 关闭数据库
         * @throws SQLException
         */
        private void closeDB() throws SQLException
        {
            if(rs != null)
            {
                rs.close();
            }
            if(pstmt != null)
            {
                pstmt.close();
            }
            if(conn != null)
            {
                conn.close();
            }
            
        }
    }

    3、数据集封装

    /**
     * 数据集封装
     * @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<HashMap<String, String>> 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<Map.Entry<String, String>> set = list.get(i).entrySet();
                int j = 0;
                for (Iterator<Map.Entry<String, String>> it = set.iterator(); it
                        .hasNext();) {
                    Map.Entry<String, String> entry = (Map.Entry<String, String>) 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;
        }
    }

    4、测试Demo 

    /**
     * 测试Demo
     * @author Administrator
     */
    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<dt.getRowCount(); i++)
                    {
                        for(int j = 0; j<dt.getColCoun(); j++)
                        System.out.printf(dt.getRow()[i][j]+"\t");
                        System.out.println();
                    }
                }
                else
                    System.out.println("查询失败");
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }

    文章看着不错,总结比较全面,推荐给大家。

    展开全文
  • MySQL工具类 MySQL增删改查工具类

    千次阅读 多人点赞 2013-10-12 16:11:57
    以前开发项目没用框架,直接面向对象开发很实用的一个mysql工具类。
    以前开发项目没用框架,直接面向对象开发很实用的一个mysql工具类。
    
    <?php
    header("content-type:text/html;charset=utf-8");
    class DBUtils{
     
     
     /**
      *通用更新方法 insert update delete 操作
      *@param sql  
      *@return bool  true false
      */
      public function update($sql){
        $link = $this->getConn();
        mysql_query($sql);
        //如果出错显示
       if(DEBUG){
       echo mysql_error();
       }
        $rs = mysql_affected_rows($link);
        $rs = $rs > 0;
        mysql_close($link);
        return $rs;
      }
     
     /**
      *通用查询方法 select 操作
      *@param sql  
      *@return array
      */
      public function queryRows($sql){
       //创建连接,编码,数据库
       $link = $this->getConn();
       //发送sql
       $rs = mysql_query($sql);
       //如果出错显示
       if(DEBUG){
       echo mysql_error();
       }
       
       
       $rows = array();
       while($row = mysql_fetch_array($rs)){
        $rows[] = $row;//pdemo7.php
       }
       //
       mysql_free_result($rs);    
       mysql_close($link);
       return $rows;
      }
     
        
     /**
      *通用查询方法 select 操作  查询结果一行数据
      *@param sql  
      *@return array   如果失败返回 false;
      */
     public function queryRow($sql){
        $rs = $this->queryRows($sql);
        if(!empty($rs[0])){
         return $rs[0];
        }
        return false;
     }
     
     /**
      *通用查询方法 select 操作  查询结果一个数据
      *@param sql  
      *@return array   如果失败返回 false;
      * 例:  select count(*) from user;
      */
     public function queryObj($sql){
         $rs = $this->queryRows($sql);
        //var_dump($rs);
        if(!empty($rs[0][0])){
         return $rs[0][0];
        }
        return false;
     }
     
    
      private function getConn(){
       $link = mysql_connect('127.0.0.1','root','');
       mysql_query("set names utf8");
       mysql_select_db("news");
       return $link;
      }
     
    }
    
    
    
    
    


    展开全文
  • deepin linux mysql工具

    千次阅读 2017-01-14 18:29:38
    mysql工具, 选来选去,还是官网的 mysql workbench吧,除了简单的连接查看之外,还有其他一些辅助工具,比如migration。但是在安装utilities的时候,遇到了如下的问题,先记下。为啥不用navicat来? 在deepinlinux...

    mysql工具, 选来选去,还是官网的 mysql workbench吧,除了简单的连接查看之外,还有其他一些辅助工具,比如migration。

    但是在安装utilities的时候,遇到了如下的问题,先记下。

    这里写图片描述

    为啥不用navicat来?
    在deepinlinux下面显示有些乱码,查看可能是没有simsum.ttf这种字体,拷贝到相应的位置依然如此。肯呢个通过调整成英文可以解决吧,不过懒得弄了。

    这里写图片描述

    展开全文
  • 一、安装文件包下载 相关MySQL的...二、MySQL工具之SQLYog安装配置1、下载以上链接文件,找到SQLyog-11.3.3-0.x64包,进行解压,如下图所示:2、下载文件后,双击安装包,如下图所示:3、安装语言,选择简体中文,如下

    一、安装文件包下载

        相关MySQL的安装包和工具,可以免积分到CSDN下载栏目下载,地址为:http://download.csdn.net/detail/taomanman/9642852


    二、MySQL工具之SQLYog安装配置

    1、下载以上链接文件,找到SQLyog-11.3.3-0.x64包,进行解压,如下图所示:


    2、下载文件后,双击安装包,如下图所示:


    3、安装语言,选择简体中文,如下图所示:


    4、单击“下一步”,如下图所示:


    5、选择我接受许可证协议中的条款,单击下一步,如下图所示:


    6、单击“下一步”,如下图所示:


    7、选择安装位置,单击安装,如下图所示:


    8、安装过程如下图所示:


    9、单击下一步,如下图所示:


    10、直至安装完成,点击完成,如下图所示:


    11、选择UI用户界面语言简体中文,如下图所示:


    12、双击reg文件,添加到注册表,选择,如下图所示:


    13、成功添加到注册表,如下图所示:


    14、再次运行SQLyog,如下图所示:


    15、点击连接,如下图所示:


    16、输入连接名称,如下图所示:


    17、点击连接,如下图所示:

    18、打开表,如下图所示:



    展开全文
  • !...!...我在win7系统使用相同工具能正常连接,启动IDEA程序...苹果笔记本用Navicat for Mysql工具显示以上内容,(MAC 终端ping地址可以通)网上查了些资料更改端口3307、localhost改成127.0.0.1之类的 都没有用。求大神指点
  • 在学习完前面系列MySQL工具安装配置后,本篇博客将介绍利用MySQL工具之SQLYog进行SQL Server 2008 R2数据库数据导入到MySQL数据库表中。1、导入外部数据向导,如下图所示:2、开始新工作,点击“下一步”,如下图所...
  • 一:首先你得有Navicat for mysql工具 官方下载链接: https://www.navicat.com/en/products 进入Navicat for mysql ,连接你的数据库,开始了直接上图     结尾:好啦,整个自动备份就设置完了,是不是....
  • MySQL工具汇总 - cenalulu

    千次阅读 2014-06-18 11:34:38
    MySQL工具汇总 - cenalulu http://www.tuicool.com/articles/YFJZ7jF 本文汇总了和MySQL运维开发相关的所有工具,并会持续更新 1. 工具套件集 percona-toolkit: ...
  • SQL Server转换为MySQL工具mss2sql v5.3

    千次阅读 2019-06-27 09:41:59
    SQL Server转换为MySQL工具mss2sql v5.3 我在网上找到的一个绿色版本,拿来给大家分享(搬运)。 首先感谢原作者,接下去是使用教程: 一、打开压缩包 二、运行mss2sql 三、默认就是Move to MysQL server directly...
  • oracle 数据库转换成mysql工具
  • MYSQL工具mysqlhotcopy使用

    千次阅读 2018-04-23 17:44:53
    mysqlhotcopy使用lock tables、flush tables和cp或scp来快速备份数据库.它是备份数据库或单个表最快的途径,完全属于物理备份,但只能用于...使用mysqlhotcopy命令前需要要安装相应的软件依赖包看了文章想使用mysqlh...
  • 找了很久才找到,下面是工具,内附注册码,亲测可以使用,成功通过注册。 http://www.itmatu.com/tools/mysql-navicat-tool.html
  • mysql工具及驱动下载地址

    千次阅读 2018-04-17 15:21:20
    工具及开发包下载地址:1、mysqlhttps://dev.mysql.com/downloads/windows/installer/5.7.html2、XAMPPhttps://www.apachefriends.org/zh_cn/index.html3、MySQL Workbenchhttps://dev.mysql....
  • oracle数据转到mysql----OracleToMySQL 工具

    千次阅读 2018-05-17 18:40:22
    方式一: 使用工具DBMover 的OracleToMySQL 进行导入DBMover这个网站也提供了 Oracle 到 MySQL 迁移的工具。下载地址是:http://dbmover.com/download/oracletomysql_cn.zip这也是一个收费的软件, 试用版的限制是...
  • mysql5.1下载地址及mysql工具名称

    千次阅读 2011-07-22 10:45:29
    http://download.softagency.net/mysql/Downloads/MySQL-5.1/#mysql5.1版本下载地址#mysql常用工具名称MySQL GUI Tools一个可视化界面的MySQL数据库管理控制台,提供了四个非常好用的图形化应用程序,方
  • mysql工具类整理

    千次阅读 2012-11-17 01:49:49
    ① mysql扩展库 ② mysqli扩展库 ③ pdo  ☞ mysql扩展库和mysql数据库的区别 1.mysql数据库是用于存放数据. 2.mysql数据库的三层结构示意图: 3. mysql扩展库是一堆函数.是PHP设计者提供给程序员...
  • sqlYog-mysql工具下载安装

    千次阅读 2018-09-12 17:06:30
    推荐mysql可视化工具用SQLyog,一下链接,下载,安装,注册码都 https://blog.csdn.net/weixin_40328658/article/details/80791413 https://blog.csdn.net/lihua5419/article/details/73881837/...
  • 下载工具名称叫:dbForge Studio for MySQL 官网地址:https://www.devart.com/ 下载地址: https://www.devart.com/dbforge/mysql/studio/download.html网盘地址:http://pan.baidu.com/s/1pJnEjWn 使用先以...
  • Java连接MySQL工具

    千次阅读 2017-03-27 20:38:27
    //关于端口 用户名密码在mysql中测试后填写 public class GetConnection { private Connection connection =null; //连接emptyclassroom数据库 private String DatabaseName="emptyclassroom"; public static
  • 在Navicat for MySQL工具中大小写敏感的情况下表名称会出现变小
  • 在Java应用程序中使用MySql 工具使用Eclipse+Navicat+MySql

    万次阅读 多人点赞 2017-01-12 19:15:00
    一、从官网下载MySql和Navicat并安装 二、打开Navicat,并与MySql建立连接  点击连接,输入连接名和密码,点击连接测试会显示连接成功 连接成功   三、创建并打开数据库   四、新建表  输入 数据名、数据...
  • Mac上超级好用的Mysql工具

    千次阅读 2019-04-29 10:59:41
    https://blog.csdn.net/wangkaichenjuan/article/details/64906368 高质量技术免费分享 https://blog.csdn.net/everyonetimeismoney/article/details/94412711
  • mysql工具篇--Navicat使用详解

    千次阅读 2016-03-14 15:42:37
    感谢作者的无私分享。...Navicat for mysql 是个人使用了几款mysql客户端工具中不错的一款, 比较偏向轻量级. 之前使用的mysql adminstrator等工具都不怎理想, 操作不够人性化.  下面智容信息技术介绍一下这款工
  • 在近期开发中, 使用mybatis的时候发现了一个奇怪的现象, 前提是一个简单的条件, 让 表A.... 导致在mysql工具中 可以 bewteen字符串类型的数字,得出正确的结果 一样的bewteen 放到 mybatis中就 无法得出正确的结果
  • python封装mysql工具类(初步封装)

    千次阅读 2019-05-23 17:49:01
    1.在日常操作数据库中,如果不进行封装工具类操作一些场景时,会导致效率低下与思路不清晰,操作数据片段化与零散化。因此需要封装一些工具类辅佐我们进行编码。 2.在编写工具类时,要结合面向对象编程思想,使...
  • java实现连接mysql工具

    千次阅读 2017-01-11 16:22:27
    1、创建一个这样的工具类,可以做为dao层使用,用类名.方法名直接调用 2、加载配置文件时 ClassLoader.getResourceAsStream() 与 Class.getResourceAsStream()的区别 我的文件结构是:src--》包--》DBUTil工具...
  • mysql工具篇--Workbench的使用

    万次阅读 2016-03-14 15:48:12
    原文出处:http://blog.csdn.net/renhui999/article/details/8712786。... 感谢2位作者的无私分享。 1. MySQL Workbench MySQL Workbench 为数据库管理员、程序开发者和系统规划师提供
  • pt-variable-advisor-分析MySQL变量并且就可能问题提出建议。 概要 SYNOPSIS 使用Usage pt-variable-advisor [OPTIONS] [DSN] pt-variable-advisor分析MySQL变量并且就可能问题提出建议。 从本地获得...
  • 前两天将公司的 mysql5.6 升级到了 mysql8.0 ,今天想打开 dbForge Studio for MySQL 连接 mysql 8.0 数据,结果却报了“ This server version 8.0.11 is not currently ”的错误,如下:   习惯性的cv到百度...
  • https://www.cisco.com/c/zh_cn/support/docs/security/hostscan/117097-trouble-java7-00.html 处理 禁用ipv6,重连vpn

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 69,336
精华内容 27,734
关键字:

mysql工具

mysql 订阅