Skip to main content

Action

介绍

一个类加上了 ActionController 注解表示为一个 action 类, 而在 action 类中定义的方法上添加了 ActionMethod 注解的,表示这是一个 action (即一个业务动作)。


标准的 action 是非静态的方法,访问权限建议为 private

tip

private 访问权限可以得到 JVM 更激进的优化。

action 映射规则

  1. 业务方法上添加注解 ActionMethod。
  2. 业务方法不能是:static
  3. 业务方法需要是在 action 类中声明的方法

在 action 类中提供的业务方法通常称为 action,action 的职责是处理具体的业务逻辑

  • @ActionController路由 (作用在业务类上)
  • @ActionMethod 子路由(作用在业务方法上)

action 的定义

action 是一个普通的 java 方法。

  • 方法的参数表示请求端传入的数据。
  • 方法的返回值表示服务器响应给请求端的数据。
@ActionController(1)
public class DemoAction {
@ActionMethod(0)
private HelloMessage here(HelloMessage message) {
message.name = message.name + ", here ";
return message;
}

@ActionMethod(1)
private HelloMessage say(HelloMessage message) {
message.name = message.name + ", say ";
return message;
}
}

如果只负责编写业务,那么对于业务框架的学习可以到此为止了。

可以看出网络编程就是如此简单!

业务参数

HelloMessage 是一个数据协议,用于客户端与服务器的数据交互。

@ProtobufClass
public class HelloMessage {
public String name;
}
tip

默认情况下,数据协议使用 JProtobuf 序列化。

Action 的返回值

action 是可以有返回值的,当 action 执行完成后,业务框架会把返回值发送到请求端。