黑猴子的家:Scala 什么可以被注解

1、添加注解的种类

在Scala中,我们可以为类、方法、字段、局部变量、参数、表达式、类型参数以及各种类型定义添加注解,就和Java一样

@Entity class Student
@Test def play() {}
@BeanProperty var username = _
def doSomething(@NotNull message: String) {}
// 同时添加多个注解,注解的先后顺序是没有影响的
@BeanProperty @Id var username = _  

@Entity说明这个class是实体类,并且使用默认的orm规则,即class名即数据库表中表名,class字段名即表中的字段名
如果想改变这种默认的orm规则,就要使用@Table来改变class名与数据库中表名的映射规则,@Column来改变class中字段名与db中表的字段名的映射规则
@Test 测试
@BeanProperty 自动生成Java的getter和setter方法
@NotNull 参数不为Null
@Id 唯一的

2、构造器注解

构造器注解,需要在主构造器之前,类名之后,且需要加括号(如果注解不带参数的话),如果注解有参数,则写在注解括号里

class Student @Inject() (var username: String, var password: String)
3、表达式添加注解

为表达式添加注解,在表达式后添加冒号,然后是注解本身

(map1.get(key): @unchecked) match {...}

@ unchecked 不受检的

4、泛型添加注解
class Student[@specialized T]
5、实际类型添加注解
String @cps[Unit]
6、针对实际类型的注解

针对实际类型的注解,应该放置在类型名称之后

def country:String @Localized

在这里,我们为String类型添加了注解,该方法返回的是一个本地化了的字符串

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值