freemarker调用后台方法_后台系统的设计方案

本文介绍了一种使用Freemarker和Bootstrap构建的后台管理系统设计方案,重点在于实现列表页的分页功能和用户交互。通过SpringBoot的Service层处理翻页逻辑,Freemarker模板展示数据,并通过JavaScript实现页面间的跳转和操作反馈。此外,系统根据订单状态动态显示“取消”和“详情”按钮,优化了用户体验。
摘要由CSDN通过智能技术生成

a2731e9c52ad9873a1df9c5e302c1917.png

本文基于后台系统相关类和功能已经实现的前提下,设计后台系统页面原型。侧重点在于如何设计用户体验良好的管理系统。

实现方式:前端 FreeMarker+Bootstrap 后端:SpringBoot

列表页:

67615100501d3f82eb7cd7c7f77ad7a0.png

bc2f2237603b093cdb6d7d4a9e3cad52.png

列表页最下端分页的设计要求:

(1)显示出所有的页数

(2)提供翻页功能,最左侧为”上一页“,最右侧为”下一页“

(3) 当前页数为第几页,则该按钮功能失效(置灰)

(4)除本页外,其他页面按钮都可跳转到相应的页面

(5)当页面为第一页时,”上一页“按钮置灰;页面为最后一个时,”下一页“按钮置灰

以上为列表页的基本需求,理解之后开始开发。

Service层功能如下:由于需要翻页,传入Pageable对象

    @Override
    public Page<OrderDTO> findList(Pageable pageable) {
    
        Page<OrderMaster> orderMasterPage = orderMasterRepository.findAll(pageable);
        List<OrderDTO> orderDTOList = OrderMaster2OrderDTOConverter.convert(orderMasterPage.getContent());
        return new PageImpl<OrderDTO>(orderDTOList,pageable,orderMasterPage.getTotalElements());


    }

首先开发控制类:

    @Autowired
    private OrderService orderService;
    /*
    描述:查询订单列表
    两个参数:(1)page代表第几页,从1页开始
            (2)size代表一页中有多少数据

     */
    @GetMapping("/list")
    public ModelAndView list(@RequestParam(value = "page", defaultValue = "1") Integer page,
                             @RequestParam(value = "size", defaultValue = "3") Integer size,
                             Map<String, Object> map){
    
        PageRequest request =  new PageRequest(page-1, size);
        Page<OrderDTO> orderDTOPage = orderService.findList(request);


        map.put("orderDTOPage", orderDTOPage);
        map.put("currentPage", page);
        map.put("size", size);
        return  new ModelAndView("order/list", map);
    }

接着开发前端页面:页面文件建在resources/templates/order目录下的list.ftl文件。

首先上

ibootstrap - Bootstrap可视化布局系统​www.ibootstrap.cn
f78e6fac22c4b89f08a5588e54d1deff.png

由于系统前台布局元素较少,直接选择bootstrap生成模板。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值