how2j.cn

下载区
文件名 文件大小
请先登录 1m
增值内容 1m
1m
步骤 1 : 先运行,看到效果,再学习   
步骤 2 : 模仿和排错   
步骤 3 : 准备数据SQL   
步骤 4 : 页面截图   
步骤 5 : OrderItem   
步骤 6 : Order.java   
步骤 7 : OrderItemDAO   
步骤 8 : OrderDAO   
步骤 9 : OrderItemService   
步骤 10 : OrderService   
步骤 11 : Result   
步骤 12 : OrderController.java   
步骤 13 : listOrder.html   
步骤 14 : 查询功能讲解   
步骤 15 : 发货功能讲解   
步骤 16 : 增加,修改,删除功能   

步骤 1 :

先运行,看到效果,再学习

edit
增值内容,请先登录
完整的 Springboot 模仿天猫项目,使用 Springboot 、Vue.js、shiro、redis、elasticsearch 等一整套技术栈, 从无到有涵盖全部129个知识点,565个开发步骤, 充实 Springboot 项目经验,为简历加上一个有吸引力的砝码.
增值内容,点击购买
使用爬虫已经被系统记录,请勿使用爬虫,增大封号风险。 如果是误封 ,请联系站长,谢谢
增值内容,请先登录
完整的 Springboot 模仿天猫项目,使用 Springboot 、Vue.js、shiro、redis、elasticsearch 等一整套技术栈, 从无到有涵盖全部129个知识点,565个开发步骤, 充实 Springboot 项目经验,为简历加上一个有吸引力的砝码.
增值内容,点击购买
使用爬虫已经被系统记录,请勿使用爬虫,增大封号风险。 如果是误封 ,请联系站长,谢谢
增值内容,请先登录
完整的 Springboot 模仿天猫项目,使用 Springboot 、Vue.js、shiro、redis、elasticsearch 等一整套技术栈, 从无到有涵盖全部129个知识点,565个开发步骤, 充实 Springboot 项目经验,为简历加上一个有吸引力的砝码.
增值内容,点击购买
使用爬虫已经被系统记录,请勿使用爬虫,增大封号风险。 如果是误封 ,请联系站长,谢谢
增值内容,请先登录
完整的 Springboot 模仿天猫项目,使用 Springboot 、Vue.js、shiro、redis、elasticsearch 等一整套技术栈, 从无到有涵盖全部129个知识点,565个开发步骤, 充实 Springboot 项目经验,为简历加上一个有吸引力的砝码.
增值内容,点击购买
使用爬虫已经被系统记录,请勿使用爬虫,增大封号风险。 如果是误封 ,请联系站长,谢谢
页面截图
增值内容,请先登录
完整的 Springboot 模仿天猫项目,使用 Springboot 、Vue.js、shiro、redis、elasticsearch 等一整套技术栈, 从无到有涵盖全部129个知识点,565个开发步骤, 充实 Springboot 项目经验,为简历加上一个有吸引力的砝码.
增值内容,点击购买
使用爬虫已经被系统记录,请勿使用爬虫,增大封号风险。 如果是误封 ,请联系站长,谢谢
OrderItem
package com.how2java.tmall.pojo; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; import javax.persistence.Table; import com.fasterxml.jackson.annotation.JsonBackReference; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; @Entity @Table(name = "orderItem") @JsonIgnoreProperties({ "handler","hibernateLazyInitializer" }) public class OrderItem { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "id") private int id; @ManyToOne @JoinColumn(name="pid") private Product product; @ManyToOne @JoinColumn(name="oid") private Order order; @ManyToOne @JoinColumn(name="uid") private User user; private int number; public int getNumber() { return number; } public void setNumber(int number) { this.number = number; } public Product getProduct() { return product; } public void setProduct(Product product) { this.product = product; } public Order getOrder() { return order; } public void setOrder(Order order) { this.order = order; } public User getUser() { return user; } public void setUser(User user) { this.user = user; } public int getId() { return id; } public void setId(int id) { this.id = id; } }
增值内容,请先登录
完整的 Springboot 模仿天猫项目,使用 Springboot 、Vue.js、shiro、redis、elasticsearch 等一整套技术栈, 从无到有涵盖全部129个知识点,565个开发步骤, 充实 Springboot 项目经验,为简历加上一个有吸引力的砝码.
增值内容,点击购买
使用爬虫已经被系统记录,请勿使用爬虫,增大封号风险。 如果是误封 ,请联系站长,谢谢
Order.java
package com.how2java.tmall.pojo; import java.util.Date; import java.util.List; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; import javax.persistence.Table; import javax.persistence.Transient; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.how2java.tmall.service.OrderService; @Entity @Table(name = "order_") @JsonIgnoreProperties({ "handler","hibernateLazyInitializer" }) public class Order { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "id") private int id; @ManyToOne @JoinColumn(name="uid") private User user; private String orderCode; private String address; private String post; private String receiver; private String mobile; private String userMessage; private Date createDate; private Date payDate; private Date deliveryDate; private Date confirmDate; private String status; @Transient private List<OrderItem> orderItems; @Transient private float total; @Transient private int totalNumber; @Transient private String statusDesc; public void setStatusDesc(String statusDesc) { this.statusDesc = statusDesc; } public String getStatusDesc(){ if(null!=statusDesc) return statusDesc; String desc ="未知"; switch(status){ case OrderService.waitPay: desc="待付"; break; case OrderService.waitDelivery: desc="待发"; break; case OrderService.waitConfirm: desc="待收"; break; case OrderService.waitReview: desc="等评"; break; case OrderService.finish: desc="完成"; break; case OrderService.delete: desc="刪除"; break; default: desc="未知"; } statusDesc = desc; return statusDesc; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getAddress() { return address; } public void setAddress(String address) { this.address = address; } public String getPost() { return post; } public void setPost(String post) { this.post = post; } public String getMobile() { return mobile; } public void setMobile(String mobile) { this.mobile = mobile; } public String getUserMessage() { return userMessage; } public void setUserMessage(String userMessage) { this.userMessage = userMessage; } public Date getCreateDate() { return createDate; } public void setCreateDate(Date createDate) { this.createDate = createDate; } public Date getPayDate() { return payDate; } public void setPayDate(Date payDate) { this.payDate = payDate; } public Date getDeliveryDate() { return deliveryDate; } public void setDeliveryDate(Date deliveryDate) { this.deliveryDate = deliveryDate; } public Date getConfirmDate() { return confirmDate; } public void setConfirmDate(Date confirmDate) { this.confirmDate = confirmDate; } public String getReceiver() { return receiver; } public void setReceiver(String receiver) { this.receiver = receiver; } public String getOrderCode() { return orderCode; } public void setOrderCode(String orderCode) { this.orderCode = orderCode; } public User getUser() { return user; } public void setUser(User user) { this.user = user; } public List<OrderItem> getOrderItems() { return orderItems; } public void setOrderItems(List<OrderItem> orderItems) { this.orderItems = orderItems; } public float getTotal() { return total; } public void setTotal(float total) { this.total = total; } public String getStatus() { return status; } public void setStatus(String status) { this.status = status; } public int getTotalNumber() { return totalNumber; } public void setTotalNumber(int totalNumber) { this.totalNumber = totalNumber; } }
增值内容,请先登录
完整的 Springboot 模仿天猫项目,使用 Springboot 、Vue.js、shiro、redis、elasticsearch 等一整套技术栈, 从无到有涵盖全部129个知识点,565个开发步骤, 充实 Springboot 项目经验,为简历加上一个有吸引力的砝码.
增值内容,点击购买
使用爬虫已经被系统记录,请勿使用爬虫,增大封号风险。 如果是误封 ,请联系站长,谢谢
package com.how2java.tmall.dao; import java.util.List; import org.springframework.data.jpa.repository.JpaRepository; import com.how2java.tmall.pojo.Order; import com.how2java.tmall.pojo.OrderItem; import com.how2java.tmall.pojo.Product; import com.how2java.tmall.pojo.User; public interface OrderItemDAO extends JpaRepository<OrderItem,Integer>{ List<OrderItem> findByOrderOrderByIdDesc(Order order); }
package com.how2java.tmall.dao;
 
