同时发布于:https://blog.csdn.net/Activity_Time/article/details/81149710

一、properties配置文件

开发中获得连接的4个参数(驱动、URL、用户名、密码)通常都存在配置文件中,方便后期维护,程序如果需要更换数据库,只需要修改配置文件即可。

通常情况下,我们习惯使用properties文件,Java中有专门用来装载配置文件的类Properties(Java.util.Properties),配置文件用来保存一些在程序中可能修改的值,修改时只要修改配置文件即可,而不用修改程序本身。Java配置文件常为.properties文件,格式为文本文件,文件的内容的格式是“键=值”的格式。在properties的文件中,在行首加上 # 就是注释这行,或者是用 <!-- --> 包括这行也是注释。


  1. #例如
  2. driverClass=com.mysql.jdbc.Driver
  3. url=jdbc:mysql://localhost:3306/mydatabase
  4. username=root
  5. password=7894561230
  6. <!--注释-->

用MyEclipse打开是这个样子的,这里我保存在了src目录下,命名为database.properties

PS:一行一组数据,格式是“key=value”.

a) key命名自定义,如果是多个单词,习惯使用点分隔。例如:jdbc.driver

b) value值不支持中文,如果需要使用非英文字符,将进行unicode转换

二、加载配置文件


  1. public static void loadPro() throws Exception {
  2. //从文件中读取输入流
  3. FileInputStream fis = new FileInputStream("src/database.properties");
  4. //创建Properties对象
  5. Properties pro = new Properties();
  6. //从流中加载数据
  7. pro.load(fis);
  8. //关闭流
  9. fis.close();
  10. //从Properties对象中根据键读取值
  11. String driverClass = pro.getProperty("driverClass");
  12. String url = pro.getProperty("url");
  13. String username = pro.getProperty("username");
  14. String password = pro.getProperty("password");
  15. //打印值
  16. System.out.println(driverClass);
  17. System.out.println(url);
  18. System.out.println(username);
  19. System.out.println(password);
  20. }

1.通过IO读取文件

2.创建Properties对象

3.使用Properties对象的load(流)方法加载数据

4.使用Properties对象的getProperty(键)方法获取对应值

三、用JDBC建立连接

由于本文主要介绍.properties配置文件的使用,固此处不做赘述


  1. /* 假设已经取得 driverClass,url, username, password 的值 */
  2. // 注册驱动
  3. Class.forName(driverClass);
  4. // 建立连接
  5. Connection con = DriverManager.getConnection(url, username, password);
  6. // 获取SQL语句执行对象
  7. Statement stat = con.createStatement();
  8. // 调用执行者对象方法,执行SQL语句获取结果集
  9. String sql = "SELECT * FROM sort";
  10. ResultSet rs = stat.executeQuery(sql);
  11. // ResultSet接口方法 boolean next() 返回true,有结果集,返回false没有结果集
  12. while(rs.next()){
  13. // 获取每列数据,使用是ResultSet接口的方法 getXX方法参数中,建议写String列名
  14. System.out.println(rs.getInt("sid")+" "+rs.getString("sname")+
  15. " "+rs.getDouble("sprice")+" "+rs.getString("sdesc"));
  16. }
  17. // 关闭对象,先开后闭
  18. rs.close();
  19. stat.close();
  20. con.close();

四、Properties对象的常用方法

1. getProperty ( String key),用指定的键在此属性列表中搜索属性。也就是通过参数 key ,得到 key 所对应的 value。

2. load ( InputStream inStream),从输入流中读取属性列表(键和元素对)。通过对指定的文件(比如说上面的 test.properties 文件)进行装载来获取该文件中的所有键 - 值对。以供 getProperty ( String key) 来搜索。

3. setProperty ( String key, String value) ,调用 Hashtable 的方法 put 。他通过调用基类的put方法来设置 键 - 值对。

4. store ( OutputStream out, String comments),以适合使用 load 方法加载到 Properties 表中的格式,将此 Properties 表中的属性列表(键和元素对)写入输出流。与 load 方法相反,该方法将键 - 值对写入到指定的文件中去。

5. clear (),清除所有装载的 键 - 值对。该方法在基类中提供。

6.    keySet(),获取键集合(Properties继承Hashtable,内部通过Map实现)

本文链接:https://blog.csdn.net/Activity_Time/article/details/81149710

相关文章:https://blog.csdn.net/Activity_Time/article/details/81150644

参考文章:https://www.cnblogs.com/bakari/p/3562244.html

