DataSource
mybatis与Spring整合
事务加载业务层上面

开启事务驱动

上面都是声明式开启事务
命名规范:




加lombok依赖 Book类加@Data

char类型对应的java类型时String类型

包装类实现了Serlizable接口


使用继承接口 (继承时继承接口,接口不是实现接口)




xml配置




修改(ID不能改以外)

根据ID删除

使用ResultMap进行映射

根据Id进行查询

全部查询

mapper搞定
写service(基于接口进行类的隔离)
需要事务(基于xml的生成式事务或者基于注解的编程式事务)


实现添加
业务层要经行数据的转换
map不访问boolean sql得到的永远的是收影响行数

基于声明式的注解事务


Spring与Web整合
交给Spring容器管理,床啊金一个监听器,当tomcat启动时创建,


基于beans要扫描service里面的注解

SpringMvc
spring不需要整合SpringMvc 后者是前者的一个子模块 无需整合
1.使用注解的处理器适配器,注解的处理器映射器,不需要再SpringMVC的配置文件进行配置
2.处理器类不需要实现任何接口或者继承某些类,处理请求的方法,就是一个处理器,包含这些方法的类 称为Controller类,处理请求的方法任意的,个数任意,方法名任意,返回值任意,参数是任意的
在springMvc的配置文件当中加入
加入命名空间mvc
MVC提供的注解
- @RequestMapping注解请求映射,给处理请求的方法绑定一个可以访问的url
- @RequestBody注解
- @ReponseBody注解
- ......
配置视图解析器(通过逻辑视图名去找物理视图,默认的跳转方式是转发)
SpringMvc依赖找(视图找包)

InternalResourceViewResolver
加style、script文件

没登陆不可以访问
weapp目录下是公共访问 要私有访问->web-inf,它内部的资源浏览器不可以直接通过重定向方式直接访问,但是可以通过转发的方式进行一个访问
数据展示需要有控制
cart.html特殊设置


服务器报错:

加一个日志输出

控制台中红色输出的是tomcat 黑色的是日志

项目的index.jsp可以访问 但是你web-inf下的index.js不能被浏览器直接访问到

加入登陆注册页面到项目中(可以直接访问)

使用绝对路径




![]()










讲课
处理器绑定url
value/path:绑定的url,默认值:方法名作为url
请求方式 -> 原先servlet的doget和doPost
只能处理POST请求

会报错405错误
既可以处理POST请求 又可以处理GET 请求

@RequestMapping提供扩展注解
- GetMapping 处理请求方式:GET
- @postMapping注解 处理post请求
- @deleteMapping 处理delte请求
- @PutMapping 处理put请求


method:设置处理器方法能处理的请求方式,默认值:处理任何请求方式
params:限制请求参数的条件



不仅可以加在方法上面(表示url) 可以加在方法上 -> ()
窄化请求

1.Controller类方法的返回值类型
-> 返回modelandview




ModelAndView:
往request域添加数据,设置逻辑视图名
经过视图解析器,找物理视图,转发的方式
String
逻辑视图名 -> 经过视图解析器 -> 找物理视图名 通过转发的方式


不返回 void




经过视图解析器到test1.do (访问test2.do)

所以不能经过视图解析器
-> forward:"资源路径" -> 不经过视图解析器,那么紫资源路径不是拼接的 资源会是完整的
return "forward:/test/test1.do"
字符串 逻辑视图名 -> 经过视图解析器 -> 找物理视图名 通过转发的方式
转发到指定资源(可以是jsp或者处理器)

重定向到指定资源(可以是jsp,处理器)“redirect :资源路径“







其他数据类型
只作为数据返回,配合ResponseBody
包括:
- java提供简单数据类型
- 自定义类类型
- 集合类型







88