1
我使用Java创建了PlayFramework 2.2的应用程序。有没有办法在PlayFramework中从模型中获取会话信息?
保存模型时,我想将create_user_id/update_user_id保存为跟踪信息。 但是,无法从PlayFramework的模型中检索会话信息。
目前,我保存实体时从Controller传递用户实体。 ,因为它是可怕的实现,当您调用Model.save()方法从模型方 中的会话中获取登录用户时,我想要我们保存实现。
如果您了解最佳实践,请告诉我。
public abstract class AbstractTrailModel extends Model {
public static final int INSERT = 1;
public static final int UPDATE = 2;
public static final int DELETE = 3;
@ManyToOne(cascade = CascadeType.ALL)
@Constraints.Required
public User createUser;
@ManyToOne(cascade = CascadeType.ALL)
@Constraints.Required
public User createUser;
@Constraints.Required
public Integer is_delete;
public void save(User loginUser){
if(create_time != null){
setTrailInfo(UPDATE, loginUser);
super.save();
}else{
setTrailInfo(INSERT, loginUser);
super.save();
}
}
public void setTrailInfo(int code, User loginUser){
switch(code) {
case INSERT:
createUser = loginUser;
case UPDATE:
case DELETE:
updateUser = loginUser;
}
if(code == DELETE){
is_delete = 1;
}else{
is_delete = 0;
}
}
}
我使用'play.mvc.Http.Context.current()。session()'和'play.mvc.Http.Session.get()'。我能够获得会话信息。 我使用了不同的方式,但感谢您的评论。 – mrdShinse