mysql 读取properties_JDBC中使用Properties读取配置文件有什么用

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

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

例如

driverClass=com.mysql.jdbc.Driver

url=jdbc:mysql://localhost:3306/mydatabase

username=root

password=7894561230

二、加载配置文件

public static void loadPro() throws Exception {

//从文件中读取输入流

FileInputStream fis = new FileInputStream("src/database.properties");

//创建Properties对象

Properties pro = new Properties();

//从流中加载数据

pro.load(fis);

//关闭流

fis.close();

//从Properties对象中根据键读取值

String driverClass = pro.getProperty("driverClass");

String url = pro.getProperty("url");

String username = pro.getProperty("username");

String password = pro.getProperty("password");

//打印值

System.out.println(driverClass);

System.out.println(url);

System.out.println(username);

System.out.println(password);

}

1.通过IO读取文件

2.创建Properties对象

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

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

三、用JDBC建立连接

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

/* 假设已经取得 driverClass,url, username, password 的值 */ // 注册驱动

Class.forName(driverClass);// 建立连接Connection con = DriverManager.getConnection(url,

username, password);// 获取SQL语句执行对象Statement stat = con.createStatement();// 调用

执行者对象方法,执行SQL语句获取结果集String sql = "SELECT * FROM sort";ResultSet rs =

stat.executeQuery(sql);// ResultSet接口方法 boolean next() 返回true,有结果集,返回false没有

