java代码前端传了每页展示数,第几页,和数据类型,请问后端接如何写
时间: 2024-03-16 13:41:02 浏览: 25
可以在后端使用Spring MVC框架来接收前端传递过来的每页展示数、第几页和数据类型。以下是一个示例代码:
```
@RestController
@RequestMapping("/data")
public class DataController {
@Autowired
private DataService dataService;
@GetMapping("/list")
public PageInfo<?> getDataList(@RequestParam("pageNum") int pageNum,
@RequestParam("pageSize") int pageSize,
@RequestParam("dataType") String dataType) {
// 调用Service层的方法获取分页数据
return dataService.getDataList(pageNum, pageSize, dataType);
}
}
```
这里定义一个DataController类,使用@RestController注解标识为RESTful接口,使用@RequestMapping注解指定路由为“/data”。在getDataList方法中,使用@RequestParam注解接收前端传递过来的pageNum、pageSize和dataType参数,然后调用Service层的getDataList方法获取分页数据。最后将查询结果封装在PageInfo对象中返回给前端。
在Service层中,可以使用MyBatis的PageHelper插件来实现基础分页,以下是一个示例代码:
```
@Service
public class DataService {
@Autowired
private DataMapper dataMapper;
public PageInfo<?> getDataList(int pageNum, int pageSize, String dataType) {
PageHelper.startPage(pageNum, pageSize);
List<?> list = null;
if ("type1".equals(dataType)) {
list = dataMapper.getDataListType1();
} else if ("type2".equals(dataType)) {
list = dataMapper.getDataListType2();
} // 其他类型的查询操作
return new PageInfo<>(list);
}
}
```
在Service层中,注入DataMapper并在getDataList方法中使用PageHelper.startPage方法设置分页参数,根据dataType参数的不同调用不同的Mapper方法获取数据,最后将查询结果封装在PageInfo对象中返回给Controller层。