properties文件作用以及在哪些地方用
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ResourceBundle; //连接数据库
public class JDBCUtils { public static Connection conn ;
public static PreparedStatement pstmt ;
public static ResultSet rs ; private static String driverClass ;
private static String url ;
private static String username ;
private static String password ; static {
ResourceBundle rd = ResourceBundle.getBundle("dbconfig") ;
driverClass = rd.getString("driverclass") ;
url = rd.getString("url") ;
username = rd.getString("username") ;
password = rd.getString("password") ;
} public static Connection getConn(){
try {
Class.forName(driverClass) ;
conn = DriverManager.getConnection(url, username, password) ;
return conn ;
} catch (Exception e) {
e.printStackTrace();
}
return null ;
} //增删改
public static boolean updateSQL(String sql,Object...objs){
getConn() ;
int n = 0 ;
try {
pstmt = conn.prepareStatement(sql) ;
//指定参数的值
for (int i = 0; i < objs.length; i++) {
pstmt.setObject(i+1, objs[i]) ;
} //执行sql语句
n = pstmt.executeUpdate() ;
} catch (SQLException e) {
e.printStackTrace();
}finally{
close(conn,pstmt,rs) ;
}
return n > 0 ? true :false ;
} //查询
public static ResultSet getResultSet(String sql,Object ...objs){
getConn() ;
int n = 0 ;
try {
pstmt = conn.prepareStatement(sql) ;
//指定参数的值
for (int i = 0; i < objs.length; i++) {
pstmt.setObject(i+1, objs[i]) ;
} //执行sql语句
rs = pstmt.executeQuery() ;
} catch (SQLException e) {
e.printStackTrace();
}
return rs ;
} //关闭连接的方法
public static void close(Connection conn ,Statement pstmt, ResultSet rs){
if(rs != null){
try {
rs.close() ;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(pstmt != null){
try {
pstmt.close() ;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} } if(conn != null){
try {
conn.close() ;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
这段代码是链接数据库,其中第23行是读取properties配置文件的,当初有点看不懂,那properties文件的作用是什么?properties文件是一种配置文件,主要用于表达配置信息,文件类型为*.properties,格式为文本文件,文件的内容是格式是"键=值"的格式,在properties文件中,可以用"#"来作注释。具体一点的话,如下解释:
配置信息用的。加上你写一个方法来获取配置信息的内容,也就是读取.properties文件。方法设置返回值,可以用来返回等号后面的信息,比如你想获取8888的话,只需要给写的方法传一个参数PORT,就能返回8888。工程里很多地方都会用到配置信息里的东西,如果没有配置文件,将来要修改端口号或者HOST的时候就比较麻烦,需要改代码。有配置文件就不一样了,只修改配置文件里等号后面的数据就可以了。工程里其他地方用HOST和PORT都是用给读取配置文件的方法传参数的形式调用数据的,所以只修改配置文件的内容就能全部修改为想要的数据。最主要的是不用修改代码,这点很重要,所以工作中配置文件往往比java代码还要多。,当然不止是.properties类型的,更多的是.xml类型
properties文件作用以及在哪些地方用的更多相关文章
- java读取properties文件时候要注意的地方
java读取properties文件时,一定要注意properties里面后面出现的空格! 比如:filepath = /home/cps/ 我找了半天,系统一直提示,没有这个路径,可是确实是存在的, ...
- java分享第十六天( java读取properties文件的几种方法&java配置文件持久化:static块的作用)
java读取properties文件的几种方法一.项目中经常会需要读取配置文件(properties文件),因此读取方法总结如下: 1.通过java.util.Properties读取Propert ...
- properties文件 , properties类, 的作用
"properties文件",是java所支持的配置文件类型.java中的properties文件是一种配置文件,主要用于表达配置信息,文件类型为*.properties,格式为文 ...
- c#中bin,obj,properties文件夹的作用
Bin 目录用来存放编译的结果,bin是二进制binrary的英文缩写,因为最初C编译的程序文件都是二进制文件,它有Debug和Release两个版本,分别对应的文件夹为bin/Debug和bin/R ...
- 五种方式让你在java中读取properties文件内容不再是难题
一.背景 最近,在项目开发的过程中,遇到需要在properties文件中定义一些自定义的变量,以供java程序动态的读取,修改变量,不再需要修改代码的问题.就借此机会把Spring+SpringMVC ...
- Spring中配置和读取多个Properties文件--转
public class PropertiesFactoryBeanextends PropertiesLoaderSupportimplements FactoryBean, Initializin ...
- spring入门(二)【加载properties文件】
在开发过程当中需要用到配置信息,这些信息不能进行硬编码,这时配置文件是一个比较好的方式,java提供了properties格式的文件,以键值对的方式保存信息,在读取的时候通过键获得键对应的值,spri ...
- Spring中配置和读取多个Properties文件
一个系统中通常会存在如下一些以Properties形式存在的配置文件 1.数据库配置文件demo-db.properties: database.url=jdbc:mysql://localhost/ ...
- properties文件简介及其常用Java操作
一.properties文件简介 java中的properties文件是一种配置文件,主要用于表达配置信息,文件类型为*.properties,格式为文本文件,文件的内容是格式是"键=值&q ...
随机推荐
- Kafka 源代码分析之LogManager
这里分析kafka 0.8.2的LogManager logmanager是kafka用来管理log文件的子系统.源代码文件在log目录下. 这里会逐步分析logmanager的源代码.首先看clas ...
- 真机调试方法- IOS/Android移动设备
真机调试 调试安卓 方法一 开启手机的USB调试 安装运行项目 使用chrome步骤如下图 打开开发者工具 打开设备管理 选择设备进行debug 方法二: 直接在地址栏输入chrome://inspe ...
- 简单粗暴的在vmware虚拟机中固定ip
虚拟机对于很多做测试的或者在学习测试中的人来说是位常客,经常会用到,但是虚拟机重启之后,很多人遇到虚拟机ip变化,很是头痛,我在学习过程中也遇到了这个问题,百度了很多办法,有些办法对于网络知识小白来说 ...
- spring +springmvc+mybatis组合web.xml文件配置
<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://w ...
- Watson Explorer Analytical Components 3 - use case scenarios
The followings are the user case scenarios that WEX can be used for generating value. 1.Customer Ins ...
- java中变量赋值的理解
1.当赋值的值超出声明变量的范围时候,会报错! byte a =200 //会报错,因超出范围. byte a =(byte)200;//进行一个强制转换,就不会报错,不过会超出范围,超出部分会从头开 ...
- FTP DOS 命令行
1. 在cmd--> 输入ftp 2. 进入ftp输入提示命令行,此时输入open ftp服务器地址,比如我的是本机就: open 127.0.0.1 3. 根据提示输入用户名和密码, 提示登录 ...
- java系统高并发解决方案(转载收藏)
一个小型的网站,比如个人网站,可以使用最简单的html静态页面就实现了,配合一些图片达到美化效果,所有的页面均存放在一个目录下,这样的网站对系统架构.性能的要求都很简单,随着互联网业务的不断丰富,网站 ...
- POJ 2289 Jamie's Contact Groups / UVA 1345 Jamie's Contact Groups / ZOJ 2399 Jamie's Contact Groups / HDU 1699 Jamie's Contact Groups / SCU 1996 Jamie's Contact Groups (二分,二分图匹配)
POJ 2289 Jamie's Contact Groups / UVA 1345 Jamie's Contact Groups / ZOJ 2399 Jamie's Contact Groups ...
- 如何使用OLAMI自然语言理解开放平台API制作自己的智能对话助手小程序
我们经常在电影中看到机器和人对答如流,随着越来越多自然语言开放平台的出现,IT爱好者制作一个自己的APP或者小玩具等逐渐可以变为现实. 自然语言对话即你的APP或者你制作的工具.机器人等能够对用户输入 ...