• java操作数据库


    /**
     * 
     */
    package com.xx.db;
    
    /**
     * @author 
    * 实现数据库连接 * 实现数据的查询和更新(增删改) * 只使用一个数据库写死在本文件中即可;若使用多个数据库,可使用配置文件 实现 */ import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.ArrayList; import java.util.List; //import org.apache.commons.lang.StringUtils; //import org.testng.annotations.Test; public class DBUtils { //驱动程序名 public String DBDriver = "com.mysql.jdbc.Driver"; //URL指向要访问的数据库名 public String url = "jdbc:mysql://192.168.xx.xx:3306/DataBase"; public String user = "username"; public String password = "password"; /* * MySQL配置时的用户名user * Java连接MySQL配置时的密码password */ public Connection connect(){ try { // 加载驱动程序 Class.forName(DBDriver); // 连接数据库 Connection conn = DriverManager.getConnection(url, user, password); // if(!conn.isClosed()){               //每次都打印,太烦了,所以注释掉了 // System.out.println("Succeeded connecting to the Database!"); // } return conn; }catch(ClassNotFoundException e) { System.err.println("Sorry,can't find the Driver!"); e.printStackTrace(); return null; } catch(SQLException e) { e.printStackTrace(); return null; } catch(Exception e) { e.printStackTrace(); return null; } } /* * 获取查询结果ResultSet */ public ResultSet selectResult(String sql) throws SQLException{ // statement用来执行SQL语句 Statement statement = connect().createStatement(); // 要执行的SQL语句 ResultSet rs = statement.executeQuery(sql); return rs; } /* * 按列获取查询结果 */ public List<String> getStringList(String sql, String key) throws SQLException{ List<String> value = new ArrayList<String>(); ResultSet rs = selectResult(sql); while(rs.next()) { //选择key这列数据 value.add(rs.getString(key)); } rs.close(); connect().close(); return value; }           //获取SQL执行结果的条数 public int getCount(String sql, String primaryKey) throws SQLException{ int count = 0; count = getStringList(sql,primaryKey).size(); return count; }           //更新数据库,适用于insert, update, delete public boolean updateResult(String sql) throws SQLException{ // statement用来执行SQL语句 Statement statement = connect().createStatement(); int rs = 0; // 要执行的SQL语句,为防止全表更新,要判断SQL语句中是否有WHERE子句,insert语句不必有WHERE子句 if(sql.contains("update ") || sql.contains("delete ") ){ if(sql.contains(" WHERE ") || sql.contains(" where ") ){ rs = statement.executeUpdate(sql); } }else if(sql.contains("insert into ")){ rs = statement.executeUpdate(sql); } statement.close(); connect().close(); if(rs==1){ return true; }else return false; } // @Test // public void test() throws SQLException{ // String sql = "SELECT * FROM tableName WHERE c_username='user'"; // List<String> value =getStringList(sql,"username"); // System.out.println(value.toString()); // System.out.println(getCount(sql,"c_uid")); // // String sql2 = "update shop_tableName set a='1101' WHERE username='user'"; // String sql3 = "insert into tableName (id,name) values (9999999,'11')"; // String sql4 = "delete from tableName WHERE name='11'"; // // System.out.println(updateResult(sql3)); // // System.out.println(sql4.contains(" WHERE ")); // } }

      欢迎光临娇娇家的美衣阁 http://shop105984718.taobao.com/

  • 相关阅读:
    120所国家重点建设大学(211工程和教育部直属)[国家一类本科大学]详细情况一览表
    VC画线几个常见方法
    中国地学35个国家重点实验室分布一览
    可执行文件加入Linux默认路径的办法
    SVN 常用命令 客户端
    ls(list) linux 功能说明
    Vim
    Linux添加FTP用户并设置权限
    tar [cxtzjvfpPN] 文件与目录
    linux etc/passwd 有关
  • 原文地址:https://www.cnblogs.com/joewu/p/3944368.html
Copyright © 2020-2023  润新知