springclouddemo5.3服务提供者-user

**从b站学习springcloud项目,现在进行总结,该总结除去了视频中出现的小错误,对有些易错的地方进行了提醒

b站链接:https://www.bilibili.com/video/av55629580?p=1
资料链接:
https://pan.baidu.com/s/1o0Aju3IydKA15Vo1pP4z5w
提取码: 21ru

上一节链接:
https://blog.csdn.net/qq_40893824/article/details/103618769
下一节链接:
https://blog.csdn.net/qq_40893824/article/details/103628646

下面的内容总结:
client/UserHandler→user/entity新建MenuVO,复制至client/entity中→修改client/UserHandler中findAll代码→检查

现在去client调用user的功能的页面
实现细节:
管理用户:
1.因为要用页面展示用户信息,修改client/controller/UserHandler.java代码
故在UserHandler.java中将第10行的@RestController改为@Controller

2.删除update代码、findById代码

3.修改 deleteById代码 和 save代码:(一样的操作)
void换String,加 return “redirect:/user/redirect/user_manage”;
@DeleteMapping 换 @GetMapping

    /*删*/
    @GetMapping("/deleteById/{id}")
    public String deleteById(@PathVariable("id")long id){
    	user.setRegisterdate(new Date());//注册时间系统给出
        userFeign.deleteById(id);
        return "redirect:/user/redirect/user_manage";
    }

4.findAll那里加上@ResponseBody
user_manage.html中有th标签,所以在UserHandler加上redirect后台映射(和MenuHandler中的一样),代码如下:

    @GetMapping("/redirect/{location}")
    public String redirect(@PathVariable("location")String location){
        return location;
    }

5.因为findAll返回的List<>视图页面无法解析,所以去user/entity新建UserVO,加入代码:

package com.southwind.entity;

import lombok.Data;

import java.util.List;

@Data
public class UserVO {
    private int code;
    private String msg;
    private int count;
    private List<User> data;
}

6.把UserVO复制至client/entity中,然后将findAll代码改为:
List< User> 改为 UserVO,GetMapping的路径改为"/findAll",2个@PathVariable改为@RequestParam:

    /*查*/
    @GetMapping("/findAll")
    @ResponseBody
    public UserVO findAll(@RequestParam("page") int page , @RequestParam("limit") int limit){
        int  index = (page - 1)*limit;
        UserVO userVO = new UserVO();
        userVO.setCode(0);;
        userVO.setMsg("");
        userVO.setCount(userFeign.count());
        userVO.setData(userFeign.findAll(index, limit));
        return userVO;
    }

现在UserHandler的代码:

扫描二维码关注公众号,回复: 9730798 查看本文章
package com.southwind.controller;

import com.southwind.entity.User;
import com.southwind.entity.UserVO;
import com.southwind.feign.UserFeign;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;

import java.util.Date;


@Controller
@RequestMapping("/user")
public class UserHandler {

    @Autowired
    private UserFeign userFeign;

    /*增*/
    @PostMapping("/save")
    public String save(User user){
        user.setRegisterdate(new Date());//注册时间系统给出
        userFeign.save(user);
        return "redirect:/user/redirect/user_manage";
    }

    /*删*/
    @GetMapping("/deleteById/{id}")
    public String deleteById(@PathVariable("id")long id){
        userFeign.deleteById(id);
        return "redirect:/user/redirect/user_manage";
    }

    /*查*/
    @GetMapping("/findAll")
    @ResponseBody
    public UserVO findAll(@RequestParam("page") int page , @RequestParam("limit") int limit){
        int  index = (page - 1)*limit;
        UserVO userVO = new UserVO();
        userVO.setCode(0);;
        userVO.setMsg("");
        userVO.setCount(userFeign.count());
        userVO.setData(userFeign.findAll(index, limit));
        return userVO;
    }


    @GetMapping("/count")
    public int count(){
        return userFeign.count();
    }

    @GetMapping("/redirect/{location}")
    public String redirect(@PathVariable("location")String location){
        return location;
    }
}

检查
7. 进入 http://localhost:8030/user/redirect/user_manage
在这里插入图片描述
成功!

添加用户:
1.manage_add中有th标签,继续使用redirect后台映射
进入 http://localhost:8030/user/redirect/user_add
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
添加成功!

验证删除:点击删除后:
在这里插入图片描述
小明被成功删除!

上一节链接:
https://blog.csdn.net/qq_40893824/article/details/103618769
下一节链接:
https://blog.csdn.net/qq_40893824/article/details/103628646

发布了42 篇原创文章 · 获赞 2 · 访问量 1180

猜你喜欢

转载自blog.csdn.net/qq_40893824/article/details/103626809