`
hxy520882012
  • 浏览: 29741 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Spring环境下如何存取properties文件中的数值

阅读更多
Spring环境下如何存取properties文件中的数值
为避免在JAVA程序中使用Hardcode,我们经常使用一些properties文件存放一些经常变化的数据,在runtime环境下通过配置这些数据来达到灵活配置应用程序。

  1.介绍

  为避免在JAVA程序中使用Hardcode,我们经常使用一些properties文件存放一些经常变化的数据,在runtime环境下通过配置这些数据来达到灵活配置应用程序。在Spring出现以前我们通常使用resource bundle来实现对properties文件的读取,但在Spring环境下问题变得更加简单,我们只需要写非常少的代码就能实现对properties文件的随机存取。

  2.ApplicationContext.xml文件配置

  ApplicationContext是BeanFactory的扩展,它提供了BeanFactory的所有功能,ApplicationContext允许你通过完全声明的方式配置和管理Spring和Spring管理的资源,本文我提供以下实例:

         < ?xml version="1.0" encoding="UTF-8"?>
  < !DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">

  < beans>

  < bean id="configproperties"

  class="org.springframework.beans.factory.config.PropertiesFactoryBean">

  < property name="location" value="file:config.properties"/>

  < /bean>

  < bean id="propertyConfigurer"

  class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">

  < property name="properties" ref="configproperties"/>

  < /bean>

  < bean id="tjtaskcode" class="TJTaskCode">

  < property name="taskcode" value="${TJ.TaskCode}"/>

  < /bean>

  < /beans>

  3. Config.properties文件的配置

  本例中我提供一对简单的数据用于示范:

  #Transaction Journal Task Codes

       TJ.TaskCode = 1034,1035,1037,1038,1040,1057,1058,1074

  TJ.TaskCode是键,1034,1035,1037,1038,1040,1057,1058,1074是值;

  4.Java Bean的定义

  定义Java Bean TJTaskCode.Java用于存放所需要的数值:

         public class TJTaskCode {
  private String taskcode;

  public void setTaskcode(String taskcode) {

  this.taskcode = taskcode;

  }

  public String getTaskcode() {

  return this.taskcode;

  }

  }

  5.测试程序TestAccessProperties.java的执行

         import org.springframework.context.ApplicationContext;
  import org.springframework.context.support.ClassPathXmlApplicationContext;

  import com.td.cc.audit.impl.TJTaskCode;

  public class TestAccessProperties {

  public static void main(String[] args) {

  ApplicationContext context;

  context = new ClassPathXmlApplicationContext("applicationContext.xml"); TJTaskCode taskcode1 = (TJTaskCode)context.getBean("tjtaskcode");

  String taskcode2 = taskcode1.getTaskcode();

  System.out.println(taskcode2);

  if (taskcode2.indexOf("1034")!=-1) //

  {

  System.out.println("Y");

  } else{

  System.out.println("N");

  }

  }

  }



分享到:
评论

相关推荐

    Spring中自定义session管理,SpringSession的使用

    通过将Session数据存储在外部存储中,而不是依赖于单个应用服务器的内存,SpringSession使得Session能够在分布式环境中无缝工作。 二、SpringSession的核心概念 1. **SessionRepository**:这是SpringSession的核心...

    spring-data-elasticsearch中文使用文档

    在本文档中,我们将深入探讨如何在Java环境中使用Spring Data Elasticsearch来实现高效的数据存储和检索。 **1. 安装与配置** 首先,确保你的系统中已经安装了Elasticsearch。然后,在你的项目中添加Spring Data ...

    springcloud部署redis集群

    在SpringCloud框架中,部署Redis集群是实现高可用、数据持久化和分布式缓存的关键步骤。Redis是一款高性能的键值数据库,广泛应用于缓存、消息队列等多种场景。SpringCloud通过集成Spring Data Redis模块,使得在...

    springboot[1]-多模块共用配置文件.zip

    在Spring Boot项目中,多模块共用配置文件是一种常见的需求,尤其在大型复杂项目中,为了保持代码结构清晰,我们通常会将项目划分为多个独立的模块,如服务模块、数据访问模块、Web模块等。每个模块都有其特定的功能...

    spring整合redis项目

    在Spring Boot应用中,可以通过`application.properties`或`application.yml`文件进行Redis的配置,例如设置连接池、密码、超时时间等。 ```properties spring.redis.host=127.0.0.1 spring.redis.port=6379 spring...

    spring + redis集群

    在Spring中配置Redis集群,我们需要在`application.properties`或`yaml`文件中指定集群节点的详细信息,例如: ```properties spring.redis.cluster.nodes=192.168.1.1:7001,192.168.1.1:7002,192.168.1.1:7003 ```...

    spring+redis的Demo

    在IT行业中,Spring框架与Redis的集成是常见的数据缓存解决方案,尤其在高并发和大数据量的场景下。本文将详细讲解如何将Redis与Spring框架整合,并实现一个基础的Demo。 首先,理解Spring和Redis的基本概念是至关...

    spring_mongo项目示例

    总的来说,`spring_mongo`项目示例展示了如何利用Spring Data MongoDB将MongoDB数据库集成到Spring Boot应用中,实现高效的数据操作。这个示例涵盖了从配置数据库到创建RESTful API的完整流程,是学习和实践Spring与...

    SpringData与Redis集成

    SpringData与Redis集成是现代Java应用中常见的数据存储和缓存解决方案。SpringData是一个强大的框架,它简化了数据库访问,并提供了对多种数据存储技术的统一API。而Redis是一款开源、高性能的键值对数据存储系统,...

    spring boot+redis单机与集群.zip

    总结来说,这个压缩包文件的内容将涵盖Spring Boot项目中集成Redis的基本步骤,包括设置单机和集群模式,以及如何在应用中使用Redis进行数据缓存。对于初学者,这将是一个很好的实践指南,而对于有经验的开发者,也...

    spring mvc集成redis

    2. **配置Redis连接**:在Spring Boot的application.properties或application.yml文件中配置Redis服务器的地址、端口、密码等信息。 ```properties spring.redis.host=127.0.0.1 spring.redis.port=6379 # spring....

    基于Spring的web框架使用说明

    - 在Spring的Bean中使用`@Value`注解直接读取配置文件中的值。 - 或者通过`CustomizedPropertyPlaceholderConfigurer.getContextProperty`方法获取配置项。 #### Spring Websocket - **应用场景**:实现用户间的...

    Spring-data-elasctisearch使用笔记

    在 Spring Boot 项目中,可以通过 `application.yml` 或 `application.properties` 文件设置: ```yaml spring: data: elasticsearch: clusters: - name: my-cluster hosts: localhost:9200 ``` ### 2. 实体...

    seam+spring+hibernate+richfaces配置

    2. **配置Seam**:在seam.properties文件中指定Hibernate配置,如数据源、实体扫描路径等。 3. **配置Spring**:创建Spring的bean配置文件,定义需要的bean,如DataSource、SessionFactory、TransactionManager等,...

    redis+spring jedis方式

    【Redis与Spring集成】 ...1. **配置Spring**:在Spring的配置文件中,定义RedisConnectionFactory,这是连接到Redis服务器的工厂类。你可以使用JedisConnectionFactory,因为它支持Jedis客户端。 ```xml ...

    spring-boot-mongodb项目下载

    1. **添加依赖**:首先,我们需要在 `pom.xml` 或 `build.gradle` 文件中引入 Spring Boot 对 MongoDB 的支持。对于 Maven,可以添加如下依赖: ```xml &lt;groupId&gt;org.springframework.boot &lt;artifactId&gt;spring-...

    spring整合redis小demo

    在Spring Boot项目中,通常通过application.yml或application.properties文件来配置: ```yaml spring: redis: host: localhost port: 6379 password: # 如果有密码则填写 database: 0 # 默认数据库 timeout:...

    redis和spring整合,redis集群

    2. **配置 Redis**: 在 Spring Boot 项目中,可以在 `application.properties` 或 `application.yml` 文件中配置 Redis 连接信息,如主机地址、端口、密码等: ```properties # application.properties 示例 ...

    学完Spring的一个小练习

    在完成这个小练习的过程中,你可以尝试创建一个简单的RESTful API,使用Spring Data存取数据库,使用Spring Security进行权限控制,同时编写单元测试和集成测试确保代码质量。这将帮助你更好地理解和运用Spring框架...

    详解redis与spring的整合(使用缓存)

    1. 配置文件(properties):在 `redis.properties` 文件中,我们可以定义 Redis 服务器的地址、端口、超时时间等参数,以及连接池相关的配置,如最大空闲连接数、最小空闲时间、每次检查时测试的连接数和检查间隔...

Global site tag (gtag.js) - Google Analytics