aop怎么获取springmvc controller中的requestmapping

 我来答
不吃啊cS
2017-03-30 · TA获得超过110个赞
知道小有建树答主
回答量:255
采纳率:0%
帮助的人:186万
展开全部
@RequestMapping(value = "/login", method = RequestMethod.GET)
public ModelAndView myMethod(HttpServletRequest request,
HttpServletResponse response,
//@RequestParam("username")String username, @RequestParam("password")String password
String username,String password,//如果和前台的一样一样简写成这样
ModelMap modelMap) throws Exception {
username = new String(username.getBytes("iso8859-1"),"UTF-8");//编码问题 (服务器一帮都是iso的)
System.out.println(username+":"+password);
modelMap.put("loginUser", username);
modelMap.put("msg", "I'm in session");
return new ModelAndView("/view/hello", modelMap);
}

这里是一个方法,springMVC中参数可以直接现在方法的参数列表中,如果是对象属性的话也可以直接使用对象例如(User user,...)

刚才的方法对应的前台:
<form action="login">
username:
<input name="username" />
<br>
password:
<input name="password" type="password" />
<br>
<input type="submit" value="登入" />
</form>
追问
我的form表单中有10多个字段 而且和数据库都是一一对应的,而且以后说不定还会增加,不想一个字段一个字段的传,想直接将整个form表单的所有字段全传过去 该怎么写啊

回答
这些数据都是一个类里面的吧。就只要吧原来的string username,string password ...
改成哪个类就行了,会自动封装进去的例如:方法的参数User user,HttpRequest requrst,..
使用的时候只要user.getUsername();
类似下面的:

@RequestMapping("/addUser")
public String addUser(User user,HttpServletRequest request){

userManager.addUser(user);

return "redirect:/user/getAllUser";
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
irokay
2018-09-12
知道答主
回答量:4
采纳率:0%
帮助的人:2.3万
展开全部

@Aspect

public class UrlAuthFilter {

@Pointcut("execution(* xx.xx.xx.controller.*(..))") //切入点:所有controller下的所有方法

public void urlAuth() {};

@Around("@annotation(org.springframework.web.bind.annotation.RequestMapping)")//拦截所有带有RequestMapping注解的方法

public Object verifyAuth(ProceedingJoinPoint thisJoinPoint) {

System.out.println ("切面执行了。。。。");

RequestMapping rm = ((MethodSignature)thisJoinPoint.getSignature()).getMethod().getAnnotation(RequestMapping.class);

String [] values = rm.value();

return null;

}

}

数组values就是你想要的RequestMapping中的url值。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式