结果集while(rs.next()){// 获取每列数据,使用是ResultSet接口的方法 getXX方法参数中,建议写

String列名System.out.println(rs.getInt("sid")+" "+rs.getString("sname")+"

"+rs.getDouble("sprice")+" "+rs.getString("sdesc"));}// 关闭对象,先开后闭

rs.close();stat.close();con.close();

四、Properties对象的常用方法

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

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

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

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

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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/558537.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java preferences设置_Java利用Preferences设置个人偏好

Preferences的中文意思即偏好或喜好的意思,也就是说同一个程序在每次运行完后,可以通过Preferences来记录用户的偏好,下次启动时,程序会利用这些信息来了解用户的喜好。而这些信息个人理解应该就是存储在系统的注册表中。下面我们…

java 移动页面中的图片上传_移动端上传图片(ajax跨域请求)

第一次写项目开发经验,望担待。除了前端以外的事就不叨叨了,下面开始弄干活(两个页面首页、列表页)。项目开发简述项目需求:上传图片并展示。项目地址:项目的链接地址开发工具:sublime后台:java开发语言&am…

java 空包_圆通快递接口,圆通快递礼品商城接口、圆通空包接口,圆通快递低价接口,礼品商城接口、一件代发接口...

更新仓库列表接口地址:http://xxxxxx.com/shop/updates/update-warehouse-list 违心:juzivtu接口介绍:更新发货仓库及发货快递信息请求方式:POST传参方式:JSON返回格式:JSON接口收费:开通一次,…

c和java内存泄漏区别_内存溢出和内存泄漏的区别(转)

1.1内存溢出:(Out Of Memory---OOM)系统已经不能再分配出你所需要的空间,比如你需要100M的空间,系统只剩90M了,这就叫内存溢出例子:一个盘子用尽各种方法只能装4个果子,你装了5个,结果掉倒地上不…

php正则表达式匹配逗号,数字和逗号PHP正则表达式只

我需要创建一个正则表达式验证逗号分隔的数值。数字和逗号PHP正则表达式只他们应该是这样的:1,2,3,4,5等....的值必须是一个数字,如:1点之前或之后没有空的空间,没有逗号之前或之后。或者......多个数值以逗号分隔。第一个和最后一…

java想要生成 字符串,如何在Java中“优雅地”生成String?

我想生成一个字符串,如sql命令:"INSERT INTO xxx VALUES(XXX, XXX, XXX)"目前我使用StringBuilder和一些String常量,如“INSERT INTO”来连接表名和插入值的输入String参数.但是,除了性能问题之外,这种简单的连接看起来并不优雅.有没有其他方法这样做&…

java语言中json转换,JSON字符串和JAVA语言对象的相互转换教程

本文主要向大家介绍了JSON字符串和JAVA语言对象的相互转换教程,通过具体的内容向大家展示,希望对大家学习JAVA语言有所帮助。一:字符串转换为对象:使用JSON.parse()方法var str { "name": "AndrewNeo", "sex"…

php中的数组用什么统计,php数组元素统计与值汇总

array_count_values()array_count_values() 函数用于统计数组中所有值出现的次数。本函数返回一个数组&#xff0c;其元素的键名是原数组的值&#xff0c;键值是该值在原数组中出现的次数。语法 : array_count_values(array)参数描述array必需。规定输入的数组。例子<?php …

10天时间做出php,php 最近10天的所有日期

背景&#xff1a;有时候&#xff0c;比如画曲线图&#xff0c;需要前一天起近10天的日期&#xff0c;你不能获取昨天的时间一天一天减&#xff0c;可别减出20140230&#xff0c;20140231&#xff0c;这就闹笑话了我用下面的笨方法。$date array();for($i10;$i>1;$i--){$dat…

php cgi漏洞,Nginx + PHP CGI的一个可能的安全漏洞

现在普遍的Nginx PHP cgi的做法是在配置文件中, 通过正则匹配Nginx(PHP/fastcgi的PATH_INFO问题,设置SCRIPT_FILENAME, 今天发现了一个这种方式的安全漏洞.为什么会这样呢?比如, 如下的nginx conf:location ~ .php($|/) {fastcgi_pass 127.0.0.1:9000;fastcgi_index index.p…

java开发怎么优化代码,代码优化,该如何处理

当前位置:我的异常网 Java Web开发 代码优化,该如何处理代码优化,该如何处理www.myexceptions.net 网友分享于&#xff1a;2014-08-19 浏览&#xff1a;0次代码优化public String Txt() throws ParseException {re (HttpServletRequest) ActionContext.getContext().get(S…

kali2.0安装mysql,Ubuntu/kali上安装MySQL,设置远程访问详细教程

搜索热词Ubuntu上安装MysqL非常简单只需要几条命令就可以完成。1. sudo apt-get install MysqL-server2. apt-get installMysqL-client (可选)3. sudo apt-get install libMysqLclient-dev(可选)安装过程中会提示设置密码什么的&#xff0c;注意设置了不要忘了&#xff0c;安装…

php数组在golang,go语言数据类型-数组(array)

数组是Go语言编程中最常用的数据结构之一。顾名思义&#xff0c;数组就是指一系列同一类型数据的集合。数组中包含的每个数据被称为数组元素(element)&#xff0c;一个数组包含的元素个数被称为数组的长度。在Go语言中数组是一个值类型(value type)。是真真实实的数组&#xff…

php session 反序列化,PHP SESSION反序列化本地样例分析

PHP SESSION反序列化本地样例分析0X00漏洞原因主要原因是&#xff1a; ini_set(‘session.serialize_handler’, ‘php_serialize’);ini_set(‘session.serialize_handler’, ‘php’);两者处理session的方式不同。0X01漏洞分析如果在PHP在反序列化存储的$_SESSION数据时使用的…

php 标题去重复思想,WordPress网站发布文章时如何防止发布重复标题的文章?

事实上&#xff0c;所有插件后端代码都等同于将代码片段添加到functions.php中&#xff0c;functions.php代码片段可以生成插件&#xff0c;然后插件可以自然地集成到functions.php中。插件主要易于管理&#xff0c;但也增加了静态资源请求的数量。如果您知道如何处理这些请求&…

php前端介绍,Web前端的开发前景介绍

“路漫漫其修远兮&#xff0c;吾将上下而求索”&#xff0c;这句出自《离骚》。虽然端午已过&#xff0c;但是还是不影响一个程序员想表(zhuang)达(boy)自己此刻心情的冲动。偶然路过同事旁边&#xff0c;不(tou)小(kan)心看到他加的一个群&#xff0c;在问&#xff0c;web前端…

hive mysql命令,Hive数据库常用命令

收藏一些Hive数据库常用命令&#xff0c;方便平时准备测试数据集。查看库、创建普通Hive表&#xff1a;show databases;user lch_databases;show tables;create table lch_user_table(int id,name varchar(8),birthday date,salary double(24.7),dd1 decimal(18,4));alert tabl…

判断星座PHP,php根据日期判断星座的函数分享_PHP教程

复制代码 代码如下:function yige_constellation($month, $day) {// 检查参数有效性if ($month < 1 || $month > 12 || $day < 1 || $day > 31) return false;// 星座名称以及开始日期$constellations array(array( "20" > "宝瓶座"),arra…

lumen php命令,php – 如何使用命令行手动运行laravel / lumen作业

跑php artisan make:command DispatchJob创建运行工作的特殊工匠命令.打开创建的DispatchJob.php文件并定义DispatchJob类,如下所示&#xff1a;class DispatchJob extends Command{/*** The name and signature of the console command.** var string*/protected $signature …

无法连接iphone软件更新服务器_苹果发布了iphone、ipad和mac的新软件更新

苹果已经发布了三种操作系统的软件更新&#xff1a;用于iphone和ipod的iOS、ipad的iPadOS和Macs的macOS。这些更新很小&#xff0c;主要集中在bug修复上&#xff0c;而不是添加新功能。这些更新标记为iOS 13.6.1、iPadOS 13.6.1和macOS 10.15.6补充更新。通常&#xff0c;iOS或…