springmvc中针对一个controller方法配置两个url请求

记录一个小知识点。

某些应用场景》。。你可能需要不同的url请求得到相同的结果,那么你写两个方法总是不太好的,使用下面的方法可以解决这个问题。

    @RequestMapping(value = { "/item/index.htm", "/product/index.htm" })
    public ModelAndView doPDPHandler(HttpServletRequest request,HttpServletResponse response){
        ViewCommand viewCommand = constructViewCommand(request, response);
        return super.constructModelAndView(request, viewCommand);
    }

这种应用场景应该只有用到了才会知道,以前我是不知道这种使用方式的,后来,看过前辈的代码,发现了这个东西,相信看了上面的代码大家应该明白了~~

既然说道这里了,顺便说道说道spring常用的注解吧。

@Controller
@Service
@Repository
// 以上三个就不多说了,分别是用来将control、service、dao对象注册成spring的bean,其实功能是一样的,就是为了区分起了个相应的名字而已。
@Autowired
// 这个是用来引入已经spring中注册的bean的,默认根据类型来匹配
@Resource
// 这个也可以用来引入spring中注册的bean,但是前提是需要给他一个bean的name,比如@Resource("xxx"),如果不这样写他默认使用的是比如引入的对象"MemberService"默认为首字母小写去spring容器中取bean也就是"memberService"。
// 另外这个用来读配置文件也挺好用的,只要你的配置文件配置到了spring容器中,就可以通过bean的name取到。
@Transactional
// 这个不多说,就是开启事务的注解,可以写在对象上,也可以写在方法上,作用域取决于你写在什么东西上。另外如果你的sql只是用于查询可以通过配置readOnly = true来提高效率,不配置默认是false。

你可能感兴趣的:(spring,mvc,孙琛斌)