栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Spring MVC:两者之间的区别 和 标签?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Spring MVC:两者之间的区别  和 标签?

<mvc:annotation-driven />
意味着您可以定义spring
Bean依赖项,而无需实际在XML中指定一堆元素或实现接口或扩展基类。例如
@Repository
,告诉spring一个类是Dao,而不必扩展
JpaDaoSupport
或扩展DaoSupport的其他子类。类似地
@Controller
告诉spring,指定的类包含将处理Http请求的方法,而无需实现Controller接口或扩展实现Controller的子类。

当spring启动时,它会读取其XML配置文件,并

<bean
在其中看到类似
<bean />
Foo的标记,并且在其中查找元素,
@Controller
并知道该类是控制器并将其视为此类。默认情况下,Spring假定它应管理的所有类均在beans.XML文件中明确定义。

使用组件扫描

<context:component-scan base-package="com.mycompany.maventestwebapp"/>
告诉Spring,它应该在com.mycompany.maventestweapp下的所有类中搜索类路径,并查看每个类是否具有
@Controller
,或
@Repository
,或
@Service
@Component
如果存在,则Spring将使用该类注册该类。
Bean工厂,就像您输入
<bean  />
XML配置文件一样。

在典型的spring MVC应用程序中,您会发现有两个spring配置文件,一个配置应用程序上下文的文件通常从Spring上下文侦听器开始。

<listener>    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></listener>

而且,Spring MVC配置文件通常从Spring调度程序Servlet开始。例如。

<servlet>        <servlet-name>main</servlet-name>        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>        <load-on-startup>1</load-on-startup>    </servlet>    <servlet-mapping>        <servlet-name>main</servlet-name>        <url-pattern>/</url-pattern>    </servlet-mapping>

Spring支持分层bean工厂,因此对于SpringMVC,调度程序servlet上下文是主要应用程序上下文的子级。如果向Servlet上下文请求了一个名为“abc”的bean,它将首先在servlet上下文中查找,如果在servlet上下文中找不到它,它将在父上下文(即应用程序上下文)中查找。

通用bean(例如数据源,JPA配置,业务服务)在应用程序上下文中定义,而MVC特定的配置不与servlet关联的配置文件。

希望这可以帮助。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/372120.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号