美文网首页
xml获取properties中的值

xml获取properties中的值

作者: cmeizu | 来源:发表于2019-01-11 15:10 被阅读0次

xml文件中配置扫描文件:

<context:property-placeholder ignore-unresolvable="true" location="classpath:*.properties"/>

这样可以扫描项目的所有配置文件.
但是这样配置如果是通过@Value来取值的话,只能取到当前所在模块的properties文件
如果想要取其他的propertis文件的值怎么办呢?
可以通过下面的操作来完成这样的目标:
首先根据值创建一个类如:

public class JDBC{
    private String driver;
    private String url;
    private String username;
    private String password;
    
    public String getDriver() {
        return driver;
    }

    public void setDriver(String driver) {
        this.driver = driver;
    }

    public String getUrl() {
        return url;
    }

    public void setUrl(String url) {
        this.url = url;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }
}

properties文件:

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/login
jdbc.username=root
jdbc.password=123456

xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans.xsd
           http://www.springframework.org/schema/context
           http://www.springframework.org/schema/context/spring-context.xsd
          ">
    <context:property-placeholder ignore-unresolvable="true" location="classpath:*.properties"/>
    <bean id="ossUpload" class="day_19.com.cmeizu_01.JDBC">
        <property name="driver" value="${driver}"/>
        <property name="username" value="${username}"/>
        <property name="password" value="${password}"/>
        <property name="url" value="${url}"/>
    </bean>
</beans>

在controller或service中用@Autoweired注入时要注意写法

@Autoweired(required=false)
private JDBC jdbc;

这样就可以完成了

相关文章

网友评论

      本文标题:xml获取properties中的值

      本文链接:https://www.haomeiwen.com/subject/iosxdqtx.html