java项目中读取jdbc.properties文件操作

 更新时间:2020年08月18日 10:06:17   作者:Wales_  
这篇文章主要介绍了java项目中读取jdbc.properties文件操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

java内容

Properties props = Resources.getResourceAsProperties("jdbc.properties");
String url = props.getProperty("jdbc.url");
String driver = props.getProperty("jdbc.driverClass");
String username = props.getProperty("jdbc.username");
String password = props.getProperty("jdbc.password");
Class.forName(driver).newInstance();
Connection conn = (Connection) DriverManager.getConnection(url, username, password);

jdbc.properties文件内容

jdbc.driverClass = com.mysql.jdbc.Driver
jdbc.url = jdbc\:mysql\://127.0.0.1\:3306/LY?useUnicode\=true&characterEncoding\=UTF-8&zeroDateTimeBehavior\=convertToNull&allowMultiQueries\=true
jdbc.username = root
jdbc.password = root
jdbc.minPoolSize=2
jdbc.maxPoolSize=20
jdbc.checkoutTimeout=3000
jdbc.maxStatements=50
jdbc.testConnectionOnCheckin = false
jdbc.idleConnectionTestPeriod =18000

补充知识:模仿com.alibaba.fastjson.JSONObject取值的PropertiesUtils

1.依赖于:fastjson

<dependency>
  <groupId>com.alibaba</groupId>
  <artifactId>fastjson</artifactId>
  <version>1.2.39</version>
</dependency>

2.话不多说,上代码

package com.gy.common.util;
 
import java.io.IOException;
import java.io.InputStream;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.sql.Timestamp;
import java.util.Date;
import java.util.Properties;
 
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
 
import com.alibaba.fastjson.util.TypeUtils;
 
/**
 * java读取配置文件
 * 
 * @author Neo 2017-5-12
 * @version 1.1
 *
 */
@SuppressWarnings({ "unchecked", "rawtypes" })
public class PropertiesUtils {
 
	private static Logger logger = LoggerFactory.getLogger(PropertiesUtils.class);
 
	private static Properties properties;
 
	private static final String PROPERTIES_EGIS_FILE_NAME = "application/config.properties";
 
	static {
		properties = new Properties();
		InputStream scmsStream = null;
		try {
			scmsStream = PropertiesUtils.class.getClassLoader().getResourceAsStream(PROPERTIES_EGIS_FILE_NAME);
			properties.load(scmsStream);
			logger.info("PropertiesUtils", "staitc init prop", properties.toString());
 
		} catch (Exception e) {
		} finally {
			try {
				if (scmsStream != null) {
					scmsStream.close();
				}
			} catch (Exception e) {
 
			}
		}
	}
 
	public static String getProperty(String key) {
		String result = properties.getProperty(key);
		return result;
	}
 
	public static String getProperty(String key, String defaultValue) {
		String result = properties.getProperty(key, defaultValue);
		return result;
	}
 
	public static String getProperties(String propertiesName, String key) {
		Properties props = new Properties();
		InputStream inputStream = null;
		try {
			inputStream = PropertiesUtils.class.getClassLoader().getResourceAsStream(propertiesName);
			props.load(inputStream);
		} catch (IOException e) {
		} finally {
			try {
				if (inputStream != null) {
					inputStream.close();
				}
			} catch (Exception e) {
 
			}
		}
 
		return props.getProperty(key);
	}
 
	public static Object getObject(String key, Class clazz) {
		Object obj = getProperty(key);
		return TypeUtils.castToJavaBean(obj, clazz);
	}
 
	public static Boolean getBoolean(String key) {
		Object value = getProperty(key);
		if (value == null)
			return null;
		else
			return TypeUtils.castToBoolean(value);
	}
 
	public static byte[] getBytes(String key) {
		Object value = getProperty(key);
		if (value == null)
			return null;
		else
			return TypeUtils.castToBytes(value);
	}
 
	public static boolean getBooleanValue(String key) {
		Object value = getProperty(key);
		if (value == null)
			return false;
		else
			return TypeUtils.castToBoolean(value).booleanValue();
	}
 
	public static Byte getByte(String key) {
		Object value = getProperty(key);
		return TypeUtils.castToByte(value);
	}
 
	public static byte getByteValue(String key) {
		Object value = getProperty(key);
		if (value == null)
			return 0;
		else
			return TypeUtils.castToByte(value).byteValue();
	}
 
	public static Short getShort(String key) {
		Object value = getProperty(key);
		return TypeUtils.castToShort(value);
	}
 
	public static short getShortValue(String key) {
		Object value = getProperty(key);
		if (value == null)
			return 0;
		else
			return TypeUtils.castToShort(value).shortValue();
	}
 
	public static Integer getInteger(String key) {
		Object value = getProperty(key);
		return TypeUtils.castToInt(value);
	}
 
	public static int getIntValue(String key) {
		Object value = getProperty(key);
		if (value == null)
			return 0;
		else
			return TypeUtils.castToInt(value).intValue();
	}
 
