献县网站建设公司,用flash做网站教程,net做公司网站,网站标识描述可以填关键词吗目录
1. 什么是springmvc
2.项目中加入springmvc支持
2.1 导入依赖
2.2 springMVC配置文件
2.3 web.xml配置
2.4 中文编码处理
3. 编写一个简单的controller
4. 视图层配置
4.1 视图解析器配
4.2 静态资源配置
4.2 编写页面
4.3 页面跳转方式
5. SpringMVC处理请求…目录
1. 什么是springmvc
2.项目中加入springmvc支持
2.1 导入依赖
2.2 springMVC配置文件
2.3 web.xml配置
2.4 中文编码处理
3. 编写一个简单的controller
4. 视图层配置
4.1 视图解析器配
4.2 静态资源配置
4.2 编写页面
4.3 页面跳转方式
5. SpringMVC处理请求的流程
6. 常用注解 1. 什么是springmvc
Spring Web MVC是一种基于Java的实现了MVC设计模式的、请求驱动类型的、轻量级Web框架。
ssm即springmvc spring mybatis 2.项目中加入springmvc支持
2.1 导入依赖
dependencygroupIdorg.springframework/groupIdartifactIdspring-webmvc/artifactIdversion${spring.version}/version
/dependency!-- JSTL依赖 原因org.springframework.web.servlet.view.JstlView在视图解析时需要这二个jar包--
dependencygroupIdjstl/groupIdartifactIdjstl/artifactIdversion1.2/version
/dependency
dependencygroupIdtaglibs/groupIdartifactIdstandard/artifactIdversion1.1.2/version
/dependency 2.2 springMVC配置文件
将课件中的spring-mvc.xml放入WEB-INF目录下详细信息见配置文件中的注释。 注关于注解扫描的优化 在使用springspringmvc时会存在两个上下文一个父上下文spring上下文一个子上下文springmvc上下文springmvc上下文可以访问父上下文即spring上下文但spring上下文不能访问到子上下文即springmvc上下文。 优化思路spring中配置的注解扫描排除掉controller而springmvc配置文件中的注解扫描则只需要扫描controller即可。具体配置详见课件中的配置文件。 2.3 web.xml配置
将随课件提供的web.xml放入WEB-INF目录替换原来的配置文件。需要理解配置文件的各个部分的作用。
2.4 中文编码处理
将随课件提供的EncodingFiter.java将入项目并在web.xml中配置以便于处理中文编码。
3. 编写一个简单的controller 注 示例中用到的注解 Controller该注解在springmvc中用于标记一个控制器类似的注解还有RestController不同的是RestController专门用于标记一个rest风格的接口相当于ResponseBody Controller合在一起的作用。RequestMapping该用于标记请求路径在有些参考资料中也称之为服务端点。该注释可以用在方法上也可以用在类上。 使用浏览器测试如果服务后台输出了提示字符串则说明配置成功现在页面上会显示错误因为目前还没有配置页面。
4. 视图层配置
4.1 视图解析器配 注 如果是前后端分离的开发方式则不需要配置。
4.2 静态资源配置 注 如果加该配置则不能正常显示图片 可以注释掉测试看看。 4.2 编写页面
1编写一个测试页面 2修改controller的配置 4.3 页面跳转方式
1转发 forward:path 2重定向 redirect:path 注 因为页面文件放置在了WEB-INF目录下所以不能直接重定向到页面。注意看示例。
5. SpringMVC处理请求的流程
主要组件 1 首先用户发送请求--DispatherServlet 2 DispatcherServlet--HandlerMapping 3 DispatcherServlet--HandlerAdapter 4 HandlerAdapter--处理器功能处理方法的调用 5 ModelAndView的逻辑视图名--ViewRecolver 6 View--渲染 7 返回控制权给DispatcherServlet由DispatcherServlet返回呼应给用户流程结束
处理流程示意图 Spring工作流程描述 1. 用户向服务器发送请求请求被Spring 前端控制Servelt DispatcherServlet捕获 2. DispatcherServlet对请求URL进行解析得到请求资源标识符URI。然后根据该URI调用HandlerMapping获得该Handler配置的所有相关的对象包括Handler对象以及Handler对象对应的拦截器最后以HandlerExecutionChain对象的形式返回 3. DispatcherServlet 根据获得的Handler选择一个合适的HandlerAdapter。附注如果成功获得HandlerAdapter后此时将开始执行拦截器的preHandler(...)方法 4. 提取Request中的模型数据填充Handler入参开始执行HandlerController)。 在填充Handler的入参过程中根据你的配置Spring将帮你做一些额外的工作 HttpMessageConveter 将请求消息如Json、xml等数据转换成一个对象将对象转换为指定的响应信息 数据转换对请求消息进行数据转换。如String转换成Integer、Double等 数据根式化对请求消息进行数据格式化。 如将字符串转换成格式化数字或格式化日期等 数据验证 验证数据的有效性长度、格式等验证结果存储到BindingResult或Error中 5. Handler执行完成后向DispatcherServlet 返回一个ModelAndView对象 6. 根据返回的ModelAndView选择一个适合的ViewResolver必须是已经注册到Spring容器中的ViewResolver)返回给DispatcherServlet 7. ViewResolver 结合Model和View来渲染视图 8. 将渲染结果返回给客户端。
6. 常用注解
Controller用于标识处理器类RestController注解相当于ResponseBody Controller合在一起的作用RequestMapping请求到处理器功能方法的映射规则可定义到类和方法常用参数value、methodRequestParam请求参数到处理器功能处理方法的方法参数上的绑定常用参数value、required、defaultValue required设置成false的参数类型必须是引用类型因为基本数据类型是不能为null的ModelAttribute请求参数到命令对象的绑定。 可用ModelAttribute标注方法参数方法参数会被添加到Model对象中(作用向视图层传数据) 可用ModelAttribute标注一个非请求处理方法此方法会在每次调用请求处理方法前被调用(作用数据初始化) 可用ModelAttribute标注方法方法返回值会被添加到Model对象中(作用向视图层传数据)RequestBody用于目前比较流行的ajax开发的数据绑定(即提交数据的类型为json格式)