类org.hibernate.annotations.Formula源码实例Demo

下面列出了怎么用org.hibernate.annotations.Formula的API类实例代码及写法,或者点击链接到github查看源代码。

@Formula("""
round(
   (interestRate::numeric / 100) *
   cents *
   date_part('month', age(now(), createdOn)
)
/ 12)
""")
 
@Formula("""
round(
   (interestRate::numeric / 100) *
   cents *
   date_part('month', age(now(), createdOn)
)
/ 12)
/ 100::numeric
""")
 
源代码3 项目: lams   文件: ColumnsBuilder.java
public ColumnsBuilder extractMetadata() {
	columns = null;
	joinColumns = buildExplicitJoinColumns(property, inferredData);


	if ( property.isAnnotationPresent( Column.class ) || property.isAnnotationPresent( Formula.class ) ) {
		Column ann = property.getAnnotation( Column.class );
		Formula formulaAnn = property.getAnnotation( Formula.class );
		columns = Ejb3Column.buildColumnFromAnnotation(
				new Column[] { ann },
				formulaAnn,
				nullability,
				propertyHolder,
				inferredData,
				entityBinder.getSecondaryTables(),
				buildingContext
		);
	}
	else if ( property.isAnnotationPresent( Columns.class ) ) {
		Columns anns = property.getAnnotation( Columns.class );
		columns = Ejb3Column.buildColumnFromAnnotation(
				anns.columns(),
				null,
				nullability,
				propertyHolder,
				inferredData,
				entityBinder.getSecondaryTables(),
				buildingContext
		);
	}

	//set default values if needed
	if ( joinColumns == null &&
			( property.isAnnotationPresent( ManyToOne.class )
					|| property.isAnnotationPresent( OneToOne.class ) )
			) {
		joinColumns = buildDefaultJoinColumnsForXToOne(property, inferredData);
	}
	else if ( joinColumns == null &&
			( property.isAnnotationPresent( OneToMany.class )
					|| property.isAnnotationPresent( ElementCollection.class )
			) ) {
		OneToMany oneToMany = property.getAnnotation( OneToMany.class );
		String mappedBy = oneToMany != null ?
				oneToMany.mappedBy() :
				"";
		joinColumns = Ejb3JoinColumn.buildJoinColumns(
				null,
				mappedBy,
				entityBinder.getSecondaryTables(),
				propertyHolder,
				inferredData.getPropertyName(),
				buildingContext
		);
	}
	else if ( joinColumns == null && property.isAnnotationPresent( org.hibernate.annotations.Any.class ) ) {
		throw new AnnotationException( "@Any requires an explicit @JoinColumn(s): "
				+ BinderHelper.getPath( propertyHolder, inferredData ) );
	}
	if ( columns == null && !property.isAnnotationPresent( ManyToMany.class ) ) {
		//useful for collection of embedded elements
		columns = Ejb3Column.buildColumnFromAnnotation(
				null,
				null,
				nullability,
				propertyHolder,
				inferredData,
				entityBinder.getSecondaryTables(),
				buildingContext
		);
	}

	if ( nullability == Nullability.FORCED_NOT_NULL ) {
		//force columns to not null
		for (Ejb3Column col : columns ) {
			col.forceNotNull();
		}
	}
	return this;
}
 
源代码4 项目: DWSurvey   文件: SurveyDirectory.java
@Formula("(select o.name from t_user o where o.id = user_id)")
public String getUserName() {
	return userName;
}
 
源代码5 项目: DWSurvey   文件: QuestionBank.java
@Formula("(select o.name from t_user o where o.id = user_id)")
public String getUserName() {
	return userName;
}
 
 类所在包
 类方法
 同包方法