day0808
-
知识回顾
-
mybatis集成分页
-
分页怎么实现呢?mysql分页原理:一种实在mysql中实现,一种实在java中实现,物理分页和逻辑分页,
mysql方言的 分页sql 通过Limit
select id,username limit 0,2
从第0条开始,取两条
开始记录数 每页查询数据条数 -
开始记录数 = (pageNo-1)* pageSize
startRow
原生的分页实现
- dao层声明一个方法, List
pagelist(User user); - pojo中User继承了父类Page
- mapper文件的声明
- 单元测试
PageHelper插件实现(集成实现)
-
在ssm框架上集成PageHelper,配置拦截器
-
1、添加依赖
-
2、plugins 插件
分页拦截器
com.github.Pagehelper.PageInterceptor -
拦截器的方言,还有数据的合理性
-
helperDialect resonable
-
Cacher Ratio 命中率 缓存
-
如果mapper中缓存存在,第一次从数据库中查询,第二次从缓存中查询
-
PageHelper中的方法。。
-
startPage(pageNo,pageSize)
-
offsetPage((pageNo-1)*pageSize,pageSize);//offsetPage偏移量
oracle 怎么实现了分页?
- rownum
springboot
- 约定大于配置*************
搭建springboot
- 创建完maven项目,第一部打包成jar
添加parent - 添加依赖
- spring-boot-starter-web
snapshot 快照
是个版本,加上的会有点影响,项目会很多,项目和项目,模块和模块会有依赖关系,
-
启动类 @SpringbootApplication
-
application.properties
-
server.servlet.context-path = /app
配置上下文 -
server.port = 80
额外的配置
1、日期格式化
-
1、1 springboot内置的
spring:
jackson:
date-Format: yyyy-MM-dd HH:mm:ss
time-zone: GMT+8 -
1、2 fastjson
-
导包,在IOC容器中声明消息转换器
-
@Configuration
就是方法的返回值作为一个bean对象,放进入IOC容器 -
在IOC容器中声明了消息转换器,就是替换了默认的消息转换器
-
HttpMessageConverters messageConverters(){
FastJsonHttpMessageConverter fa
}
2、 异常处理
-
不需要处理的异常,只想修改界面展示
-
public/template/error/static等目录下对应的errorpage, 404.html/500.html
-
2、2 处理异常的情况,
- 写一个 @Exceptionhandler(value=Arith…class)
- String handlerException(Exception e){
}
- @ExceptionHandler
String handlerException(Exception e)
{
return e.getMessage();
}
-
http:localhost/user/list 404 tomcat的404
-
http:localhost/app/sdlf 404 springboot的404
-
两个404是不一样的,springboot的404,
全局异常处理器
-
单个的不好使,定义全局的异常处理器
-
返回的是视图,没有的话报404
3、跨域
- 跨域产生的根源:跨域的问题原因在浏览器端,
跨站脚本攻击
origin:baidu.cml
cors:sina.com
浏览器提出了同源策略,
浏览器限制访问了同源路径************
请求依旧被发出,服务器能够检测到;
浏览器正常请求了,但是没有一个头信息,header,那么就不行,如果带着信息就可以正常跨域了。
4、mybatis
-
1、添加依赖
-
2、mybatis-spring-boot-starter
-
mysql