Skip to content

Tag: annotations

Make method accept only parameter with particular annotation

I have a method And I have a class which holds field And I have main class, where I call that method and pass him that: Problem is that the method accepts all the 3 parameters, (no warnings, errors, nothing) however only roomDao is annotated. Annotation itself: How to make the restriction, so that injectConfiguration(@Configurable Object bean) would accept only

How to conditionally serialize a field

I want to conditionally serialize a field. I figured out how to conditionally ignore a field with But what I really want to do is to redact the field. So if I have I get Field2 is correctly ignored. But what I really want is I have another annotation, @MaskSensitiveData So what I want to do is combine them. So

Check if Annotation is inherited

I have an annotation and three classes like this: Is there any way I can determine if a present annotation is inherited or declared directly at the class? Something like a method public boolean isInherited(Class<?> clazz, MyAnnotation annotation) that should only be called if the annotation is present. Exptected output: Answer You can use getDeclaredAnnotation instead of getAnnotation:

How can i fetch property from file in Java class?

I have set the variable “” in my environment to “test” and I have below file in my src/main/resources. It has one property “machine” I want to access this property in one of my Java based class. PropertiesConfig class: But while running this as a Spring boot application in Eclipse. I am getting below error: What am I missing?

JUnit-Testing Custom Validation Annotations Java

Hei, I currently working on custom annotations for bean validation. To ensure the implemented validation logic is working as intended, i would like to implement unit-tests for these annotations. Sadly I am struggeling to find relevant guides/tutorials on Google. The most obvious solution is to create some class, stick the annotation on it and use the validatorFactory to start the

What annotation targets are applicable to Java records?

I have an annotation used for methods or fields defined like this: I wanted to prevent users from using this on a record since it wouldn’t make sense for this annotation to be used in that context. It seems doing this should not compile since I don’t specify ElementType.PARAMETER as a valid @Target. The following compiles fine though: But this

@AliasFor doesn’t work on attribute in custom annotation

I’m using SpringBoot 2.4.2. And I’m struggling with @AliasFor with custom annotation. I implemented below custom annotation. And using it like this. And this test code fails. with message I don’t know why, anyone know? Answer An annotation is static metadata for a class, field etc. so Spring cannot change anything about it. To make features as @AliasFor possible Spring