当前位置:Gxlcms > 数据库问题 > jdbc工具类2..0

jdbc工具类2..0

时间:2021-07-01 10:21:17 帮助过:10人阅读

qy66 use=root password=root driver=com.mysql.jdbc.Driver

二、创建工具类

  1. <span style="color: #0000ff;">package</span><span style="color: #000000;"> cn.zhouzhou;
  2. </span><span style="color: #0000ff;">import</span><span style="color: #000000;"> java.io.FileNotFoundException;
  3. </span><span style="color: #0000ff;">import</span><span style="color: #000000;"> java.io.FileReader;
  4. </span><span style="color: #0000ff;">import</span><span style="color: #000000;"> java.io.IOException;
  5. </span><span style="color: #0000ff;">import</span><span style="color: #000000;"> java.net.URL;
  6. </span><span style="color: #0000ff;">import</span><span style="color: #000000;"> java.sql.Connection;
  7. </span><span style="color: #0000ff;">import</span><span style="color: #000000;"> java.sql.DriverManager;
  8. </span><span style="color: #0000ff;">import</span><span style="color: #000000;"> java.sql.ResultSet;
  9. </span><span style="color: #0000ff;">import</span><span style="color: #000000;"> java.sql.SQLException;
  10. </span><span style="color: #0000ff;">import</span><span style="color: #000000;"> java.sql.Statement;
  11. </span><span style="color: #0000ff;">import</span><span style="color: #000000;"> java.util.Properties;
  12. </span><span style="color: #008000;">/*</span><span style="color: #008000;">
  13. * jdbc2.0?
  14. *
  15. * 一、配置文件
  16. *
  17. 1.在SRC下创建文件 格式为properties jdbc.properties
  18. 2.写入
  19. url=jdbc:mysql:///qy66 注意【这里的qy66】 是自己的数据库中有的 库!
  20. use=root
  21. password=root
  22. driver=com.mysql.jdbc.Driver
  23. 3.好处?
  24. 这样写 可以直接在外部文件改变驱动、用户名、或是连接地址
  25. 二、获得路径的方式?
  26. 1.读取文件 Properties pro01=new Properties();
  27. 2.获取文件路径 ClassLoader class01=工具类存在硬编码问题.class.getClassLoader(); classloader()类加载器!
  28. 3.通过getPath(); 提供文件路径
  29. 4.load(Reader reader) 以简单的线性格式从输入字符流读取属性列表(关键字和元素对)
  30. 5.getProperty(String key) 使用此属性列表中指定的键搜索属性。
  31. 三、获取连接对象?
  32. 四、释放资源?
  33. </span><span style="color: #008000;">*/</span>
  34. <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span><span style="color: #000000;"> 工具类存在硬编码问题 {
  35. </span><span style="color: #0000ff;">private</span> <span style="color: #0000ff;">static</span><span style="color: #000000;"> String driver;
  36. </span><span style="color: #0000ff;">private</span> <span style="color: #0000ff;">static</span><span style="color: #000000;"> String url;
  37. </span><span style="color: #0000ff;">private</span> <span style="color: #0000ff;">static</span><span style="color: #000000;"> String use;
  38. </span><span style="color: #0000ff;">private</span> <span style="color: #0000ff;">static</span><span style="color: #000000;"> String password;
  39. </span><span style="color: #008000;">//</span><span style="color: #008000;">文件的读取?</span>
  40. <span style="color: #0000ff;">static</span><span style="color: #000000;">{
  41. </span><span style="color: #0000ff;">try</span><span style="color: #000000;"> {
  42. Properties pro01</span>=<span style="color: #0000ff;">new</span> Properties(); <span style="color: #008000;">//</span><span style="color: #008000;">读取文件?proerties</span>
  43. <span style="color: #000000;">
  44. ClassLoader class01</span>=工具类存在硬编码问题.<span style="color: #0000ff;">class</span>.getClassLoader();<span style="color: #008000;">//</span><span style="color: #008000;">获取SRC路径?classloader()类加载器! 作用 将class文件加载到jvm虚拟机中去,程序就可以正确运行了</span>
  45. <span style="color: #000000;">
  46. URL res</span>=class01.getResource("jdbc.properties"); <span style="color: #008000;">//</span><span style="color: #008000;">getResource? 获得SRC目录下的jdbc.properties文件</span>
  47. String path=res.getPath(); <span style="color: #008000;">//</span><span style="color: #008000;">getpath()? 提供文件路径</span>
  48. <span style="color: #000000;">
  49. pro01.load(</span><span style="color: #0000ff;">new</span><span style="color: #000000;"> FileReader(path));
  50. url</span>=pro01.getProperty("url"<span style="color: #000000;">);
  51. use</span>=pro01.getProperty("use"<span style="color: #000000;">);
  52. password</span>=pro01.getProperty("password"<span style="color: #000000;">);
  53. driver</span>=pro01.getProperty("driver"<span style="color: #000000;">);
  54. } </span><span style="color: #0000ff;">catch</span><span style="color: #000000;"> (Exception e) {
  55. e.printStackTrace();
  56. }
  57. }
  58. </span><span style="color: #008000;">//</span><span style="color: #008000;">获取连接对象?</span>
  59. <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">static</span> Connection getConnection() <span style="color: #0000ff;">throws</span><span style="color: #000000;"> SQLException{
  60. </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> DriverManager.getConnection(url, use, password);
  61. }
  62. </span><span style="color: #008000;">//</span><span style="color: #008000;">释放资源?</span>
  63. <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">static</span> <span style="color: #0000ff;">void</span><span style="color: #000000;"> close(Statement stmt,Connection conn){
  64. </span><span style="color: #0000ff;">if</span> (stmt!=<span style="color: #0000ff;">null</span><span style="color: #000000;">) {
  65. </span><span style="color: #0000ff;">try</span><span style="color: #000000;"> {
  66. stmt.close();
  67. } </span><span style="color: #0000ff;">catch</span><span style="color: #000000;"> (SQLException e) {
  68. e.printStackTrace();
  69. }
  70. }
  71. </span><span style="color: #0000ff;">if</span> (conn!=<span style="color: #0000ff;">null</span><span style="color: #000000;">) {
  72. </span><span style="color: #0000ff;">try</span><span style="color: #000000;"> {
  73. conn.close();
  74. } </span><span style="color: #0000ff;">catch</span><span style="color: #000000;"> (SQLException e) {
  75. e.printStackTrace();
  76. }
  77. }
  78. }
  79. </span><span style="color: #008000;">//</span><span style="color: #008000;">还要释放资源? 方法的重载。</span>
  80. <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">static</span> <span style="color: #0000ff;">void</span><span style="color: #000000;"> close(ResultSet rs,Statement stmt, Connection conn){
  81. </span><span style="color: #0000ff;">if</span> (rs!=<span style="color: #0000ff;">null</span><span style="color: #000000;">) {
  82. </span><span style="color: #0000ff;">try</span><span style="color: #000000;"> {
  83. rs.close();
  84. } </span><span style="color: #0000ff;">catch</span><span style="color: #000000;"> (SQLException e) {
  85. e.printStackTrace();
  86. }
  87. }
  88. </span><span style="color: #0000ff;">if</span> (stmt!=<span style="color: #0000ff;">null</span><span style="color: #000000;">) {
  89. </span><span style="color: #0000ff;">try</span><span style="color: #000000;"> {
  90. stmt.close();
  91. } </span><span style="color: #0000ff;">catch</span><span style="color: #000000;"> (SQLException e) {
  92. e.printStackTrace();
  93. }
  94. }
  95. </span><span style="color: #0000ff;">if</span> (conn!=<span style="color: #0000ff;">null</span><span style="color: #000000;">) {
  96. </span><span style="color: #0000ff;">try</span><span style="color: #000000;"> {
  97. conn.close();
  98. } </span><span style="color: #0000ff;">catch</span><span style="color: #000000;"> (SQLException e) {
  99. e.printStackTrace();
  100. }
  101. }
  102. }
  103. }</span>

