整合ssm三大框架使用注解开发查询用户信息
整合ssm三大框架使用注解开发查询用户信息
一、基础知识准备之spring mvc工作原理

二、分析
第一步:发起请求到前端控制器(DispatcherServlet)
第二步:前端控制器请求HandlerMapping查找 Handler
可以根据xml配置、注解进行查找
第三步:处理器映射器HandlerMapping向前端控制器返回Handler
第四步:前端控制器调用处理器适配器去执行Handler
第五步:处理器适配器去执行Handler
第六步:Handler执行完成给适配器返回ModelAndView
第七步:处理器适配器向前端控制器返回ModelAndView
ModelAndView是springmvc框架的一个底层对象,包括 Model和view
第八步:前端控制器请求视图解析器去进行视图解析
根据逻辑视图名解析成真正的视图(jsp)
第九步:视图解析器向前端控制器返回View
第十步:前端控制器进行视图渲染
视图渲染将模型数据(在ModelAndView对象中)填充到request域
第十一步:前端控制器向用户响应结果
组件:
1、前端控制器DispatcherServlet(不需要程序员开发)
作用接收请求,响应结果,相当于转发器,中央处理器。
有了DispatcherServlet减少了其它组件之间的耦合度。
2、处理器映射器HandlerMapping(不需要程序员开发)
作用:根据请求的url查找Handler
3、处理器适配器HandlerAdapter
作用:按照特定规则(HandlerAdapter要求的规则)去执行Handler
4、处理器Handler(需要程序员开发)
注意:编写Handler时按照HandlerAdapter的要求去做,这样适配器才可以去正确执行Handler
5、视图解析器View resolver(不需要程序员开发)
作用:进行视图解析,根据逻辑视图名解析成真正的视图(view)
6、视图View(需要程序员开发jsp)
View是一个接口,实现类支持不同的View类型(jsp、freemarker、pdf...)
三、程序
1、需求
用户列表信息查询
2、环境准备
数据库环境:mysql-5.5.28-winx64

