web-control层简记

1、前端post的form data或 get的query string parameters 都可以用@RequestParam

如:

Request URL: http://forcebot.jd.com/api/users/items?query=aa&page=1&pageSize=10
query string parameters
query: aa
page: 1
pageSize: 10

Request URL: http://forcebot.jd.com/user/getAllUserList.shtml
Request Method: POST
form data
query: aa
page: 1
rows: 10

@RequestMapping(value = "/items", method = RequestMethod.GET, produces = "application/json;charset=UTF-8")
    @ResponseBody
    @ApiOperation("查询用户列表")
    public String getAllUserList(User user,
                                 @RequestParam(required = false) String query,
                                 @PageableDefault(page = 0, size = 10) Pageable pageable,
                                 @RequestParam(defaultValue = "1") Integer page,
                                 @RequestParam(defaultValue = "20") Integer pageSize) {
        Map<String, Object> resultMap = new HashMap<String, Object>();

        try {
            resultMap.put("page", page);
            resultMap.put("pageSize", pageSize);
            pageable = new PageRequest(page - 1, pageSize, new Sort(Sort.Direction.DESC, "updateTime"));
            Page<User> users = this.userService.getAllUsers(user, query, pageable);
            resultMap.put("content", users.getContent());
            resultMap.put("total", users.getTotalElements());
        } catch (Exception e) {
            return errorJson("服务繁忙");
        }
        return successJson("", resultMap);
}

2、@RequestParam与HttpServletRequest的区别

@RequestParam的参数必须传,可以不传值,但HttpServletRequest中的参数可以不传

如:Request URL: http://forcebot.jd.com/api/testcase/items?testCaseName=&createUserName=sunxuejian

public String getItems(HttpServletRequest request) {
        Map<String, Object> resultMap = new HashMap<>();
        int page = 1;
        int pageSize =10;
            String configName = request.getParameter("configName");
            String createUser = request.getParameter("createUser");
            String pageStr = request.getParameter("page");
            String pageSizeStr = request.getParameter("pageSize");
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Ajax框架介绍   虽然大部分开发人员在过去使用过XMLHttp或者使用Iframe来加载数据,但仅到现在我们才看到传统的开发人员和公司开始采用这些技术。就像新的编程语言或模型伴随着更多的痛苦,开发人员需要学习新的技巧及如何最好利用这些新技术。   AJAX模式   许多重要的技术和AJAX开发模式可以从现有的知识中获取。例如,在一个发送请求到服务端的应用中,必须包含请求顺序、优先级、超时响应、错误处理及回调,其中许多元素已经在Web服务中包含了,就像现在的SOA。AJAX开发人员拥有一个完整的系统架构知识。同时,随着技术的成熟还会有许多地方需要改进,特别是UI部分的易用性。   AJAX开发与传统的CS开发有很大的不同。这些不同引入了新的编程问题,最大的问题在于易用性。由于AJAX依赖浏览器的JavaScript和XML,浏览器的兼容性和支持的标准也变得和JavaScript的运行时性能一样重要了。这些问题中的大部分来源于浏览器、服务器和技术的组合,因此必须理解如何才能最好的使用这些技术。   综合各种变化的技术和强耦合的客户服务端环境,AJAX提出了一种新的开发方式。AJAX开发人员必须理解传统的MVC架构,这限制了应用次之间的边界。同时,开发人员还需要考虑CS环境的外部和使用AJAX技术来重定型MVC边界。最重要的是,AJAX开发人员必须禁止以页面集合的方式来考虑Web应用而需要将其认为是单个页面。一旦UI设计与服务架构之间的范围被严格区分开来后,开发人员就需要更新和变化的技术集合了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值