Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/345.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Spring:@值与其他类中的lombok_Java_Spring_Spring Boot_Getter Setter_Lombok - Fatal编程技术网

Java Spring:@值与其他类中的lombok

Java Spring:@值与其他类中的lombok,java,spring,spring-boot,getter-setter,lombok,Java,Spring,Spring Boot,Getter Setter,Lombok,我们能用@Value搭配龙目舞吗 我在下面创建了一个类 @Getter @Setter class Hello { @Value("${url}") private String url; } 是否可以使用lombok getter和setter在其他类中重用字符串url值?当然可以。Lombok创建默认公共的getter和setter,因此任何其他类都可以使用传统的getter/setter语法访问它们。在这种情况下,您只需要调用函数: yourHelloObject.g

我们能用@Value搭配龙目舞吗

我在下面创建了一个类

@Getter
@Setter
class Hello
{

    @Value("${url}")
    private String url;

}

是否可以使用lombok getter和setter在其他类中重用字符串url值?

当然可以。Lombok创建默认公共的getter和setter,因此任何其他类都可以使用传统的getter/setter语法访问它们。在这种情况下,您只需要调用函数:

yourHelloObject.getUrl()

是的,但它仍然需要遵守自动布线的规则。您需要给Spring的依赖注入框架一个参与的机会

如果你只是写信

Hello hello = new Hello()
System.out.println(hello.getUrl()); // null
那么结果将为空

因为对象可能处于半初始化状态

这与龙目山无关。该对象需要由Spring创建。一种方法是将其作为一个组件

@Component
@Getter
@Setter
class Hello
{
    @Value("${url}")
    private String url;
}

...

@Component
public class AnotherComponent {
    public AnotherComponent(Hello hello) { //constructor injection
        System.out.println(hello.getUrl()); //not null
    }
}

当然,您可以使用它,但也可以使用
@Value(${url}”)
将它注入另一个类中。我尝试使用@Autowired hello,但无法从hello获得该值。