qq_23223147
qq_23223147
2018-06-14 01:39
采纳率: 50%
浏览 2.9k
已采纳

请问springMVC controller方法中的参数是如何注入的?

@RequestMapping(value = "/login", method = RequestMethod.POST)
public String login(String userid, String password, HttpSession session, CommonDate date, LogUtil logUtil, NetUtil netUtil, HttpServletRequest request) {
logUtil.setLog(userid, date.getTime24())...
...
}


其中CommonDate,LogUtil,NetUtil都是自己写的工具类,没有注解,并且XML也没有配置bean,也没有去扫描这些类。为什么请求过来进入这个方法后,可以直接使用这些类,请问这些类是怎么被注入的?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

10条回答 默认 最新

  • qq_23126581
    已采纳

    springMVC 在方法里定义类就相当于new了这个类。public String login(User user) 那么你就可以直接用这个类了,无需new。还有一种就是当你的页面控件的Name和User类中属性一样时,你定义public String add(User user) 保存时就可以直接用xxx.add(user) 不需要一个一个定义参数了。

    点赞 评论
  • qq_42120975
    qq_42120975 2018-06-14 01:42

    可以通过@注解来注入,也

    点赞 评论
  • u010203027
    Tequila_Drckkk 2018-06-14 01:43

    通过注解来实现的,这些值都有固定的默认值被初始化

    点赞 评论
  • qq_39537939
    看不懂的人 2018-06-14 01:48

    因为这些类中有get和set方法然而springmvc是通过request域传递对应值

    点赞 评论
  • qq_32810875
    qq_32810875 2018-06-14 01:48

    查看SpringMVC的API,讲解的很清楚的

    点赞 评论
  • gch5710
    gch5710 2018-06-14 01:54

    导入的类,这些相当于在方法体中new了一个类

    点赞 评论
  • xcgh
    xcgh 2018-06-14 01:58
    点赞 评论
  • gf0515
    Fatal Error 2018-06-14 02:34

    使用注解成功注入的对象,是被初始化了的,不为null;请求方法中的参数,是需要被赋值(传值)的,如果请求体中没有相应的参数,则该方法参数为null,
    会抛异常的。

    点赞 评论
  • zhangxl5232
    zhangxl5232 2018-06-14 02:44

    使用spring注解成功的对象,就是被声明了,可以直接调用

    点赞 评论
  • Lee304277901
    小蚂蚁大猩猩 2018-06-14 02:46

    首先你要传入的参数是什么类型的,通过不同类型的参数使用不同的注解去进行参数的注入

    点赞 评论

相关推荐