Annotation Type Formula


  • @Target({METHOD,FIELD})
    @Retention(RUNTIME)
    public @interface Formula
    Defines a formula (derived value) which is a SQL fragment that acts as a @Column alternative in most cases. Represents read-only state. In certain cases @ColumnTransformer might be a better option, especially as it leaves open the option of still being writable.
         // perform calculations
         @Formula( "sub_total + (sub_total * tax)" )
         long getTotalCost() { ... }
     
         // call database functions ( e.g. MySQL upper() and substring() )
         @Formula( "upper( substring( middle_name, 1 ) )" )
         Character getMiddleInitial() { ... }
     
         // this might be better handled through @ColumnTransformer
         @Formula( "decrypt(credit_card_num)" )
         String getCreditCardNumber() { ... }
     
    See Also:
    ColumnTransformer
    • Required Element Summary

      Required Elements 
      Modifier and Type Required Element Description
      java.lang.String value
      The formula string.
    • Element Detail

      • value

        java.lang.String value
        The formula string.