+-
第四阶段day04

@JsonIgnoreProperties(ignoreUnkmown=true)//表示JSON转化时忽略未知属性

JSON说明:

什么是JSON?

是一种轻量级的数据交换格式,让人们很容易的进行阅读和编写,方便计算机进行解析和生成,JSON本质是String

JSON三种格式:

1.Object格式:

{id:1,name:"jack"}

2.Array格式:

[1,2,3,"吃鸡","写代码"]

3.嵌套格式(value可以嵌套):

{"id":1,"name":"jack","like":["basketball","eat","fly"],"parent":[{"dad":"tom"},{"mom":"rose"}]}

JSON对象之间的转化:

json转对象:
    调用set方法
对象转json:
    调用get方法

分页查询的sql:

查询第一页:
    select * from xx_xxx limit 起始位置,查询条数
    select * from tb_item limit 0,20  下标index[0,19]
查询第二页:
    select * from tb_item limit 20,20 下标[20,39]
查询第三页:
    select * from tb_item limit 40,20 下标[40,59]
查询地N页:
    select * from tb_item limit (page-1)rows,20

分页的两种方式:

1.手写分页:
long total=itemMapper.selectCount(null);
int statrIndex=(page-1)*rows;
Liset<Item> itemList=itemMapper.findItemByPage(startIndex,rows);

2.利用MP方式实现分页:
IPage mpPage=new Page(page,rows);
QueryWrapper<Item> queryWrapper=new QueryWrapper<>();
queryWrapper.orderBydesc("updated");
mpPaeg=itemMapper.selectPage(mpPage,queryWrapper);
long total=mpPage.getTotal();//获取总记录数
List<Item> itemList=mpPage.getRecords();//获取查询当前页
return new EasyUITable(total,itemList);

用MP方式实现时必须要添加配置类:
@Configuration //bean标签使用
//将分页拦截器交给了Spring容器管理 MP是Mybatis的增强工具
@bean
public PageinationInterceptor paginationInterceptor(){
return new PaginationInterceptor();
}

Ajax嵌套问题

说明:由于页面中发起2次Ajax是一种嵌套关系。默认是异步请求,第一次发送的请求会先执行结束,会造成数据不显示的问题

解决方案:如果遇到Ajax嵌套问题则一般将内部的Ajax设置为同步状态即可,即设置为同步请求

js依赖问题

如果一个父级页面引入了js,他的子级页面就无须在引入js就可直接使用js