-
这周阿里三面的一个面试题目:在Spring MVC 中,控制器controller 怎么样找到对应的业务模型来出来以后的请求5
我们知道用户请求URL可以注解的方式来把UR与控制器controller映射起来,但怎么样把控制器controller 与业务模型映射起来是url通过controller找到对应的业务模型?也即是说控制器与业务模型怎么样建立关系?
问题补充:这周阿里三面的一个面试题目:在Spring MVC 中,控制器controller 怎么样找到对应的业务模型来处理用户的请求2013年12月01日 14:40
17个答案 按时间排序 按投票排序
-
ModelAndView ,通过url绑定的方法method,其实跟struts2的差不多了 ,就是springMVC更轻量级,好用些。
2014年1月15日 22:31
-
系统加载的时候解析注解,原理应该如下吧(肯定不会这么简单):
Map<String,Method> mapping = new HashMap();
mapping.put("/user/login",loginMethod);
mapping.put("/user/register",registerMethod);
2013年12月03日 09:20
-
如果是这个意思:比如url和controller具有匹配关系,那怎么通过url找到相应的service? 当然这个只考虑比如简单的crud的话; 可以这样:
1、url设计的问题: /{module}/others 比如:/user/create ,其中others是service的method名字,方便反射掉
2、controller的写法:
@Controller
@RequestMapping(“/user”)
public class UserController {
}
3、自动搜索相关的service:
3.1、根据controller名字得到相关的service名字,如UserService(有规则可循的);
3.2、根据请求的url找,@RequestMapping(“/user”) 到UserService 也是能找到规律的
4、找到service之后,再根据method名字 自动调用service方法;
不过这些只适合基本的crud, 如果复杂场景,还是要写代码的。
不过问题描述的确实不大清楚。2013年12月02日 13:49
-
楼主应该说的是mvc如何实现将request中的请求数据绑定到对应的Model中,这个是通过spring mvc 的dataBinder机制以及HttpMessageConverter实现的,具体可以去看下对应的源码实现
2013年12月02日 10:40
-
ViewResolver 提供的控制功能,很典型的内置路由器:
org.springframework.web.servlet.view.ContentNegotiatingViewResolver
也可以自己扩展,主要作用是截获请求的头信息比如url contant-type之类的转发到不同的controller模块,有时间看看源码把,其实看看就懂了。2013年12月02日 09:34
相关推荐
在Spring MVC中,我们通常使用@Controller和@RequestMapping等注解来定义控制器类和处理方法。 在实现类似Spring MVC的注解方式时,我们需要关注以下几个关键点: 1. **注解驱动**:Spring MVC的核心在于其对注解...
Spring MVC 是 Spring 框架的一个重要模块,它为构建基于Java的Web应用程序提供了一个强大的模型-视图-控制器(MVC)架构。Spring MVC 的设计允许开发者将业务逻辑、数据处理和用户界面分离,从而实现更好的可维护性...
在控制器处理完请求后,可以通过返回一个 ModelAndView 对象来指定视图和传递模型数据。 8. **视图解析**:Spring MVC 支持多种视图技术,如 JSP、FreeMarker、Thymeleaf 等。视图解析器(ViewResolver)会根据指定...
《看透Spring MVC:源代码分析与实践》是一本深入探讨Spring MVC框架核心机制的书籍。通过对源代码的解析,读者可以深入了解这个广泛使用的Java Web开发框架的工作原理,从而更好地运用和优化自己的项目。该书提供了...
在Spring MVC框架中,Controller作为模型视图控制器(Model-View-Controller)模式中的控制器部分,承担着处理用户请求的重要职责。虽然这里提到的是部分控制器,但它在整体流程中扮演着关键角色。Controller的主要...
Spring MVC通过分离模型(Model)、视图(View)和控制器(Controller)来简化Web开发。以下将详细分析Spring MVC的核心知识点。 一、前言:介绍了选择Spring MVC的原因和优势。Spring MVC简单易用,可以快速提高...
Spring MVC 是一个基于Java的轻量级Web应用框架,它为开发者提供了模型-视图-控制器(MVC)架构,使开发人员能够更好地组织和分离应用程序的业务逻辑、数据处理和用户界面。Spring MVC是Spring框架的一个核心组件,...
Spring MVC 是一个基于Java的轻量级Web应用框架,它是Spring框架的重要组成部分,主要用于构建Web应用程序的后端控制器。Spring MVC的设计目标是提供一个清晰的组件化架构,使得开发者可以独立地开发和测试控制器、...
在这个简单的例子中,可能只需要设置一个视图名,如"hello",然后Spring MVC会根据配置的视图解析器来查找对应的视图。 7. **视图解析**: 视图解析器(如`InternalResourceViewResolver`)根据给定的视图名找到...
Spring MVC 是一个基于Java的轻量级Web应用框架,它是Spring框架的重要组成部分,主要用于构建Web应用程序的后端控制器。这个"Spring MVC 基础实例源码01"的资源很可能是为了帮助初学者理解Spring MVC的核心概念和...
在Spring MVC中,控制器可以通过`@RequestMapping`注解来指定处理哪些URL请求。 ### Spring Boot入门与实践 #### 1. Spring Boot简介 Spring Boot是由Pivotal团队提供的全新框架,其设计目标是简化新Spring应用的...
在本实例中,我们有一个名为"spring-MVC.zip"的压缩包,里面包含了一个关于Spring MVC的开发教程,特别适合初学者进行学习。 Spring MVC的核心概念包括DispatcherServlet、Controller、Model、View和ViewModel。...
Spring 框架以其依赖注入(Dependency Injection, DI)和面向切面编程(Aspect-Oriented Programming, AOP)为核心,而 Spring MVC 则是它为构建 Web 应用程序提供的模型-视图-控制器(Model-View-Controller, MVC)...
- **Spring MVC简介**:Spring MVC是Spring框架的一个模块,它遵循模型-视图-控制器(Model-View-Controller, MVC)架构模式,旨在简化企业级Web应用的开发过程。通过将应用程序逻辑划分为模型(Model)、视图(View...
在Spring MVC中,每个请求都会经过DispatcherServlet,这是一个前端控制器,它会根据请求的URL和配置的映射规则将请求分发到合适的处理器。处理器可以是自定义的Controller类,Controller通过方法注解(如@...
Spring MVC 是一个基于Java的轻量级Web应用框架,它属于Spring框架的一部分,主要用于构建控制器层,实现模型-视图-控制器(Model-View-Controller)架构。在Spring MVC中,开发者可以方便地处理HTTP请求,进行数据...
在这个"Spring MVC 简单Demo"中,我们可能有一个名为`SummerWeb`的目录,其中包含以下文件: - `web.xml`:定义DispatcherServlet,例如: ```xml <servlet-name>dispatcher <servlet-class>org.spring...
在Spring MVC框架中,AOP(面向切面编程)是一种强大的工具,用于实现跨切面的关注点,如日志管理。本教程将详细介绍如何利用注解来配置和使用AOP来拦截Controller层的方法,以便记录执行过程中的相关信息,实现日志...