JDBC中使用Properties类及配置文件的操作的更多相关文章

  1. Java中的Properties类

    目录 Java中的Properties类 前言 主要方法 读取Properties文件 相关实例 Java中的Properties类 前言 Java中的Properties类属于配置文件,以键值对的方 ...

  2. Java 数据类型:集合接口Map:HashTable;HashMap;IdentityHashMap;LinkedHashMap;Properties类读取配置文件;SortedMap接口和TreeMap实现类:【线程安全的ConcurrentHashMap】

    Map集合java.util.Map Map用于保存具有映射关系的数据,因此Map集合里保存着两个值,一个是用于保存Map里的key,另外一组值用于保存Map里的value.key和value都可以是 ...

  3. JDBC中常用的类和接口

    <零基础学Java> JDBC中常用的类和接口 利用JDBC的这些类和接口可以更方便地访问并处理存储在数据库中的数据. DriverManager类 DriverManager类 是JDB ...

  4. java properties类读取配置文件

    1.JAVA Properties类,在java.util包里,具体类是java.util.properties.Properties类继承自Hashtable类并且实现了Map接口,也是使用一种键值 ...

  5. 使用java.util.Properties类读写配置文件

    J2SE 1.5 以前的版本要求直接使用 XML 解析器来装载配置文件并存储设置,虽说也并非难事,相比 java.util.Properties却要做额外的解析工作.而java.util.Proper ...

  6. Java Properties 类读配置文件保持顺序

    前几天,公司项目中有一个需求是读取配置文件的,而且最好能够保证加载到内存中的顺序能够和配置文件中的顺序一致,但是,如果使用 jdk 中提供的 Properties 类的话,读取配置文件后,加载到内存中 ...

  7. Properties类与配置文件

    //加载文件public static void testLoadProperties() throws Exception { Properties properties = new Propert ...

  8. day1 java基础回顾- Properties类与配置文件

    Properties配置文件说明 Properties类对应.properties文件.文件内容是键值对,键值对之间使用"="或空格隔开.开头是"#"的表示注释 ...

  9. JDBC实例--通过连接工具类DBUtil +配置文件来获取连接数据库,方便又快捷

    根据前面的连接方法,还有缺点就是,如果人家要换数据库,还得改动源代码,然后还要编译什么的.这样客户修改也不容易. 做法:我们写一个配置文件,把该数据写在配置文件上面,然后通过类来加载改文件,然后读取相 ...

随机推荐

  1. firefox下载文件弹出框之终极解决方案-vbs模拟键盘操作

    由于近期一直被firefox的保存文件弹出框困扰,摸索尝试过几种方法,已有的方法可以跑通但是对对效果不太满意,因此一直在寻找合适的解决办法. 最近发现了也可以通过VBS来处理弹出框,速度也不错,其原理 ...

  2. 金融新手投标模块布局小Demo

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. ASP.NET教程

    1.ASP.NET是一个使用Html Css JavaScript和服务器脚本创建网页和网站的开发框架 2.ASP.NET支持三种开发模式:WebPages(Web页面).MVC(Model View ...

  4. Python 多客户端

    服务端代码 #引入socketserver模块 import socketserver #定义处理类必须继承BaseRequestHandler类 class my_server(socketserv ...

  5. kali linux 安装 Mysql Can't read from messagefile 报错解决方案

    1.下载安装包 下载地点:https://dev.mysql.com/downloads/mysql/ 或者 wget http://dev.mysql.com/get/Downloads/MySQL ...

  6. IO流,字符流

    import java.io.FileReader; public class FileReaderDemo { public static void main(String[] args) thro ...

  7. day 13 内置函数

    内置函数思维导图:https://www.processon.com/view/link/5c13ad2de4b0ed122da75668 内置函数 作用域相关:   locals() 返回当前作用域 ...

  8. 关于org.apache.hadoop.io.nativeio.NativeIO$Windows.access0(Ljava/lang/String;I)Z报错

    之前一直出现这个错误,使用的开发工具是IDEA 我感觉似乎是hadoop与windows的操作系统不太适合 于是在project创建 org.apache.hadoop.io.nativeio包,将N ...

  9. 006---Linux用户、群组和权限

    用户.组.权限管理 用户管理 增 语法:useradd -c '添加用户1' user1 选项和参数: -c:用户的备注信息 -d:用户的家目录 -g:指定用户所属的用户组(gid) -s:指定用户登 ...

  10. vue中cssModules理解可以用于加密和避免重复使用

    cssModules可以用于加密和避免重复使用,也就是说可以在当前vue文件中写的样式会生成独一无二的名字,在其他vue文件中是无法调用的, 一.可以直接配cssModules 第一步,配置vue-l ...