java环境:
jdk1.8
Intellij IDEA
springmvc版本:spring4.3.3
需要spring4.3.3所有jar(一定包括spring-webmvc-4.3.3.RELEASE.jar)
需要mybatis 的jar包,以及spring 和 mybatis 整合包
需要数据库连接池jar包druid-1.0.18.jar等其他数据格式处理包,如图
|
access-bridge-64.jar aopalliance-1.0.jar commons-logging-1.2.jar druid-1.0.18.jar jackson-annotations-2.5.0.jar jackson-core-2.5.0.jar jackson-databind-2.5.0.jar joda-time-2.1.jar mybatis-3.2.2.jar mybatis-spring-1.1.1.jar mysql-connector-java-5.1.20-bin.jar spring-aop-4.3.3.RELEASE.jar spring-aspects-4.3.3.RELEASE.jar spring-beans-4.3.3.RELEASE.jar spring-context-4.3.3.RELEASE.jar spring-context-support-4.3.3.RELEASE.jar spring-core-4.3.3.RELEASE.jar spring-expression-4.3.3.RELEASE.jar spring-instrument-4.3.3.RELEASE.jar spring-instrument-tomcat-4.3.3.RELEASE.jar spring-jdbc-4.3.3.RELEASE.jar spring-jms-4.3.3.RELEASE.jar spring-messaging-4.3.3.RELEASE.jar spring-orm-4.3.3.RELEASE.jar spring-oxm-4.3.3.RELEASE.jar spring-test-4.3.3.RELEASE.jar spring-tx-4.3.3.RELEASE.jar spring-web-4.3.3.RELEASE.jar spring-webmvc-4.3.3.RELEASE.jar spring-webmvc-portlet-4.3.3.RELEASE.jar spring-websocket-4.3.3.RELEASE.jar |
3、配置前端控制器
在web.xml中配置前端控制器。
|
<?xml version="1.0" encoding="UTF-8"?> |
4、主要配置文件
配置注解映射器和适配器
以及在spring容器中加载Handler(即为controller)
以及配置:
数据源
SqlSessionFactory
mapper扫描器
|
<?xml version="1.0" encoding="UTF-8"?>
|
5:业务代码
Controller(Handler)
|
package com.controller; import com.dao.StudentMapper; import java.util.List; /** } }
|
dao(接口)
|
package com.dao; import com.domain.Student; import java.util.List; /**
|
domain(实体类)
|
package com.domain; /** public String getId() { public void setId(String id) { public String getName() { public void setName(String name) {
|
mapper(映射文件)
|
<?xml version="1.0" encoding="UTF-8" ?>
|
查询结果

整合ssm三大框架使用注解开发查询用户信息的更多相关文章
- 学习SpringBoot整合SSM三大框架源码之SpringBoot
Spring Boot源码剖析 一.Spring Boot 项目的启动入口流程分析 Spring Boot项目的启动入口main线程上有一个@SpringBootApplication( @Confi ...
- 整合SSH三大框架用注解时报An AnnotationConfiguration instance is required to use
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 's ...
- MyBatis框架之注解开发
MyBatis注解开发 @Insert注解注解属性value:写入SQL语句 @Options注解实现添加新数据的主键封装注解属性useGeneratedKeys:使用生成的主键,配置为truekey ...
- SSM三大框架整合详细教程(Spring+SpringMVC+MyBatis)【转】
使用SSM(Spring.SpringMVC和Mybatis)已经有三个多月了,项目在技术上已经没有什么难点了,基于现有的技术就可以实现想要的功能,当然肯定有很多可以改进的地方.之前没有记录SSM整合 ...
- SSM三大框架整合详细教程(Spring+SpringMVC+MyBatis)(转)
使用 SSM ( Spring . SpringMVC 和 Mybatis )已经有三个多月了,项目在技术上已经没有什么难点了,基于现有的技术就可以实现想要的功能,当然肯定有很多可以改进的地方.之前没 ...
- SSM三大框架整合详细教程(Spring+SpringMVC+MyBatis)
使用 SSM ( Spring . SpringMVC 和 Mybatis )已经有三个多月了,项目在技术上已经没有什么难点了,基于现有的技术就可以实现想要的功能,当然肯定有很多可以改进的地方.之前没 ...
- SSM三大框架整合详细教程
使用SSM(Spring.SpringMVC和Mybatis)已经有三个多月了,项目在技术上已经没有什么难点了,基于现有的技术就可以实现想要的功能,当然肯定有很多可以改进的地方.之前没有记录SSM整合 ...
- SpringMVC详解(四)------SSM三大框架整合之登录功能实现
为了后面讲解的需要,我们取数据都会从数据库中获取,所以这里先讲讲三大框架(Spring.SpringMVC.MyBatis)的整合.前面讲解 MyBatis 时,写了一篇 MyBatis 和 Spri ...
- SSM三大框架整合详细教程(Spring+SpringMVC+MyBatis
原博主链接:( http://blog.csdn.net/zhshulin ) 使用 SSM ( Spring . SpringMVC 和 Mybatis )已经有三个多月了,项目在技术上已经没有什么 ...
随机推荐
- Java基础/阿里巴巴Java开发手册
阿里巴巴Java开发手册 序号 文档名及下载地址 1 阿里巴巴Java开发手册v1.2.0 2 <阿里巴巴Java开发手册>(终极版) 为什么阿里巴巴禁止工程师直接使用日志系统(Log4j ...
- C#建造者模式
/// <summary> /// 电脑类 /// </summary> public class Computer { //电脑组件集合 private IList<s ...
- vue项目 多文件上传并显示在页面上
<template> <label for="file" class=" btn btn-default" style="borde ...
- Vue 基础 day05 webpack 3.x
什么是webpack webpack 是前端的一个项目构建工具, 它是基于 Node.js 开发出来的一个前端工具 借助于webpack这个前端自动化构建工具, 可以完美实现资源的合并.打包.压缩.混 ...
- HDFS中NameNode发生故障没有备份从SecondNameNode恢复
1.Secondary NameNode目录结构 Secondary NameNode用来监控HDFS状态的辅助后台程序,每隔一段时间获取HDFS元数据的快照. 在/opt/module/hadoop ...
- Greg and Array CodeForces 296C 差分数组
Greg and Array CodeForces 296C 差分数组 题意 是说有n个数,m种操作,这m种操作就是让一段区间内的数增加或则减少,然后有k种控制,这k种控制是说让m种操作中的一段区域内 ...
- 新接口注册LED字符驱动设备
#include <linux/init.h> // __init __exit #include <linux/module.h> // module_init module ...
- CentOS 5.5编译安装lnmp
如果是安装Centos6.5记得Perl是必选的,否则无法安装VMWare Tools!!!!切记 如果出现make错误需要安装其他软件,装好后 make clean make install ...
- bootstrap复习
菜单 <div class="row">下拉菜单/分裂菜单</div> <div class="dropdown btn-group&quo ...
- 使用控制台搭建vue-cli脚手架
注意: 1.安装前您需要查看自己是否有node环境 检查:node - v 2.如果没有的话,需要先搭建好才能进行下一步操作 (参考:https://www.cnblogs.com/sylys/p/ ...