如何从 JSP 访问案例 class 的字段?
How to access fields of case class from JSP?
当我是一名 Java 程序员时,我的典型方法是编写一个带有吸气剂的 POJO 并通过这些吸气剂 JSP 访问它的字段 ${pojo.field}
.
现在我正在尝试使用 Scala。 Case classes 看起来是 POJO 的一个很好的替代品,但 scala 提供 field()
getter 而不是 JSP.
所需的 getField()
那么,如何在不为每个字段手动写入 def getField = field
的情况下从 JSP 访问 case class 字段?或者也许有更适合我目的的方法?
注释您案例 classes 的字段
import scala.beans.BeanProperty;
case class Person( @BeanProperty val name : String, @BeanProperty val age : Int);
现在您的 class 将拥有 getName()
和 getAge()
以及 name()
和 age()
等方法。
如果您需要 bean setter,请使用 var
s:
class Person( @BeanProperty var name : String, @BeanProperty var age : Int);
(注意:我通常不喜欢将不可变对象设为 classes,即使在可变 class 声明之前声明 case
是合法的。)
现在您会发现 java void setName( String name )
和 void setAge( int age )
的等价物已被定义。
当我是一名 Java 程序员时,我的典型方法是编写一个带有吸气剂的 POJO 并通过这些吸气剂 JSP 访问它的字段 ${pojo.field}
.
现在我正在尝试使用 Scala。 Case classes 看起来是 POJO 的一个很好的替代品,但 scala 提供 field()
getter 而不是 JSP.
getField()
那么,如何在不为每个字段手动写入 def getField = field
的情况下从 JSP 访问 case class 字段?或者也许有更适合我目的的方法?
import scala.beans.BeanProperty;
case class Person( @BeanProperty val name : String, @BeanProperty val age : Int);
现在您的 class 将拥有 getName()
和 getAge()
以及 name()
和 age()
等方法。
如果您需要 bean setter,请使用 var
s:
class Person( @BeanProperty var name : String, @BeanProperty var age : Int);
(注意:我通常不喜欢将不可变对象设为 classes,即使在可变 class 声明之前声明 case
是合法的。)
现在您会发现 java void setName( String name )
和 void setAge( int age )
的等价物已被定义。