今天在页面请求后台的时候遇到了一个问题,请求不到后台

页面代码

<li>
                        <a href="javascript:void(0);" class="indicator statistics">
                            <span class="icon icon-statistics"></span>
                            统计中心
                            <span class="allow"></span>
                        </a>
                        <ul class="submenu">
                            <li><a href="${ctx }/views/material/BrandGrade_statistics_page">材价库统计</a></li>
                            <li><a href="${ctx }/views/material/BrandGrade_statistics_page">品牌库统计</a></li>
                            <li><a href="${ctx }/views/document/documentList/document_statistics_page">文档库统计</a></li>
                            <li><a href="${ctx }/views/material/BrandGrade_statistics_page">员工贡献榜</a></li>
                        </ul>
                    </li>

后台代码

/**
     * 文档库页面
     */
    @RequestMapping(value = "/document_statistics_page", produces = { WebConstant.WEB_CHARSET })
    public String document_statistics_page(@RequestParam("isprivatedoc") String isprivatedoc,
            HttpServletRequest request,HttpServletResponse response,Model model) throws Exception {
        List<Document> getSourceList = documentListService.getSource();
        List<Document> getCategoryList = documentListService.getCategory();//一级分类
        
        Map<String, List<Map<String, String>>> thirdcategoryList = Maps.newConcurrentMap();
        
        if (null != getCategoryList && !getCategoryList.isEmpty()) {
            List<Document> getSubCategoryList = documentListService.getSubCategory();//二级级分类
            
            for (Document category : getCategoryList) {
                List<Map<String, String>> nodeList = new ArrayList();
                String id = category.getId()+"";
                for (Document category2 : getSubCategoryList) {
                    if(category2.getCategoryid()!=null&&id.equals(category2.getCategoryid())){
                        Map<String, String> subMap = new HashMap<String,String>();
                        subMap.put("id", category2.getSubcategoryid());
                        subMap.put("category", category2.getCategoryName());
                        nodeList.add(subMap);
                    }
                }
                thirdcategoryList.put(id, nodeList);
            }
        }
        
        model.addAttribute("getCategoryList", getCategoryList);
        model.addAttribute("thirdcategoryList", thirdcategoryList);
        model.addAttribute("getSourceList", getSourceList);
        return "/statistics/document_statistics1";
    }

后来找到了是使用SpringMVC注解@RequestParam的问题:

使用SpringMVC注解@RequestParam(value="XXX",required=false)时需要注意的问题

@RequestParam(value = what required = true)
void test(int what){};
这个是传参 当他为false 时 使用这个注解可以不传这个参数 true时必须传
required默认值是true

原因是我在页面的 href没有带后台要到请求的参数。

