Tag: 属性

使用相对于配置文件的路径引用Spring属性文件

我正在将属性从我的Spring配置文件中移动到单独的属性文件中。 这包含在配置文件中 就目前而言,属性文件的位置是相对于服务器进程的当前工作目录的。 这就要求必须从特定的工作目录启动进程,更糟糕的是允许它(可以说是远程的)它可以获取完全不同的属性文件 – 例如,如果它是在工作目录设置为旧版本的服务。 我想使用相对于包含配置文件的目录的路径来引用属性文件 。 看看FileSystemResource ,似乎createRelative可能就是我所需要的,但我无法弄清楚如何在配置文件中使用它。 谢谢, 史蒂夫

Xstream:删除class属性

如何删除Xstream中的class =“Something”属性。 我使用带有注释的Xstream

java属性文件,为一个属性使用多行

我将sql存储在属性文件中并使用spring注入它,这有效: someSQL = select result from myTable where y = 2 and x = ? order by z 但为了便于阅读,我想要这个: someSQL = select result from myTable where y = 2 and x = ? order by z 我需要使用哪种正确的文本格式?

如何在运行时更改Java属性?

问题:是否有某种方法可以“连接”到正在运行的JVM并更改系统属性(由-Dproperty = value给出)而无需停止JVM并且没有编写方法来执行此操作? 现在,上下文:我有一台运行在远程机器上的JBoss服务器,它托管我的应用程序,还有其他应用程序。 其他应用程序可能无法停止。 使用与我的应用程序相关的特定-D属性调用服务器。 在服务器启动时为此属性分配了错误的值。 我需要改变那个属性。 最简单的方法是重启JBoss,但这会导致所有应用程序停机一段时间。 有没有办法改变这个属性而不停止任何应用程序,但我自己的? 谢谢!

如何在Spring @Value注释中正确指定默认值?

最初,我有以下规范: @Value(“#{props.isFPL}”) private boolean isFPL=false; 这可以很好地正确获取属性文件中的值: isFPL = true 但是,以下带有默认值的表达式会导致错误: @Value(“#{props.isFPL:false}”) private boolean isFPL=false; 表达式解析失败; 嵌套exception是org.springframework.expression.spel.SpelParseException:EL1041E:(pos 28):解析有效表达式后,表达式中还有更多数据:’colon(:)’ 我也尝试用$而不是#。 @Value(“${props.isFPL:true}”) private boolean isFPL=false; 然后注释中的默认值工作正常,但我没有从属性文件中获取正确的值:

PropertyPlaceholderConfigurer从XML文件读取(Apache Commons配置)

是否有可能通过Apache Commons Configuration将Spring PropertyPlaceholderConfigurer配置为从properties.xml读取?

如何将Spring配置为部分和可选地覆盖属性?

我想要一个属性设置,在某些环境中,它可以覆盖特定的属性。 例如,dev的默认JDBC属性是: db.driverClassName = com.mysql.jdbc.Driver = db.url配置参数JDBC:MySQL的://本地主机:3306 / ourdb db.username =根 db.password = 问题是我们的一些开发人员希望在数据库上拥有不同的用户名/密码,甚至可能是非本地托管的数据库。 我们的rabbitMQ配置也是如此,它目前使用类似的localhost,guest / guest设置。 能够在每个开发人员的基础上覆盖此配置的某些元素的属性将允许我们移动大部分基础架构/安装要求,以便从本地计算机和专用服务器构建软件。 我已经设置了一个简单的项目来围绕实现我想要的配置,这是我第一次进入spring属性配置的世界,因为到目前为止,属性加载和管理是通过一些自定义完成的码。 这是我的设置: class Main_PropertyTest { public static void main(String[] args) { String environment = System.getenv(“APPLICATION_ENVIRONMENT”); // Environment, for example: “dev” String subEnvironment = System.getenv(“APPLICATION_SUB_ENVIRONMENT”); // Developer name, for example: “joe.bloggs” System.setProperty(“spring.profiles.active”, environment); System.setProperty(“spring.profiles.sub”, subEnvironment); try(AnnotationConfigApplicationContext context = […]

根据传入的字符串设置枚举值

我有许多setter方法,它们采用枚举。 这些基于传入对象属性。 而不是写一堆这些是有一种方法来硬编码说10个不同的案例陈述。 有没有办法创建一个可重用的方法? //Side class declared as public final enum Side //How I initialise side static Side side = Side.SELL;//default //method to set object Obj.setSide(sideEnum(zasAlloc.getM_buySellCode())); //How I am implementing it public static Side sideEnum(String buysell) { if(buysell.equalsIgnoreCase(“S”)) { side = Side.SELL; //default } else if(buysell.equalsIgnoreCase(“B”)) { side = Side.BUY; } return side; }

Java偏好和国际化(i18n)

Java教程建议在Properties文件上使用Preferences API。 属性文件和ResourceBundle是处理应用程序中的内部化要求的推荐方法。 我正在考虑将两者用于桌面应用程序,该应用程序将以特定于语言环境的方式显示首选项。 任何人都可以指出这种方法的问题吗? 也许我应该只使用属性文件期间?

在jar子中包含属性/配置文件是不好的做法吗?

例如: MyApp是一个Web应用程序,其中包含一个属性文件(server.properties),用于描述应用程序的配置数据(例如服务器名称)。 在开发阶段,server.properties位于其自己的IDE项目文件夹(它的逻辑位置)中。 现在是时候部署MyApp了。 IDE使得类文件以及支持配置文件变得非常简单。 现在我们将Jar放入适当的Web容器中,然后我们就去…. 一周后…… MyApp使用的服务器配置数据需要更改。 哪个更有意义? A.在IDE域中修改server.properties文件并生成一个全新的jar文件。 重新部署。 (这意味着弹出应用程序以进行简单的配置更改)。 B.破解已部署的Jar并修改server.properties文件? (如果缓存了server.properties,可能必须在MyApp中调用刷新函数…但不应该要求完整的应用程序反弹。还需要记住修改源server.properties以便将来的部署不会还原server.properties到旧的服务器名称)。 C.首先将server.properties置于jar文件的外部。 与B的过程非常相似,将配置数据保存在jar外部的细微差别(在开发和生产部署之间引入不同的路径) D.其他: 谢谢!