我有一个名为NIN_BALLOONHIDE
Case
我创建了一个名为case class Case(
@(Id@field) var id: String,
var state: CaseState = new OpenCaseState,
var notes: List[CaseNote] = new ArrayList(),
var assignedGroups:Set[String] = new HashSet(),
var aclTemplateIds: Set[String] = new HashSet()
) extends Serializable { }
的类的实例,将a_case
设置为id
。我试图获取123
属性的值。我试过这个
id
我得到的var parser: ExpressionParser = new SpelExpressionParser
var context: EvaluationContext = new StandardEvaluationContext(a_case)
var extractedId = parser.parseExpression("'id'").getValue(context).asInstanceOf[String]
变量中只有"id"
。当我尝试在没有单引号的情况下解析extractedId
时,我得到一个例外,说明在"id"
中找不到属性id
。我在这里遗漏了什么或这是Scala问题吗?
答案 0 :(得分:2)
如果id
有吸气剂,SpEL可以为您做到这一点。
我对Scala不满意,但是:
的BeanProperty
您可以使用
@BeanProperty
注释注释val和vars。这会生成看起来像POJO getter / setter定义的getter / setter。如果您需要isFoo
变体,请使用BooleanBeanProperty
注释。丑陋的foo$_eq
变成了
setFoo("newfoo");
getFoo();