@RequestParam(required = true),@RequestParam(required = true)的更多相关文章

  1. spring mvc 绑定参数据默认值,是否必传,(RequestParam(value="id",defaultValue="1",required=true) )

    @RequestMapping(value = "/detail", method = RequestMethod.GET) public String newDetail(@Re ...

  2. @RequestMapping映射请求,@PathVariable,@RequestParam,@RequestHeader的使用

    1.@RequestMapping Spring MVC 使用 @RequestMapping 注解为控制器指定可以处理哪些 URL 请求,在控制器的类定义及方法定义处都可标注. @RequestMa ...

  3. @PathVariable,@RequestParam, @RequestBody

    https://www.cnblogs.com/guoyinli/p/7056146.html https://www.cnblogs.com/zeroingToOne/p/8992746.html ...

  4. @RequestBody对象为空,异常Required request body is missing

    1.异常 org.springframework.http.converter.HttpMessageNotReadableException: Required request body is mi ...

  5. SpringMVC中通过@ResponseBody返回对象,Js中调用@ResponseBody返回值,统计剩余评论字数的js,@RequestParam默认值,@PathVariable的用法

    1.SpringMVC中通过@ResponseBody.@RequestParam默认值,@PathVariable的用法 package com.kuman.cartoon.controller.f ...

  6. SpringBoot实战(四)获取接口请求中的参数(@PathVariable,@RequestParam,@RequestBody)

    上一篇SpringBoot实战(二)Restful风格API接口中写了一个控制器,获取了前端请求的参数,现在我们就参数的获取与校验做一个介绍: 一:获取参数 SpringBoot提供的获取参数注解包括 ...

  7. @RequestBody对象为空,异常Required request body is missing错误解决

    1.异常 org.springframework.http.converter.HttpMessageNotReadableException: Required request body is mi ...

  8. 问题:两个对象值相同(x.equals(y) == true),但是可能存在hashCode不同吗?

    面试官的考察点 这道题仍然是考察JVM层面的基本知识,面试官认为,基本功扎实,才能写出健壮性和稳定性很高的代码. 涉及到的技术知识 (x.equals(y)==true),这段代码,看起来非常简单,但 ...

  9. [ jquery 过滤器 hasClass(class) ] 此方法用于在选择器的基础之上检查当前的元素是否含有某个特定的类,如果有,则返回true

    此方法用于在选择器的基础之上检查当前的元素是否含有某个特定的类,如果有,则返回true 实例: <!DOCTYPE html> <html lang='zh-cn'> < ...

随机推荐

  1. Typora+PicGo配置图床神器(图片链接URL)

    目录 1.下载Typora 2.下载PicGo 3.Typora 配置 1.下载Typora 有能力科学的小伙伴,可以从官网下载,地址为Typora 向下滚动,点击Downloda后,选择自己的操作系 ...

  2. 手动脱PeCompact 2.20壳实战

    作者:Fly2015 PeCompact壳又是一个没有听说过的壳,需要脱壳的程序是吾爱破解培训的第一课的选修作业四.最近对脱壳有点上瘾了,当然也遭受了脱壳受挫的无奈,但是比较幸运还是把这个壳给搞了. ...

  3. 路由器逆向分析------在QEMU MIPS虚拟机上运行MIPS程序(ssh方式)

    本文博客地址:http://blog.csdn.net/qq1084283172/article/details/69652258 在QEMU MIPS虚拟机上运行MIPS程序--SSH方式 有关在u ...

  4. Shodan的使用

    目录 Shodan Shodan工作原理 Shodan的使用 使用搜索过滤 Kali中安装 Shodan Kali中Shodan的使用 Shodan Shodan 是一个搜索引擎,但它与 Google ...

  5. 初探 Git Submodules

    之前一直想将一个 Git 仓库放到另一个 Git 仓库,有 Maven 多模块项目(Maven Multimodule Project)和 Gradle 多项目构建(Gradle Multiproje ...

  6. SpringBoot面向切面编程(AOP)

    Aspect (与SpringBoot整合) 总结 作用位置 try{ try{ @Around 前置环绕通知 @Before 前置通知 method.invoke(..); }catch(){ @A ...

  7. 修改composer配置(以修改cache-files-maxsize为例)修改composer拉取包出现"Content-Length mismatch"的问题

    1.composer config -l -g查看composer配置信息 2.修改配置:composer config --global cache-files-maxsize 1024MiB

  8. MySQL权限管理实战

    前言: 不清楚各位同学对数据库用户权限管理是否了解,作为一名 DBA ,用户权限管理是绕不开的一项工作内容.特别是生产库,数据库用户权限更应该规范管理.本篇文章将会介绍下 MySQL 用户权限管理相关 ...

  9. 前端实操案例丨如何实现JS向Vue传值

    摘要:项目开发过程中,组件通过render()函数渲染生成,并在组件内部定义了自定义拖拽指令.自定义拖拽指令规定了根据用户可以进行元素拖拽.缩放等一系列逻辑处理的动作. 本文分享自华为云社区<[ ...

  10. C++ primer plus读书笔记——第15章 友元、异常和其他

    第15章 友元.异常和其他 1. 友元类的所有方法都可以访问原有类的私有成员和保护成员.另外,也可以做更严格的限制,只将特定的成员函数指定为另一个类的友元.哪些函数.成员函数.或类为友元是由类定义的, ...