打算在返回view的时候通过request判断是pc端还是移动端访问,返回不同的jsp,我不想在每个入口方法中都写一遍这样的判断然后返回不同的view。
前面是我的需求,我有个PCMobileViewMaker继承的ViewMaker(pcmobile:index.index),在make方法中动态的改变index.index为pc.index.index或mobile.index.index,因为这个PCMobileViewMaker是在web容器启动的时候加载的,此刻没有HttpServletRequest对象,所以我无法判断是PC还是mobile,特来请教是否有其它优雅的方案
@Views({PcMobileViewMaker.class})
public class MainMoudle {
@At("/hello")
@Ok("pcmobile:index.index")
public String hello() {
return "hello";
}
public class PcMobileViewMaker implements ViewMaker{
public PcMobileViewMaker() {}
public View make(Ioc ioc, String type, String value){
if("pcmobile".equalsIgnoreCase(type)){
//此处无法获取用户的访问途径(web容器启动阶段没HttpServletRequest对象)
value = "pc." + value;
//value = "mobile." + value;
return new JspView(value);
}
return null;
}
}