时间:2021-07-01 10:21:17 帮助过:13人阅读
url=jdbc:oracle:thin:@127.0.0.1:1521:orcl driver=oracle.jdbc.driver.OracleDriver username=scott password=tiger
1 package com.oracle; 2 import java.io.FileNotFoundException; 3 import java.io.IOException; 4 import java.io.InputStream; 5 import java.sql.Connection; 6 import java.sql.DriverManager; 7 import java.sql.ResultSet; 8 import java.sql.SQLException; 9 import java.sql.Statement; 10 import java.util.Properties;引入的包和相关资源
1 /** 2 * 增删改查操作公共类(以oracle数据库为例) 3 * 2017-8-29 wuyafei 4 * 5 */ 6 public class CrudUtil { 7 /** 8 * 1.获取数据库连接 9 * 2.获取statement,加载sql语句 10 * 3.获取resultset 11 * 12 */ 13 public static Connection conn=null; 14 public static Statement sm=null; 15 public static ResultSet rs=null; 16 17 18 /** 19 * 查询操作 20 * @param sql 21 */ 22 private static void executeQuery(String sql) { 23 try { 24 rs=sm.executeQuery(sql); 25 while(rs.next()){ 26 Dept dept=new Dept(); 27 dept.setDeptno(rs.getInt("deptno")); 28 dept.setDname(rs.getString("dname")); 29 dept.setLoc(rs.getString("loc")); 30 System.out.println(dept); 31 } 32 } catch (SQLException e) { 33 // TODO Auto-generated catch block 34 e.printStackTrace(); 35 } 36 37 } 38 39 /** 40 * 更新操作(增删改) 41 * @param sql 42 */ 43 private static void executeUpdate(String sql) { 44 try { 45 int num=sm.executeUpdate(sql); 46 if(num>0){ 47 System.out.println("更新成功"); 48 }else{ 49 System.out.println("更新失败"); 50 } 51 } catch (SQLException e) { 52 // TODO Auto-generated catch block 53 e.printStackTrace(); 54 } 55 } 56 57 58 59 /** 60 * 关闭资源 61 * @param rs 62 * @param sm 63 * @param conn 64 */ 65 private static void closeResouce(ResultSet rs, Statement sm, 66 Connection conn) { 67 // TODO Auto-generated method stub 68 if(rs!=null){ 69 try { 70 rs.close(); 71 } catch (SQLException e) { 72 // TODO Auto-generated catch block 73 e.printStackTrace(); 74 } 75 } 76 if(sm!=null){ 77 try { 78 sm.close(); 79 } catch (SQLException e) { 80 // TODO Auto-generated catch block 81 e.printStackTrace(); 82 } 83 } 84 if(conn!=null){ 85 try { 86 conn.close(); 87 } catch (SQLException e) { 88 // TODO Auto-generated catch block 89 e.printStackTrace(); 90 } 91 } 92 } 93 94 95 96 /** 97 * 获取statement 98 */ 99 private static Statement createStatement() { 100 try { 101 sm=conn.createStatement(); 102 } catch (SQLException e) { 103 // TODO Auto-generated catch block 104 e.printStackTrace(); 105 } 106 return sm; 107 108 } 109 110 111 /** 112 * 获取Connection 113 */ 114 private static Connection getConnection() { 115 // TODO Auto-generated method stub 116 //Connection conn=null; 117 // String url="jdbc:oracle:thin:@localhost:1521:orcl"; 118 // String driver="oracle.jdbc.OracleDriver"; 119 // String username="scott"; 120 // String password="tiger"; 121 Properties pt=new Properties(); 122 InputStream is=null; 123 try { 124 //通过类加载器加载配置文件 125 is=CrudUtil.class.getClassLoader().getResourceAsStream("jdbc.properties"); 126 //通过类加载配置文件,文件名称需要加上"/" 127 //is = CrudUtil.class.getResourceAsStream("/jdbc.properties"); 128 pt.load(is); 129 //数据库驱动 130 String driver=pt.getProperty("driver"); 131 String url=pt.getProperty("url"); 132 String username=pt.getProperty("username"); 133 String password=pt.getProperty("password"); 134 try { 135 //注册加载驱动 136 Class.forName(driver); 137 conn=DriverManager.getConnection(url, username, password); 138 System.out.println("get connection success!~"+conn); 139 } catch (ClassNotFoundException e) { 140 // TODO Auto-generated catch block 141 e.printStackTrace(); 142 } catch (SQLException e) { 143 // TODO Auto-generated catch block 144 e.printStackTrace(); 145 } 146 } catch (FileNotFoundException e1) { 147 // TODO Auto-generated catch block 148 e1.printStackTrace(); 149 } catch (IOException e1) { 150 // TODO Auto-generated catch block 151 e1.printStackTrace(); 152 }finally{ 153 if(is!=null){ 154 try { 155 is.close(); 156 } catch (IOException e) { 157 // TODO Auto-generated catch block 158 e.printStackTrace(); 159 } 160 } 161 } 162 return conn; 163 164 165 } 166 167 public static void main(String[] args) { 168 //1.获取Connection 169 conn=getConnection(); 170 //2.获取Statement 171 sm=createStatement(); 172 //3.操作 173 174 /** 175 * 3.1.查询操作 176 */ 177 178 String sql="select * from dept"; 179 executeQuery(sql); 180 181 /** 182 * 3.2.添加操作 183 */ 184 185 // String sql="insert into dept values (50,‘招生部‘,‘8楼‘)"; 186 // executeUpdate(sql); 187 188 /** 189 * 3.3.修改操作 190 */ 191 192 // String sql="update dept set dname=‘就业部‘ where deptno=50"; 193 // executeUpdate(sql); 194 195 /** 196 * 3.4.删除操作 197 */ 198 199 // String sql="delete from dept where deptno=60"; 200 // executeUpdate(sql); 201 202 //4.关闭资源 203 closeResouce(rs,sm,conn); 204 205 } 206 207 }具体代码
注意:想要成功连接本地的数据库,需要同时开启数据库的监听和服务
jdbc操作数据库通用方法
标签:cut host ring manager class trace 注册 tac lap