入门程序以及Controller配置

根据尚学堂 邹波老师的 springmvc课程 外加一些自己的扩展而成的笔记;
希望以后可以以这个笔记为基础,多多向外扩展知识。

1.mvc框架要做哪些事情:
a.将url映射到java类或者java类的方法
b.封装用户提交的数据
c.处理请求 调用相关业务处理 封装响应的数据
d.将响应的数据进行渲染 jsp html freemarker等

struts2 把b,c直接放在get set方法上就ok 通过以来注入 IOC;只要做好a,d就好了

2.springMVC 轻量级 基于请求响应的MVC框架(JSF不是请求响应的是事件驱动的)

3。为什么要学习springMVC
性能比struts2好,struts2开发效率高 但是每次请求都需要实例action
简单 便捷 配置少
和spring 无缝集成 ioc aop 事物
使用约定优于配置
能进行junit测试(不需要重启服务)
restful 风格 (restful url)
异常处理
本地化
国际化
数据验证
类型转换
拦截器

4.简单了解结构
请求发送到核心控制器(dispatcherServlet) 借助(HandlerMappinp HandlerAdaper适配器)把把url映射到处理类进行业务处理;返回的ModleAndView通过视图渲染(view)渲染成前台可视界面

5 hello springMVC案例

a.导入jar包
commons-logging-1.2.jar
spring-beans-4.1.6.RELEASE.jar
spring-context-4.1.6.RELEASE.jar
spring-context-support-4.1.6.RELEASE.jar
spring-core-4.1.6.RELEASE.jar
spring-expression-4.1.6.RELEASE.jar
spring-web-4.1.6.RELEASE.jar
spring-webmvc-4.1.6.RELEASE.jar

b.配置web.xml分发器
像配置servlet一样配置
Ctrl+Shift+T 搜索 DispatcherServlet 然后复制类全名

<load-on-startup>1</load-on-startup>

web.xml
c配置文件:
默认在WEB-INF下添加[Dispatcher Name]-servlet.xml
springmvc-servlet.xml
然后去文档里拷贝头文件
V. The Web 17.3.1

d编写代码
HelloController.java
controller.java
e.继续配置文件
1.导入命名空间 先添加 .xsd
XML Catatlog
先ADD 导入springjar包里的 spring-beans-4.1.xsd
然后在下面复制 http://www.springframework.org/schema/beans/spring-beans.xsd
2.配置handlerMapping
Ctrl+Shift+T 搜索 BeanNameUrlHandlerMapping 然后复制类全名
3.配置handlerAdapter
Ctrl+Shift+T 搜索 SimpleControllerHandlerAdapter 然后复制类全名
这里就是为了找HelloController.java
4.配置渲染器
然后去文档里拷贝头文件
V. The Web 17.5.2 jsp的渲染器
里面有前缀和后缀 是指着HelloController.java里的hello
5.配置请求和处理器

<bean name="/hello.do" class="com.javasky.HelloController"/>

spring.xml
6.测试
修改web工程名为 hello
localhost:8080/hello/hello.do

annotation
a.添加新包
spring-aop-4.1.6.RELEASE.jar

b.配置web.xml分发器
像配置servlet一样配置
多一个参数 可以自定义配置文件的位置名称

<init-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:mvc.xml</param-value>
</init-param>

web.xml
mvc.xml
扫描注解

<context:componet-scan base-package="com.javasky.controller"/>

mvc.xml
HelloController.java
@Controller
不用实现接口
其他一样
@RequestMapping(“/hello”)写在方法上 这样这个请求 直接反应到方法上 而不是整个类
controller.java

PS1:XML中

<bean name="/hello.do" class="com.javasky.HelloController"/>

配置成hello也会成功
如果配置HanderAdapter 下面只写 /hello就好 如果没配 就必须写/hello.do
适合小型系统

为URL分配Bean
实现接口
SimpleUrlHandlerMapping
property
里面的value值必须和下面的某一个bean一致 (可以匹配通配符)
分配

URL匹配Bean
ControllerClassNameHandlerMapping
凡是以hello开头的都能进去
匹配

springMVC 是 spring的一部分

全称 spring web mvc
ocp原则??? 对扩展开放,对修改关闭

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值