好好编程-物流项目10【用户管理-查询和添加】

/**

  • 角色 控制层

  • @author 波波烤鸭

  • dengpbs@163.com

*/

@Controller

@RequestMapping(“/user”)

public class UserController {

@Resource

private IUserService userService;

@RequestMapping(“/query”)

public String query(User user,Model model){

List list = userService.query(user);

model.addAttribute(“list”, list);

return “user/user”;

}

}

1.3 用户管理界面

修改left.jsp中的代码

在这里插入图片描述

在这里插入图片描述

因为jsp文件下文件越来越多,所以分下目录

在这里插入图片描述

RoleController跳转页调整下

在这里插入图片描述

1.4 展示数据

准备一条测试数据

在这里插入图片描述

因为logistics-manager-service的代码修改了所以需要install下,别忘了,如果提示报错就在来一次,如果还报错请检查。

在这里插入图片描述

启动访问

在这里插入图片描述

访问成功!

2.添加用户信息


在这里插入图片描述

2.1控制层添加跳转的方法

更新和修改我们放在一个jsp页面进行,添加和修改都需要分配角色。

service层

/**

  • 获取添加或者修改用户需要的数据

  • 添加

  • 获取所有的角色信息

  • 修改

  • 获取所有的角色信息及根据id查询的用户信息

  • @param id

  • @return

*/

public void getUpdateUserInfo(Integer id,Model model);

@Resource

private RoleMapper roleMapper;

@Override

public void getUpdateUserInfo(Integer id,Model model) {

RoleExample roleExample = new RoleExample();

List roles = roleMapper.selectByExample(roleExample );

model.addAttribute(“roles”, roles);

}

控制层

/**

  • 进入添加或者修改页面

  • @param id

  • @return

*/

@RequestMapping(“/userUpdate”)

public String userUpdatePage(Integer id,Model model){

// 查询添加或者更新需要的数据

userService.getUpdateUserInfo(id,model);

return “/user/userUpdate”;

}

2.2点击添加完成跳转

在这里插入图片描述

在这里插入图片描述

userUpdate.jsp使用form.html的代码

在这里插入图片描述

访问后样式失效:

在这里插入图片描述

在这里插入图片描述在这里插入图片描述

2.3修改添加页面

效果

在这里插入图片描述

代码

<%@ page language=“java” contentType=“text/html; charset=UTF-8”

pageEncoding=“UTF-8”%>

<%@ taglib uri=“http://java.sun.com/jsp/jstl/core” prefix=“c”%>

无标题文档

位置:

    • 首页
    • 用户管理
    • 基本信息

      • <input name=“userName” type=“text”

        class=“dfinput” />

        账号不能超过30个字符

      • <input name=“realName” type=“text”

        class=“dfinput” />

      • <input name=“password” type=“password”

        class=“dfinput” />

      • <input name=“confirmPassword”

        type=“password” class=“dfinput” />

      • <input name=“phone” type=“text”

        class=“dfinput” />

      • <input name=“email” type=“text”

        class=“dfinput” />

      • <c:forEach items=“${roles }” var=“role”>

        ${role.roleName }  

        </c:forEach>

      • <input name=“” type=“submit”

        class=“btn” value=“确认保存” />

        验证此处没有加,可自行加上~

        2.4提交数据

        因为表单提交的数据有分配的角色信息,单独一个User对象并不能接收所有的数据。所以我们需要创建一个Dto对象,来保存数据。

        在这里插入图片描述

        数据传输对象,即Data Transfer Object,简称DTO。

        一个为了减少方法调用次数而在进程间传输数据的对象

        表单域name值设置,及提交地址:

        • <input name=“user.userName” type=“text”

          class=“dfinput” />

          账号不能超过30个字符

        • <input name=“user.realName” type=“text”

          class=“dfinput” />

        • <input name=“user.password” type=“password”

          class=“dfinput” />

        • <input name=“confirmPassword”

          type=“password” class=“dfinput” />

        • <input name=“user.phone” type=“text”

          class=“dfinput” />

        • <input name=“user.email” type=“text”

          class=“dfinput” />

        • <c:forEach items=“${roles }” var=“role”>

          ${role.roleName }  

          </c:forEach>

        • <input name=“” type=“submit”

          class=“btn” value=“确认保存” />

          控制层接收数据:

          /**

          • 进入添加或者修改页面

          • @param id

          • @return

          • @throws Exception

          */

          @RequestMapping(“/saveOrUpdate”)

          public String saveOrUpdate(UserDto userDto) throws Exception{

          userService.saveOrUpdate(userDto);

          return “redirect:/user/query”;

          }

          service接口

          /**

          • 保存或修改用户数据

          • @param userDto

          */

          最后

          针对最近很多人都在面试,我这边也整理了相当多的面试专题资料,也有其他大厂的面经。希望可以帮助到大家。

          下面的面试题答案都整理成文档笔记。也还整理了一些面试资料&最新2021收集的一些大厂的面试真题(都整理成文档,小部分截图)

          在这里插入图片描述

          最新整理电子书

          在这里插入图片描述

          id

          • @return

          • @throws Exception

          */

          @RequestMapping(“/saveOrUpdate”)

          public String saveOrUpdate(UserDto userDto) throws Exception{

          userService.saveOrUpdate(userDto);

          return “redirect:/user/query”;

          }

          service接口

          /**

          • 保存或修改用户数据

          • @param userDto

          */

          最后

          针对最近很多人都在面试,我这边也整理了相当多的面试专题资料,也有其他大厂的面经。希望可以帮助到大家。

          下面的面试题答案都整理成文档笔记。也还整理了一些面试资料&最新2021收集的一些大厂的面试真题(都整理成文档,小部分截图)

          [外链图片转存中…(img-Ae5AvkRz-1714677119977)]

          最新整理电子书

          [外链图片转存中…(img-lhja0Y9o-1714677119978)]

          本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

        • 24
          点赞
        • 26
          收藏
          觉得还不错? 一键收藏
        • 0
          评论
        评论
        添加红包

        请填写红包祝福语或标题

        红包个数最小为10个

        红包金额最低5元

        当前余额3.43前往充值 >
        需支付:10.00
        成就一亿技术人!
        领取后你会自动成为博主和红包主的粉丝 规则
        hope_wisdom
        发出的红包
        实付
        使用余额支付
        点击重新获取
        扫码支付
        钱包余额 0

        抵扣说明:

        1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
        2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

        余额充值