SSM整合-其他问题

SSM整合-其他问题

@Slf4j

想要输出的类上使用@Slf4j注解,调用log对象的方法(例如info),使用{}作为占位符打印日志

1
2
3
4
5
6
7
@RestController
@ComponentScan("com.xiaobai.controller")
@RequestMapping("schedule")
@Slf4j
public class ScheduleController {
log.info("查询到的数据为:{}", r);
}

PageBean

尚硅谷提供了一个实体类PageBean,此实体类可以用于PageHelper插件查询之后,使用PageInfo获取到分页信息后,封装到此实体类中

我们在之前学习的微头条项目中,使用Vo对象来接收查询到的分页参数

1
2
3
4
5
6
7
8
9
@Data
@NoArgsConstructor
@AllArgsConstructor
public class PageBean<T> {
private int currentPage; // 当前页码
private int pageSize; // 每页显示的数据量
private long total; // 总数据条数
private List<T> data; // 当前页的数据集合
}

R(Result包装对象)

在JavaWeb中,我们也有这样的类,封装了响应业务码,还有枚举类型的响应状态信息

尚硅谷提供了一个包装对象,但这个简单得多,只有成功(200),和失败(500)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
package com.xiaobai.util;

public class R {

private int code = 200; //200成功状态码

private boolean flag = true; //返回状态

private Object data; //返回具体数据


public static R ok(Object data) {
R r = new R();
r.data = data;
return r;
}

public static R fail(Object data) {
R r = new R();
r.code = 500; //错误码
r.flag = false; //错误状态
r.data = data;
return r;
}


public int getCode() {
return code;
}

public void setCode(int code) {
this.code = code;
}

public boolean isFlag() {
return flag;
}

public void setFlag(boolean flag) {
this.flag = flag;
}

public Object getData() {
return data;
}

public void setData(Object data) {
this.data = data;
}
}

Service分页查询处理

1
2
3
4
5
6
7
8
9
10
11
12
public R page(int pageSize, int currentPage) {
// 调用分页插件
PageHelper.startPage(currentPage, pageSize);
// 查询
List<Schedule> schedules = scheduleMapper.queryList();
// 分页数据装配
PageInfo<Schedule> pageInfo = new PageInfo<>(schedules);
// 封装pageBean
PageBean<Schedule> schedulePageBean = new PageBean<>(currentPage,pageSize, pageInfo.getTotal(),pageInfo.getList());
// 封装R
return R.ok(schedulePageBean);
}

同源禁止策略的解决方案*

我们在JavaWeb中解决这个问题的方式,是建立一个Filter过滤器

@CrossOrigin

在ssm项目中,在Controller层类或方法上面使用@CrossOrigin注解,即可允许跨域访问



SSM整合-其他问题
http://blog.170827.xyz/2024/06/30/SSM整合-其他问题/
作者
XIAOBAI
发布于
2024年6月30日
许可协议