首页,我们来看页面的效果,点击加号,就会出现这些数据。
我们来看前端代码,利用ListView将数据一行一行的展示,itemCount是列表的数量是多少,利用itemBuilder来进行循环,new一个UserIngoModel这个对象,进行遍历。
getHttp这个就是连接本地服务器的方法,
@override
Widget build(BuildContext context) {
return Scaffold(
body:Center(
child:ListView.separated(
itemCount: model != null && model!.data!= null ? model!.data!.length : 0,
itemBuilder: (BuildContext context, index) {
UserInfoModel data = model!.data![index];
return Row(
children: [
Text(data.userId ?? ""),
SizedBox(width: 5,),
Text(data.name ?? ""),
SizedBox(width: 5,),
Text(data.mail ?? ""),
SizedBox(width: 5,),
Text(data.password ?? ""),
SizedBox(width: 5,),
Text(data.member ?? ""),
],
);
},
separatorBuilder: (BuildContext context, index) {
return Divider();
},
),
),
floatingActionButton: FloatingActionButton(
onPressed: ()=>getHttp(),
child: Icon(Icons.add),
),
);
}
void getHttp() async{
try{
Response response = await Dio().get("http://192.168.225.116:8081/goshop/findUser");
//Response response = await Dio().post("http://192.168.1.215:8081/goshop/findUser", data: {});
if (response.data is Map) {
print(response.data);
}
model = UserListResponseModel.fromJson(response.data);
setState(() {
});
}catch(e){
print(e);
}
}
上面的是前端代码的编写,下面是idea中编写的后端代码
这个是Controller层,是写接口的,如下
@RestController
@RequestMapping("/findUser")
public class UserController {
@Autowired
private UserMapper userMapper;
@GetMapping
public HashMap findUser(Model model){
List<User> list = userMapper.findAll();
HashMap map = new HashMap();
map.put("code","200");
map.put("msg","响应成功");
map.put("data",list);
return map;
}
}
在userMapper中我们编写一个sql语句
@Mapper
public interface UserMapper {
@Select("select * from user_new")
List<User> findAll();
}
这样我们就直接查询到了user的全部信息。