栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

springBoot整合项目-02

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

springBoot整合项目-02

springBoot整合项目-02
  1. 这里的res.data是响应的resp数据,我们返回的是R所以就是R 我们要回去R中的data属性 所以是res。data。data

    //钩子函数,VUE对象初始化完成后自动执行
    created() {
        
        this.getAll();
    ​
    },
    ​
    methods: {
        //列表
        getAll() {
            axios.get("/books").then((res)=>{
               
                this.dataList = res.data.data;
            })
注意!
  1. 删除的时候 带着id 删除 是+row。id

    this.$confirm("你确定要继续删除吗?","提示",{type:'info'}).then(()=>{
         
        axios.delete("/books/"+row.id).then((res)=>{
             if (res.data.flag){
                 this.$message.success("删除成功");
             }else{
                 this.$message.success("删除失败");
             }
  2. 添加的时候添加的一个对象 是。this。formate

    axios.post("/books",this.formData).then((res)=>{
          
        if (res.data.flag){
            this.dialogFormVisible = false;
            this.$message.success("添加成功");
        }else{
            this.$message.error("添加失败");
        }
修改功能
  1. 修改功能 可以看成是 查询功能再加 修改功能 (修改功能跟增加功能除了put post 类型不一样其他的差不多)

    • 首先 我们需要通过id来查询到我们需要修改的那个对象, 弹出对话框

      //弹出编辑窗口
      handleUpdate(row) {
          axios.get("/books/"+row.id).then((res)=>{
                console.log(res.data.data)
                 if (res.data.flag && res.data.data!=null){
                     this.dialogFormVisible4Edit = true;
                     this.formData = res.data.data;
                 }else{
                     this.$message.error("数据同步失败,自动刷新");
                 }
            }).finally(()=>{
                this.getAll();
            });
      ​
      },
    • 第二 我们才能根据这个对话框 对他进行修改()

      //修改
      handleEdit() {
          axios.put("/books", this.formData).then((res) => {
              if (res.data.flag) {
                  this.dialogFormVisible4Edit = false;
                  this.$message.success("更新成功");
              } else {
                  this.$message.success("更新失败");
              }
          }).finally(() => {
              this.getAll();
          })
      },
分页功能
  1. 分页功能页数启动服务器之后,系统将分页的页数,和数据,呈现出现, 我们直接子啊上面的getAll里面改 在url里面传入页数和数量的值就行

    //列表
    getAll() {
        
        axios.get("/books/"+this.pagination.currentPage+"/"+this.pagination.pageSize).then((res) => {
              console.log(res.data)
                
            //打印一下数据
            //当前页
            
            this.pagination.currentPage = res.data.data.current;
            this.pagination.pageSize = res.data.data.size;
            this.pagination.total = res.data.data.total;
             this.dataList = res.data.data.records;
        })
    ​
    },
  2. 换页数的功能呢

    //切换页码
    handleCurrentChange(currentPage) {
            
        this.pagination.currentPage = currentPage;
        this.getAll();
    },
  3. 注意有一个肖bug,如果你的最后一个数据是最后一页的第一个数据, 你把他删了 你会出现你总共只有2页,但是你在第三页的bug

    所以我们要在分页功能前面进行判断,如果 当前页数》总页数,我们将当前页数变成总页数在经行一个查询操作

    @GetMapping("{curentPage}/{size}")
    public R pages(@PathVariable int curentPage,@PathVariable int size){
        IPage page = bookService.curentPage(curentPage, size);
        //如果当前页数》总的页数, 将当前页数变成总页数 在查询一次
        if (curentPage>page.getPages()){
            curentPage = (int)page.getPages();
                page = bookService.curentPage(curentPage, size);
        }
        return new R(true,page);
    }
搜索功能
  1. 搜索功能其实跟分页功能是同一个功能, 我们在分页的时候是select(page,null)表示没有条件的查询然后分页, 而搜索功能就是又条件的分页, 所以直接在分页功能上面修改就可以, 程序一启动,这个时候没有搜索条件所以默认未null, 查询了全部

    • 先在html文件中的表单出 写上v-model=???

    • 第一步: 我们搜索功能它的url是http://localhost/pages/books/1/20?type=??&name=??&description=??

      于是我们需要进行拼接 ?type=??&name=??&description=?? ,拼接完之后,在下面的get方法中加入我们的拼接内容

      getAll() {
          
          
          
          param = "?type="+this.pagination.type;
          param += "&name="+this.pagination.name;
          param += "&description="+this.pagination.description;
      ​
             console.log(param)
          
          axios.get("/books/"+this.pagination.currentPage+"/"+this.pagination.pageSize+"/"+param).then((res) => {
                console.log(res.data)
    • 第二步在controller类中修改分页功能

      //查询功能
       @GetMapping("{curentPage}/{size}")
      public R page(@PathVariable int curentPage,@PathVariable int size,Book book){
          IPage page = bookService.curentPage(curentPage, size,book);
          //如果当前页数》总的页数, 将当前页数变成总页数 在查询一次
          if (curentPage>page.getPages()){
              curentPage = (int)page.getPages();
              page = bookService.curentPage(curentPage, size,book);
          }
          return new R(true,page);
      }
    • 我们通过一本书来搜索的, 这里采用springmvc的自动封装

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/695405.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号