三、测试类

  1. <span style="color: #0000ff;">package</span><span style="color: #000000;"> cn.zhouzhou;
  2. </span><span style="color: #0000ff;">import</span><span style="color: #000000;"> java.sql.Connection;
  3. </span><span style="color: #0000ff;">import</span><span style="color: #000000;"> java.sql.PreparedStatement;
  4. </span><span style="color: #0000ff;">import</span><span style="color: #000000;"> java.sql.ResultSet;
  5. </span><span style="color: #0000ff;">import</span><span style="color: #000000;"> java.sql.SQLException;
  6. </span><span style="color: #0000ff;">import</span><span style="color: #000000;"> java.sql.Statement;
  7. </span><span style="color: #008000;">/*</span><span style="color: #008000;">
  8. * 测试?执行写的工具类?
  9. *
  10. </span><span style="color: #008000;">*/</span>
  11. <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span><span style="color: #000000;"> Text01 {
  12. </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">static</span> <span style="color: #0000ff;">void</span> main(String[] args) <span style="color: #0000ff;">throws</span><span style="color: #000000;"> SQLException {
  13. Connection con</span>=工具类存在硬编码问题.getConnection(); <span style="color: #008000;">//</span><span style="color: #008000;">1.注册</span>
  14. <span style="color: #000000;">
  15. String string</span>="select * from shop"; <span style="color: #008000;">//</span><span style="color: #008000;">2.查询</span>
  16. <span style="color: #000000;">
  17. PreparedStatement start</span>=con.prepareStatement(string); <span style="color: #008000;">//</span><span style="color: #008000;">3.设置 执行语句</span>
  18. <span style="color: #000000;">
  19. ResultSet rs</span>=<span style="color: #000000;">con.prepareStatement(string).executeQuery();
  20. </span><span style="color: #0000ff;">while</span><span style="color: #000000;"> (rs.next()) {
  21. System.out.println(rs.getInt(</span>1)+" "+rs.getString(2)+" "+rs.getDouble(3<span style="color: #000000;">));
  22. }
  23. Jdbc工具类.close(con, start, rs); </span><span style="color: #008000;">//</span><span style="color: #008000;">4.关闭资源</span>
  24. <span style="color: #000000;"> }
  25. </span><span style="color: #008000;">/*</span><span style="color: #008000;">
  26. * 输出结果!
  27. 2 打牌支出 200.0
  28. 3 衣服支出 100.0
  29. 4 工资收入 200100.0
  30. 5 商品收入 2000.0
  31. 6 张三 2000.0
  32. 7 工资收入 0.0
  33. 12 003 5000.0
  34. * </span><span style="color: #008000;">*/</span><span style="color: #000000;">
  35. }</span>

 

jdbc工具类2..0

标签:工具   query   商品   直接   out   对象   package   sys   stat   

人气教程排行