账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    spring中xml文件配置的参数拿不到
    35
    0

    这是spring的xml配置文件

    <bean id="zookeeperService"
            class="test.service.ZookeeperService">
            <property name="zookeeperHost" >
                <value>127.0.0.1</value>
            </property>
            <property name="zkPath" >
                <value>/limit_02</value>
            </property>
            <property name="applicationName" >
                <value>lbx</value>
            </property>
        </bean>
    
        <bean id="limitService"
            class="test.service.LimitService">
            <property name="url" >
                <value>http://127.0.0.1<;/value>
            </property>
        </bean>
        

    这是ZookeeperService ,应用启动的时候会走这里加载zookeeper一些配置这里就能拿到参数,但是afterPropertiesSet这个方法不知道为什么会运行两次,第二次这些zkPath,applicationName,zookeeperHost就为null了

    @Service
    public class ZookeeperService implements InitializingBean {
    
        private String zkPath;
        private String applicationName;
        private String zookeeperHost;
        public void afterPropertiesSet() throws Exception {
            init();
            setActionInfo();
            initZkWatcher();
        }
        public String getZookeeperHost() {
            return zookeeperHost;
        }
    
        public void setZookeeperHost(String zookeeperHost) {
            this.zookeeperHost = zookeeperHost;
        }
    
        public String getApplicationName() {
            return applicationName;
        }
    
        public void setApplicationName(String applicationName) {
            this.applicationName = applicationName;
        }
    
        public String getZkPath() {
            return zkPath;
        }
    
        public void setZkPath(String zkPath) {
            this.zkPath = zkPath;
        }
    }

    这是LimitService,程序运行到这里url就为null,拿不到不知道为什么

    @Service
    public class LimitService{
        private String url= null;
        public Map<String, Object> rateLimitAction(String actionName, String userCode) {
        Map<String, Object> reMap = new HashMap<String, Object>();
        paramMap.put("serverUrl ", url);
        return reMap;
    }
    
        public String getRateLimitServerUrl() {
            return rateLimitServerUrl;
        }
        
        public void setRateLimitServerUrl(String rateLimitServerUrl) {
            this.rateLimitServerUrl = rateLimitServerUrl;
        }
    }
    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 寂寞无罪 普通会员 1楼

      在Spring中,XML配置文件的参数是可以通过在XML文件中使用<bean>标签来指定的。例如,你可以在XML文件中定义一个Person类,并指定它的name属性:

      xml <bean id="person" class="com.example.Person"> <property name="name" value="John"/> </bean>

      然后,你可以在Spring配置文件中通过<applicationContext>标签来注入这个Person对象:

      ```xml

      <context:component-scan base-package="com.example" />
      

      ```

      在这个例子中,<context:component-scan>标签定义了一个扫描范围,包括com.example包及其子包。这样,Spring就可以自动查找并注入这个Person对象。

      注意,如果你使用的是Java配置,那么<bean>标签的id属性应该是类的全限定名,而不是类名的首字母。例如:

      xml <bean id="person" class="com.example.Person"/>

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部