import java.util.List;

import org.springframework.data.jpa.repository.JpaRepository;

import com.how2java.tmall.pojo.Order;
import com.how2java.tmall.pojo.OrderItem;
import com.how2java.tmall.pojo.Product;
import com.how2java.tmall.pojo.User;

public interface OrderItemDAO extends JpaRepository<OrderItem,Integer>{
	List<OrderItem> findByOrderOrderByIdDesc(Order order);
}
增值内容,请先登录
完整的 Springboot 模仿天猫项目,使用 Springboot 、Vue.js、shiro、redis、elasticsearch 等一整套技术栈, 从无到有涵盖全部129个知识点,565个开发步骤, 充实 Springboot 项目经验,为简历加上一个有吸引力的砝码.
增值内容,点击购买
使用爬虫已经被系统记录,请勿使用爬虫,增大封号风险。 如果是误封 ,请联系站长,谢谢
package com.how2java.tmall.dao; import java.util.List; import org.springframework.data.jpa.repository.JpaRepository; import com.how2java.tmall.pojo.Order; import com.how2java.tmall.pojo.User; public interface OrderDAO extends JpaRepository<Order,Integer>{ }
package com.how2java.tmall.dao;
 
import java.util.List;

import org.springframework.data.jpa.repository.JpaRepository;

