Springmvc的执行流程和mybatis执行流程
来源:互联网 发布:张曼玉演技 知乎 编辑:程序博客网 时间:2024/06/05 19:47
Springmvc的执行流程
1.页面发送请求到前端控制器在web.xml中配置的servlet(DispatcherServlet);
2.由springmvc.xml中配置的映射器去寻找handler(按照注解的路径寻找)并将结果返回给前端控制器
3.前端控制器在调用适配器执行handeler , 并将处理的结果和逻辑路径返回给前端控制器
4.前端控制器将数据发送到视图解析器进行渲染 , 视图解析器将渲染后的视图发送回前端控制器 , 前台控制器将结果展示到页面
配置:
其中springmvc中<mvc:annotation-driven/>的标签 ;1映射器,寻找handler(处理着); 2适配器,执行handler
视图解析器:InternalResourceViewResolver内部资源视图解析器,将逻辑的访问路径转为服务器的实际访问路径
mybatis
<!-- 配置mybatis接口开发模式 -->使用JDK基于接口的动态代理的模式
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<!-- 配置扫描的包 -->
<property name="basePackage" value="cn.itcast.dao"></property>
<!-- 将sqlSessionFactory加入 -->
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property>
</bean>
然后在service的实现类中使用@Service , 在属性上@Resource将mapper接口注入
SSM的全流程
ItemsController中
@RequestMapping("findAllItems")
//1.请求通过前端控制器dispatcherServlet调用映射器寻找handler,映射器通过这个路径寻找
public String findAllItems(Model model){
//2.将servcie注入调用service中的findAllItems方法
List<Items> itemsList = ItemsService.findAllItems();
//把集合放入到model中进行回显
model.addAttribute(itemsList);
return "itemsList";
}
ItemsServiceImpl中
public List<Items> findAllItems(){
//3.service中注入Mapper的接口调用其中查询所有订单的方法
List<Items> findAllItems = itemsMapper.findAllItems();
return findAllItems;
}
ItemsMapper中
/*
* 4.采用mybatis中接口开发 的方式
* 需要在applicationContext中配置映射扫描器配置类(MapperScannerConfigurer)
* 并需要遵守约定
* 1.接口和其的配置文件必须在同一个包下
* 2.他们的名字相同
* 3.接口的配置文件的nameSpace需要和接口的全限定名相同;便于生成接口的代理
*/
List<Items> findAllItems();
ItemsMapper.xml中
<!-- 5.在接口的映射文件中执行映射查询数据库的方法 -->
<select id="findAllItems" resultMap="BaseResultMap">
select * from items
</select>
ItemsController中
@RequestMapping("findAllItems")
//1.请求通过前端控制器dispatcherServlet调用映射器寻找handler,映射器通过这个路径寻找
public String findAllItems(Model model){
//2.将servcie注入调用service中的findAllItems方法
List<Items> itemsList = ItemsService.findAllItems();
//把集合放入到model中进行回显
model.addAttribute(itemsList);
//6.返回逻辑视图到内部资源视图解析器中拼接真正的访问jsp路径
return "itemsList";
}
- Springmvc的执行流程和mybatis执行流程
- springMVC的执行流程
- SpringMvc的执行流程
- SpringMvc的执行流程
- SpringMVC执行的流程
- springMVC的执行流程
- springMVC的执行流程
- SpringMVC的执行流程
- springmvc的执行流程
- springmvc的执行流程
- SpringMVC的执行流程
- springmvc的执行流程
- springMVC的执行流程
- SpringMVC的执行流程
- springmvc的执行流程详解
- springmvc的执行流程详解
- springmvc的执行流程详解
- springmvc的执行流程详解
- CentOS 7 上systemctl 的用法
- python实现目录树
- codeforces-330-Pasha and Phone(容差定理)
- dota2中的伪随机
- 为开发者准备的9个实用PHP代码片段
- Springmvc的执行流程和mybatis执行流程
- Handler,Looper,Message,MessageQueue,Thread机制的深入理解(举例说明)
- Qt QTableWidget 和 QTableView
- AndroidStudio编译错误,Execution failed for task ':app:packageDebug'.
- 自定义控件(3)---LightingColorFilter光照颜色过滤器--Selector的效果
- Chipmunk僵尸物理对象的出现和解决(三)
- pscp详解
- adt-bundle android-studio sdk 下载地址
- 《Header First Servlet and JSP》名词解释