lombok之后未调用重写Setter方法

问题描述 投票:0回答:2

我用龙目岛注释。我需要重写属性之一的setter方法。但这不起作用。

我用@Setter(AccessLevel.NONE)注释了该属性,然后显式调用了setProperty

下面提到豆。

@Data
@AllArgsConstructor
@Slf4j
public class TestDto
{

    private String code;

    @Setter(AccessLevel.NONE)
    private String nameCode;

    public void setNameCode(String nameCode)
    {
        log.info("  nameCode   {}", nameCode);
        this.nameCode = <Call to some method>;
    }

}

设置了bean列表的DTO。

@Data
@NoArgsConstructor
@AllArgsConstructor
public class TestViewDto {
    private List<TestDto> testDtoList;
    .............Few more dto's..............................
    }

这是从下面的服务中调用的。。

travelAgentViewDto.setTestDto(repository.findTestNumber(number);

存储库接口定义如下:

public interface Repository extends JpaRepository<Address, AddressPk> {
        public List<TestDto> findTestNumber(String number);

}

代码运行正常。唯一的问题是,重写setNameCode时,不会在setter内进行同样的操作。

setNameCode方法中,以下日志应打印:log.info(" nameCode {}", nameCode)

实际上呼叫不去那里。

我用龙目岛注释。我需要重写属性之一的setter方法。但这是行不通的。我已经用@Setter(AccessLevel.NONE)注释了属性,然后调用...

java spring-boot setter lombok
2个回答
3
投票

正如@Ravik所提到的,您不需要明确告诉lombok不要生成二传手;您写了一个事实意味着一个“胜利”和龙目岛一开始不会产生那个二传手。


2
投票

您不需要使用

© www.soinside.com 2019 - 2024. All rights reserved.