• java mysql


    1.java操作mysql数据库,首先加入lib包,我本地使用的是mysql-connector-java-5.1.18-bin.jar

    以下java代码例子:

    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.ResultSetMetaData;
    import java.sql.SQLException;
    import java.sql.Statement;
    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;
    
    
    /*
     * mysql数据库操作
     * @@author
     * 创建时间:
     * 更新时间:
     * 
     */
    public class DBhandle {
        
        private static String driver = "com.mysql.jdbc.Driver";
        private static String url = "jdbc:mysql://192.168.6.71:3306/";
        private static String db = "test";
        private static String character = "?useUnicode=true&characterEncoding=gbk";
        private static String user = "linchaojiang";
        private static String pass = "qwsSedcRFV";
         
        static Connection conn = null;
        static Statement statement = null;
        static PreparedStatement ps = null;
        static ResultSet rs = null;
        List<Map> list = new ArrayList<Map>();//返回所有记录
        
        /*
         * 连接数据库
         */    
         public static void connDB() {
              try {
               Class.forName(driver).newInstance();
               conn = DriverManager.getConnection(url+db+character, user, pass);
               if (!conn.isClosed()) {
                System.out.println("Succeeded connecting to MySQL!");
               }
               
               statement = conn.createStatement();
              } catch (Exception e) {
               e.printStackTrace();
              }
             }
            
        /*
         * 关闭数据库
         */
         public static void closeDB() {         
              if(rs != null ){              
                  try {
                    rs.close();
                } catch (SQLException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }              
              }          
              if(statement != null){              
                  try {
                    statement.close();
                } catch (SQLException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
              }
              if(conn != null){
               try {
                conn.close();
                System.out.println("Database connection terminated!");
               } catch (SQLException e) {
                e.printStackTrace();
                   }
               }
             }             
         
         /*
          * 查询数据表
          */
         public List query(String sql){
            connDB();
            int count;
            try {
                rs = statement.executeQuery(sql);
                ResultSetMetaData rsmd;
                rsmd = rs.getMetaData();
                count = rsmd.getColumnCount();
                while(rs.next()){
                    Map  map = new HashMap();
                    for(int i=1;i<=count;i++){
                        //获取指定列的表目录名称
                        String label=rsmd.getColumnLabel(i);
                        //以 Java 编程语言中 Object 的形式获取此 ResultSet 对象的当前行中指定列的值
                        Object object= rs.getObject(i);
                        //把数据库中的字段名和值对应为一个map对象中的一个键值对
                        map.put(label.toLowerCase(), object);
                    }
                    list.add(map);                                         
                }            
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } finally {
                closeDB();
            }      
            return list;         
         }
         
         /*
          * 数据插入
          */
         public void insert(String sql){
                connDB(); 
                try {
                    statement.execute(sql);
                } catch (SQLException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }finally {
                    closeDB();
                }     
         }
         
         /*
          * 数据更新
          */
         public void update(String sql){         
             connDB();
             try {
                 statement.execute(sql);
             } catch (SQLException e) {
                 // TODO Auto-generated catch block
                 e.printStackTrace();
             }finally {
                 closeDB();
             }         
         } 
         
         /*
          * 数据删除
          */
         public void delete(String sql){
             connDB();
             try {
                 statement.execute(sql);
             } catch (SQLException e) {
                 // TODO Auto-generated catch block
                 e.printStackTrace();
             }finally {
                 closeDB();
             }     
         }
    }
  • 相关阅读:
    题目:有一对兔子,从出生第三个月起每个月都生一对兔子,小兔子长到第三个月后,每个月又生一对兔子,假如兔子都不死,问M个月时兔子的数量,M为键盘读入的正整数。(请用java语言作答)
    无聊游戏随笔--学院篇
    Java数组冒泡,选择,插入三种常用排序法及自带的快速排序法
    js写年月日三级下拉列表框
    查询避免Unknown column ‘xxx’ in ‘where clause’
    MyEclipse运行web程序报错,先检查这几点!
    Servlet开发之中线程安全问题
    取消Eclipse等号、分号、空格代码自动补全
    try/catch、finally语句的执行顺序测试
    02-MySQL双机热备的搭建
  • 原文地址:https://www.cnblogs.com/lincj/p/5805361.html
Copyright © 2020-2023  润新知