NutzCN Logo
问答 @Slog使用实践问题
发布于 2511天前 作者 qq_a930202f 2356 次浏览 复制 上一个帖子 下一个帖子
标签:

https://github.com/nutzam/nutzmore/tree/5680f21c1d7fb69a0b06426662be6907c7214da1/nutz-plugins-slog 的可用变量部分,具体是怎么使用的呢?尝试了几次不得要领。

可用变量

args 方法参数
re 方法返回值,仅 after时可用
e 异常对象,仅error时可用
req 请求对象,仅mvc请求作用域内可用
resp 响应对象,仅mvc请求作用域内可用
方法参数 依赖ecj或jdk8的-paramters编译选项.

使用场景

public Object login(HttpServletRequest request, HttpServletResponse response, @Param("username") String username,
			@Param("password") String password, @Param("rememberMe") boolean rememberMe, @Param("captcha") String captcha) {
return rtn.setv("ok", true).setv("msg", "OK");
}

日志想记录username和msg

9 回复
@Slog(before="用户名[${username}]正在尝试登陆", after="用户[${usernmae}]登陆结果: ${re.msg}")

好了,多谢。
问之前搜了坛子里其他的帖子,有${args[1].getAttribute('hotwordName')}"这种用法,而我怎么用这种取不到username的值。是这个原因么(方法参数 依赖ecj或jdk8的-paramters编译选项),是的话,如何设置编译选项。
req 和 resp的用处是什么呢?什么时候需要用

args是参数数组, 总是能用的才对啊...

什么时候需要用??? 这个看业务的吧, 例如需要从req里面取一根属性,但方法没有声明HttpServletRequest 参数, 这种情况在Service类很常见吧

我刚才的情况,如果用req的取usernam话应该怎么写呢,我试了${req.username},取不到

req取username?? req.getAttribute("username") ??

你需要的应该是取请求的参数吧?

@Slog(before="用户名[${req.getParameter('username')}]正在尝试登陆", after="用户[${req.getParameter('username')}]登陆结果: ${re.msg}")

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