public String updatePage(AdminVo adminVo, ModelMap map) { //查询条件 LambdaQueryWrapper<Admin> lambdaQueryWrapper = new LambdaQueryWrapper<Admin>(); lambdaQueryWrapper.eq(Admin::getAdminId, adminVo.getAdminId()); //用户信息 Admin admin = adminService.getOne(lambdaQueryWrapper); //所有角色信息 List<Role> roleList = roleService.list(); map.put("roleList", roleList); //用户的角色 List<Role> adminRoleList = roleService.getAllRoleList(admin.getAdminId()); //组装 AdminVo vo = new AdminVo(); //组装用户信息 BeanUtils.copyProperties(admin, vo); //组装用户所属角色 adminRoleList.stream().forEach(role -> { vo.setRoleId(role.getRoleId()); }); map.put("admin", vo); return "/admin/update"; }
时间: 2023-06-13 09:07:31 浏览: 75
这段代码是一个 Java 方法,用于更新管理员的页面。方法中首先根据传入的 AdminVo 对象中的管理员 ID 查询出管理员的信息,然后查询出所有的角色信息,再查询出该管理员所属的角色信息。最后将这些信息组装成一个新的 AdminVo 对象,并将角色信息和管理员信息分别放入 ModelMap 中,最终返回更新管理员的页面的路径 "/admin/update"。在组装用户所属角色的代码中使用了 Java 8 的 Stream API 来遍历角色列表并设置当前角色的 ID。
相关问题
<script> let app = new Vue({ el:"#app", data:{ //默认页码第一页 num:1, pageInfo:{}, name:"" }, methods:{ queryList(pageNum){ let param = new URLSearchParams(); param.append("pageNum",pageNum); axios.post("/day0530/company/list",param) .then(response=>{ let resp = response.data; this.name = resp.data.name; this.pageInfo = resp.data.pageInfo; //跳转到第几页的页码 this.num = resp.data.pageInfo.pageNum; }) }, add(){ location.href = "/day0530/company/add.jsp" }, remove(id){ axios.get("/day0530/company/remove?id="+id) .then(response=>{ let resp = response.data; if (resp.code===200){ alert("删除成功"); this.queryList(1); }else { alert(resp.msg); } }) }, updatePage(id){ axios.get("/day0530/company/updatePage?id="+id) .then(response=>{ let resp = response.data; if (resp.code===30001){ alert(resp.msg); }else { location.href = "/day0530/company/updatePage?id="+id; } }) }, search(name){ axios.get("/day0530/company/search?name="+name) .then(response=>{ let resp = response.data; if (resp.code===30002){ alert(resp.msg); }else { location.href = "/day0530/company/search?name="+name; } }) } }, created(){ this.queryList(1); } }) </script>
这段代码定义了一个Vue实例,将其挂载到`id`为`app`的元素上。该实例中包含了一些数据属性,如`num`、`pageInfo`和`name`,以及一些方法,如`queryList()`、`add()`、`remove()`、`updatePage()`和`search()`。其中,`queryList()`方法是用来查询分页数据的,`add()`方法是用来跳转到新增页面的,`remove()`方法是用来删除数据的,`updatePage()`方法是用来跳转到修改页面的,`search()`方法是用来根据关键字搜索数据的。
在Vue实例的`created()`生命周期函数中,调用了`queryList()`方法,查询了第一页的数据,并将查询结果赋值给了Vue实例的`num`、`pageInfo`和`name`属性。此后,当用户进行分页、删除、修改或搜索操作时,分别会触发对应的方法,来更新Vue实例中的数据属性,或者跳转到其他页面。
总体来说,这段代码实现了一个简单的分页查询功能,并提供了一些常见的操作,如新增、删除、修改和搜索。
axios.get("/day0530/company/updatePage?id="+id)和location.href = "/day0530/company/updatePage?id="+id;的区别
这两段代码的作用和使用场景不同。
第一段代码 `axios.get("/day0530/company/updatePage?id="+id)` 是使用 axios 库发送 HTTP GET 请求的代码。它的作用是向指定的 URL 发送一个 GET 请求,并且在 URL 中传递一个参数 id。通常情况下,这个请求会返回一些数据,可以在前端页面上进行展示或者处理。
第二段代码 `location.href = "/day0530/company/updatePage?id="+id` 是 JavaScript 中的代码,它的作用是让浏览器跳转到指定的 URL,即打开一个新页面或在当前页面加载一个新的 URL。在这个 URL 中也传递了一个参数 id。通常情况下,这个请求会返回一个新的页面,浏览器会根据这个页面的内容重新渲染显示。
这两段代码的区别在于它们的作用和使用方式不同。第一段代码是向服务器发送请求,获取数据的逻辑,可以在前端页面上进行展示或处理;而第二段代码是页面跳转的逻辑,它会重新加载一个新的页面来显示数据。通常情况下,第二段代码会触发浏览器的刷新和加载行为,而第一段代码只是在后台向服务器发送了一个请求,并没有改变页面的展示。
阅读全文