NutzCN Logo
问答 nutzboot里使用IocEventListener中afterBorn只能执行一次么?
发布于 2414天前 作者 dongbolv 1499 次浏览 复制 上一个帖子 下一个帖子
标签:
@IocBean
public class TokenAnnotationProcessor implements IocEventListener {

    @Override
    public Object afterBorn(Object obj, String s) {
        try {
            Mirror mirror = Mirror.me(obj);
            Field[] fields = obj.getClass().getDeclaredFields();
            for (Method method : mirror.getMethods()) {
                boolean is = method.isAnnotationPresent(TokenVerify.class);
                if (!is){
                    continue;
                }
                TokenVerify tokenVerify = method.getAnnotation(TokenVerify.class);
                boolean tokenFlag = tokenVerify.flag();
                if (!tokenFlag){
                    continue;
                }
                Object param = Mvcs.getActionContext().getRequest().getParameter("sign_token");
                System.out.println(param);
            }
        } catch (Throwable e) {
            throw new RuntimeException(e);
        }
        return obj;
    }

    @Override
    public Object afterCreate(Object o, String s) {
        return null;
    }

    @Override
    public int getOrder() {
        return 0;
    }
}
7 回复

单例只会born一次

那如何在访问action的时候每次都去解析这个注解然后做处理呢~!?

访问Action, 应该用@Filters或者动作链来做

我想要这种效果~!

@ApiOperation(value = "获取当前毫秒数", notes = "服务器端的时间", httpMethod="GET", response=Long.class)
    @At
    @Ok("raw")
    @TokenVerify(flag = true)
    public long now() {
        return System.currentTimeMillis();
    }

现在就是Filters方式的,我想通过注解解析,是这样的方式不合理么~!?~?!

动作链吧, 做个Processor就行

谢谢大神,那我再研究一下动作链~!~!

添加回复
请先登陆
回到顶部