	public static Long getLong(String key) {
		Object value = getProperty(key);
		return TypeUtils.castToLong(value);
	}
 
	public static long getLongValue(String key) {
		Object value = getProperty(key);
		if (value == null)
			return 0L;
		else
			return TypeUtils.castToLong(value).longValue();
	}
 
	public static Float getFloat(String key) {
		Object value = getProperty(key);
		return TypeUtils.castToFloat(value);
	}
 
	public static float getFloatValue(String key) {
		Object value = getProperty(key);
		if (value == null)
			return 0.0F;
		else
			return TypeUtils.castToFloat(value).floatValue();
	}
 
	public static Double getDouble(String key) {
		Object value = getProperty(key);
		return TypeUtils.castToDouble(value);
	}
 
	public static double getDoubleValue(String key) {
		Object value = getProperty(key);
		if (value == null)
			return 0.0D;
		else
			return TypeUtils.castToDouble(value).doubleValue();
	}
 
	public static BigDecimal getBigDecimal(String key) {
		Object value = getProperty(key);
		return TypeUtils.castToBigDecimal(value);
	}
 
	public static BigInteger getBigInteger(String key) {
		Object value = getProperty(key);
		return TypeUtils.castToBigInteger(value);
	}
 
	public static String getString(String key) {
		Object value = getProperty(key);
		if (value == null)
			return null;
		else
			return value.toString();
	}
 
	public static Date getDate(String key) {
		Object value = getProperty(key);
		return TypeUtils.castToDate(value);
	}
 
	public static java.sql.Date getSqlDate(String key) {
		Object value = getProperty(key);
		return TypeUtils.castToSqlDate(value);
	}
 
	public static Timestamp getTimestamp(String key) {
		Object value = getProperty(key);
		return TypeUtils.castToTimestamp(value);
	}
 
	public static void main(String[] args) {
		if(getBooleanValue("isNeedLogin"))
			System.out.println("aaa");
	}
}

以上这篇java项目中读取jdbc.properties文件操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 浅谈java对象的比较

    浅谈java对象的比较

    这篇文章主要给大家分享java对象的比较,主要有元素的比较、类的比较及比较的方法,想具体了解的小伙伴和小编一起进入下面文章内容吧
    2021-10-10
  • Java面向对象之内部类案例讲解

    Java面向对象之内部类案例讲解

    这篇文章主要介绍了Java面向对象之内部类案例讲解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • SpringCloud之Hystrix的详细使用

    SpringCloud之Hystrix的详细使用

    熔断机制是应对雪崩效应的一种微服务链路保护机制,当扇出链路的某个微服务出错不可用或者响应时间太长,会进行服务的降级,进而熔断该节点微服务的调用,快速返回错误的相应信息,本文重点给大家介绍SpringCloud Hystrix使用,感兴趣的朋友一起看看吧
    2022-01-01
  • ActiveMQ基于zookeeper的主从(levelDB Master/Slave)搭建

    ActiveMQ基于zookeeper的主从(levelDB Master/Slave)搭建

    这篇文章主要介绍了ActiveMQ基于zookeeper的主从levelDB Master/Slave搭建,以及Spring-boot下的使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-08-08
  • Java跳出多重嵌套循环代码实例

    Java跳出多重嵌套循环代码实例

    这篇文章主要介绍了Java跳出多重嵌套循环,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-03-03
  • Java动态规划之硬币找零问题实现示例

    Java动态规划之硬币找零问题实现示例

    本文主要介绍了Java动态规划之硬币找零问题实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • resty client使用Java客户端来访问Api

    resty client使用Java客户端来访问Api

    这篇文章主要介绍了resty-client使用Java客户端来访问Api的验证权限,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步
    2022-03-03
  • java实现ArrayList根据存储对象排序功能示例

    java实现ArrayList根据存储对象排序功能示例

    这篇文章主要介绍了java实现ArrayList根据存储对象排序功能,结合实例形式分析了java针对ArrayList的相关运算、排序操作技巧,需要的朋友可以参考下
    2018-01-01
  • Springboot打成war包并在tomcat中运行的部署方法

    Springboot打成war包并在tomcat中运行的部署方法

    这篇文章主要介绍了Springboot打成war包并在tomcat中运行,在文中还给大家介绍了SpringBoot war包tomcat运行启动报错(Cannot determine embedded database driver class for database type NONE)的解决方法,需要的朋友可以参考下
    2018-01-01
  • Java 时间格式转换之impleDateFormat与Data API解析与使用

    Java 时间格式转换之impleDateFormat与Data API解析与使用

    想必大家对 SimpleDateFormat 并不陌生。SimpleDateFormat 是 Java 中一个非常常用的类,他是以区域敏感的方式格式化和解析日期的具体类。 它允许格式化 (date -> text)、语法分析 (text -> date)和标准化
    2021-11-11

最新评论