import com.how2java.tmall.pojo.Order;
import com.how2java.tmall.pojo.User;

public interface OrderDAO extends JpaRepository<Order,Integer>{
}
增值内容,请先登录
完整的 Springboot 模仿天猫项目,使用 Springboot 、Vue.js、shiro、redis、elasticsearch 等一整套技术栈, 从无到有涵盖全部129个知识点,565个开发步骤, 充实 Springboot 项目经验,为简历加上一个有吸引力的砝码.
增值内容,点击购买
使用爬虫已经被系统记录,请勿使用爬虫,增大封号风险。 如果是误封 ,请联系站长,谢谢
package com.how2java.tmall.service; import com.how2java.tmall.dao.OrderItemDAO; import com.how2java.tmall.pojo.Order; import com.how2java.tmall.pojo.OrderItem; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; @Service public class OrderItemService { @Autowired OrderItemDAO orderItemDAO; @Autowired ProductImageService productImageService; public void fill(List<Order> orders) { for (Order order : orders) fill(order); } public void fill(Order order) { List<OrderItem> orderItems = listByOrder(order); float total = 0; int totalNumber = 0; for (OrderItem oi :orderItems) { total+=oi.getNumber()*oi.getProduct().getPromotePrice(); totalNumber+=oi.getNumber(); productImageService.setFirstProdutImage(oi.getProduct()); } order.setTotal(total); order.setOrderItems(orderItems); order.setTotalNumber(totalNumber); } public List<OrderItem> listByOrder(Order order) { return orderItemDAO.findByOrderOrderByIdDesc(order); } }
增值内容,请先登录
完整的 Springboot 模仿天猫项目,使用 Springboot 、Vue.js、shiro、redis、elasticsearch 等一整套技术栈, 从无到有涵盖全部129个知识点,565个开发步骤, 充实 Springboot 项目经验,为简历加上一个有吸引力的砝码.
增值内容,点击购买
使用爬虫已经被系统记录,请勿使用爬虫,增大封号风险。 如果是误封 ,请联系站长,谢谢
package com.how2java.tmall.service; import com.how2java.tmall.dao.OrderDAO; import com.how2java.tmall.pojo.Order; import com.how2java.tmall.pojo.OrderItem; import com.how2java.tmall.util.Page4Navigator; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Page; import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Sort; import org.springframework.stereotype.Service; import java.util.List; @Service public class OrderService { public static final String waitPay = "waitPay"; public static final String waitDelivery = "waitDelivery"; public static final String waitConfirm = "waitConfirm"; public static final String waitReview = "waitReview"; public static final String finish = "finish"; public static final String delete = "delete"; @Autowired OrderDAO orderDAO; public Page4Navigator<Order> list(int start, int size, int navigatePages) { Sort sort = new Sort(Sort.Direction.DESC, "id"); Pageable pageable = new PageRequest(start, size,sort); Page pageFromJPA =orderDAO.findAll(pageable); return new Page4Navigator<>(pageFromJPA,navigatePages); } public void removeOrderFromOrderItem(List<Order> orders) { for (Order order : orders) { removeOrderFromOrderItem(order); } } private void removeOrderFromOrderItem(Order order) { List<OrderItem> orderItems= order.getOrderItems(); for (OrderItem orderItem : orderItems) { orderItem.setOrder(null); } } public Order get(int oid) { return orderDAO.findOne(oid); } public void update(Order bean) { orderDAO.save(bean); } }
增值内容,请先登录
完整的 Springboot 模仿天猫项目,使用 Springboot 、Vue.js、shiro、redis、elasticsearch 等一整套技术栈, 从无到有涵盖全部129个知识点,565个开发步骤, 充实 Springboot 项目经验,为简历加上一个有吸引力的砝码.
增值内容,点击购买
使用爬虫已经被系统记录,请勿使用爬虫,增大封号风险。 如果是误封 ,请联系站长,谢谢
package com.how2java.tmall.util; public class Result { public static int SUCCESS_CODE = 0; public static int FAIL_CODE = 1; int code; String message; Object data; private Result(int code, String message, Object data) { this.code = code; this.message = message; this.data = data; } public static Result success() { return new Result(SUCCESS_CODE,null,null); } public static Result success(Object data) { return new Result(SUCCESS_CODE,"",data); } public static Result fail(String message) { return new Result(FAIL_CODE,message,null); } public int getCode() { return code; } public void setCode(int code) { this.code = code; } public String getMessage() { return message; } public void setMessage(String message) { this.message = message; } public Object getData() { return data; } public void setData(Object data) { this.data = data; } }
步骤 12 :

