是否可以从 Spring Java 8 中的功能接口访问服务 class 方法?

Is it possible to access service class method from functional interface in Spring Java 8?

我想从 Spring 中的功能接口访问服务 class 方法 Java 8. 可以吗?

public interface UserProfile extends Supplier<UserProfileDto> {

//  This is working
    static UserProfile getMyId() {
        return () ->
                new UserProfileDto(
                        SecurityContextHolder.getContext().getAuthentication().getName(),
                        "", "", "");
    }

    static UserProfile getMyProfile() {
        return () -> 
    }
}

@Service("userProfileService")
public class UserProfileServiceImpl implements UserProfileService {

    private final UserProfileRepo userProfileRepo;

    @Autowired
    public UserProfileServiceImpl(@Qualifier("userProfileSql") UserProfileRepo userProfileRepo) {
        this.userProfileRepo = userProfileRepo;
    }

    @Override
    public Optional<UserProfileDto> getUserProfileById(String userId) {
        return userProfileRepo.selectUserProfileById(userId);
    }
}

我想在 UserProfile 的 getMyProfile() 中调用服务 class 方法“getUserProfileById(SecurityContextHolder.getContext().getAuthentication().getName())”。可能吗?

不,你不能从功能接口

访问服务class方法