OrderController.java

edit
增值内容,请先登录
完整的 Springboot 模仿天猫项目,使用 Springboot 、Vue.js、shiro、redis、elasticsearch 等一整套技术栈, 从无到有涵盖全部129个知识点,565个开发步骤, 充实 Springboot 项目经验,为简历加上一个有吸引力的砝码.
增值内容,点击购买
使用爬虫已经被系统记录,请勿使用爬虫,增大封号风险。 如果是误封 ,请联系站长,谢谢
package com.how2java.tmall.web; import com.how2java.tmall.pojo.Order; import com.how2java.tmall.service.OrderItemService; import com.how2java.tmall.service.OrderService; import com.how2java.tmall.util.Page4Navigator; import com.how2java.tmall.util.Result; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.io.IOException; import java.util.Date; @RestController public class OrderController { @Autowired OrderService orderService; @Autowired OrderItemService orderItemService; @GetMapping("/orders") public Page4Navigator<Order> list(@RequestParam(value = "start", defaultValue = "0") int start,@RequestParam(value = "size", defaultValue = "5") int size) throws Exception { start = start<0?0:start; Page4Navigator<Order> page =orderService.list(start, size, 5); orderItemService.fill(page.getContent()); orderService.removeOrderFromOrderItem(page.getContent()); return page; } @PutMapping("deliveryOrder/{oid}") public Object deliveryOrder(@PathVariable int oid) throws IOException { Order o = orderService.get(oid); o.setDeliveryDate(new Date()); o.setStatus(OrderService.waitConfirm); orderService.update(o); return Result.success(); } }
增值内容,请先登录
完整的 Springboot 模仿天猫项目,使用 Springboot 、Vue.js、shiro、redis、elasticsearch 等一整套技术栈, 从无到有涵盖全部129个知识点,565个开发步骤, 充实 Springboot 项目经验,为简历加上一个有吸引力的砝码.
增值内容,点击购买
使用爬虫已经被系统记录,请勿使用爬虫,增大封号风险。 如果是误封 ,请联系站长,谢谢
<!DOCTYPE html> <html xmlns:th="http://www.thymeleaf.org"> <head th:include="include/admin/adminHeader::html('订单管理')" ></head> <body> <div th:replace="include/admin/adminNavigator::html" ></div> <script> $(function(){ var data4Vue = { uri:'orders', beans: [], pagination:{} }; //ViewModel var vue = new Vue({ el: '#workingArea', data: data4Vue, mounted:function(){ //mounted 表示这个 Vue 对象加载成功了 this.list(0); }, methods: { list:function(start){ var url = this.uri+ "?start="+start; axios.get(url).then(function(response) { vue.pagination = response.data; vue.beans = response.data.content; }); }, showOrderItems: function(order){ var id = order.id; $("#orderItemsTR"+id).show(); }, jump: function(page){ jump(page,vue); //定义在adminHeader.html 中 }, jumpByNumber: function(start){ jumpByNumber(start,vue); }, deliveryOrder:function(order,e){ var url = "deliveryOrder/"+order.id; axios.put(url).then(function(response) { $(e.target).hide(); }); } } }); Vue.filter('formatDateFilter', function (value, formatString) { if(null==value) return ""; formatString = formatString || 'YYYY-MM-DD HH:mm:ss'; return moment(value).format(formatString); }); }); </script> <div id="workingArea" > <h1 class="label label-info" >订单管理</h1> <br> <br> <div class="listDataTableDiv"> <table class="table table-striped table-bordered table-hover table-condensed"> <thead> <tr class="success"> <th>状态</th> <th>金额</th> <th width="100px">商品数量</th> <th width="100px">买家名称</th> <th>创建时间</th> <th>支付时间</th> <th>发货时间</th> <th>确认收货时间</th> <th width="120px">操作</th> </tr> </thead> <tbody> <!-- 在业务上需要一个订单数据产生两行 tr, 此时就不能在 tr上进行 v-for, 而需要用 template 标签 --> <template v-for="bean in beans "> <tr > <td> {{bean.statusDesc}} </td> <td> {{bean.total}} </td> <td> {{bean.totalNumber}} </td> <td> {{bean.user.name}} </td> <td> {{bean.createDate | formatDateFilter}} </td> <td> {{bean.payDate | formatDateFilter}} </td> <td> {{bean.deliveryDate | formatDateFilter}} </td> <td> {{bean.confirmDate | formatDateFilter}} </td> <td> <button @click="showOrderItems(bean)" class="orderPageCheckOrderItems btn btn-primary btn-xs">查看详情</button> <button v-if="bean.status=='waitDelivery'" @click="deliveryOrder(bean,$event)" class="btn btn-primary btn-xs">发货</button> </td> </tr> <tr class="orderPageOrderItemTR" :id="'orderItemsTR'+bean.id"> <td colspan="10" align="center"> <div class="orderPageOrderItem"> <table width="800px" align="center" class="orderPageOrderItemTable"> <tr v-for="orderItem in bean.orderItems"> <td align="left"> <img width="40px" height="40px" :src="'img/productSingle/'+orderItem.product.firstProductImage.id+'.jpg'"> </td> <td> <a :href="'product?product.id='+orderItem.product.id"> <span>{{orderItem.product.name}}</span> </a> </td> <td align="right"> <span class="text-muted">{{orderItem.number}}个</span> </td> <td align="right"> <span class="text-muted">单价:¥{{orderItem.product.promotePrice}}</span> </td> </tr> </table> </div> </td> </tr> </template> </tbody> </table> </div> <div th:replace="include/admin/adminPage::html" ></div> </div> <div th:replace="include/admin/adminFooter::html" ></div> </body> </html>
步骤 14 :

查询功能讲解

edit
增值内容,请先登录
完整的 Springboot 模仿天猫项目,使用 Springboot 、Vue.js、shiro、redis、elasticsearch 等一整套技术栈, 从无到有涵盖全部129个知识点,565个开发步骤, 充实 Springboot 项目经验,为简历加上一个有吸引力的砝码.
增值内容,点击购买
使用爬虫已经被系统记录,请勿使用爬虫,增大封号风险。 如果是误封 ,请联系站长,谢谢
查询功能讲解
@GetMapping("/orders") public Page4Navigator<Order> list(@RequestParam(value = "start", defaultValue = "0") int start,@RequestParam(value = "size", defaultValue = "5") int size) throws Exception { start = start<0?0:start; Page4Navigator<Order> page =orderService.list(start, size, 5); orderItemService.fill(page.getContent()); orderService.removeOrderFromOrderItem(page.getContent()); return page; }
list:function(start){ var url = this.uri+ "?start="+start; axios.get(url).then(function(response) { vue.pagination = response.data; vue.beans = response.data.content; }); }, showOrderItems: function(order){ var id = order.id; $("#orderItemsTR"+id).show(); }, <template v-for="bean in beans "> 。。。 </template> <tr v-for="orderItem in bean.orderItems"> </tr> <button @click="showOrderItems(bean)" class="orderPageCheckOrderItems btn btn-primary btn-xs">查看详情</button>
步骤 15 :

发货功能讲解

edit
增值内容,请先登录
完整的 Springboot 模仿天猫项目,使用 Springboot 、Vue.js、shiro、redis、elasticsearch 等一整套技术栈, 从无到有涵盖全部129个知识点,565个开发步骤, 充实 Springboot 项目经验,为简历加上一个有吸引力的砝码.
增值内容,点击购买
使用爬虫已经被系统记录,请勿使用爬虫,增大封号风险。 如果是误封 ,请联系站长,谢谢
发货功能讲解
deliveryOrder:function(order,e){ var url = "deliveryOrder/"+order.id; axios.put(url).then(function(response) { $(e.target).hide(); }); } <button v-if="bean.status=='waitDelivery'" @click="deliveryOrder(bean,$event)" class="btn btn-primary btn-xs">发货</button>
                deliveryOrder:function(order,e){
                    var url =  "deliveryOrder/"+order.id;
                    axios.put(url).then(function(response) {
                        $(e.target).hide();
                    });
                }

<button v-if="bean.status=='waitDelivery'" @click="deliveryOrder(bean,$event)" class="btn btn-primary btn-xs">发货</button>
@PutMapping("deliveryOrder/{oid}") public Object deliveryOrder(@PathVariable int oid) throws IOException { Order o = orderService.get(oid); o.setDeliveryDate(new Date()); o.setStatus(OrderService.waitConfirm); orderService.update(o); return Result.success(); }

    @PutMapping("deliveryOrder/{oid}")
    public Object deliveryOrder(@PathVariable int oid) throws IOException {
        Order o = orderService.get(oid);
        o.setDeliveryDate(new Date());
        o.setStatus(OrderService.waitConfirm);
        orderService.update(o);
        return Result.success();
    }
步骤 16 :

增加,修改,删除功能

edit
增值内容,请先登录
完整的 Springboot 模仿天猫项目,使用 Springboot 、Vue.js、shiro、redis、elasticsearch 等一整套技术栈, 从无到有涵盖全部129个知识点,565个开发步骤, 充实 Springboot 项目经验,为简历加上一个有吸引力的砝码.
增值内容,点击购买
使用爬虫已经被系统记录,请勿使用爬虫,增大封号风险。 如果是误封 ,请联系站长,谢谢


HOW2J公众号,关注后实时获知最新的教程和优惠活动,谢谢。


问答区域    
2022-03-15 订单管理页面的一个逻辑错误
尼刚么呢

订单管理 详解页面 的产品跳转链接为什么跳转不过去呢




1 个答案

how2j
答案时间:2022-04-01
不会吧,我加了超链的呀: <a :href="'product?product.id='+orderItem.product.id"> 试试第一步看看能否跳转呢



回答已经提交成功,正在审核。 请于 我的回答 处查看回答记录,谢谢
答案 或者 代码至少填写一项, 如果是自己有问题,请重新提问,否则站长有可能看不到




2021-12-22 前台订单管理没显示,测试了好几遍,用站长提供的代码也不行,尬住了
TuohaiSkr




订单显示不出来,后台检查没啥问题,实在是不知道咋回事儿。。
加载中

							

							


3 个答案

你这瓜保熟吗
答案时间:2022-05-24
是的,因为没有图片,我直接给注释了

风云137694
答案时间:2022-05-10
你的浏览器提示了,id找不到,你要去看去html里面哪个东西用到了id,然后去看后台代码里面返回的值里有没有

drlg7530
答案时间:2022-01-10
好像是因为需要展示产品小图片,但是product中firstProductImage中是null,我是在查询订单项的时候又设置了一遍



回答已经提交成功,正在审核。 请于 我的回答 处查看回答记录,谢谢
答案 或者 代码至少填写一项, 如果是自己有问题,请重新提问,否则站长有可能看不到





2021-11-18 查看详情优化,可以查看和隐藏
2021-10-04 orderService.removeOrderFromOrderItem(page.getContent());
2021-09-17 类型转换问题


提问太多,页面渲染太慢,为了加快渲染速度,本页最多只显示几条提问。还有 46 条以前的提问,请 点击查看

提问之前请登陆
提问已经提交成功,正在审核。 请于 我的提问 处查看提问记录,谢谢
关于 实践项目-天猫整站Springboot-订单管理 的提问

尽量提供截图代码异常信息,有助于分析和解决问题。 也可进本站QQ群交流: 578362961
提问尽量提供完整的代码,环境描述,越是有利于问题的重现,您的问题越能更快得到解答。
对教程中代码有疑问,请提供是哪个步骤,哪一行有疑问,这样便于快速定位问题,提高问题得到解答的速度
在已经存在的几千个提问里,有相当大的比例,是因为使用了和站长不同版本的开发环境导致的,比如 jdk, eclpise, idea, mysql,tomcat 等等软件的版本不一致。
请使用和站长一样的版本,可以节约自己大量的学习时间。 站长把教学中用的软件版本整理了,都统一放在了这里, 方便大家下载: https://how2j.cn/k/helloworld/helloworld-version/1718.html

上传截图