weixin_46072760 2021-11-28 17:25 采纳率: 84.3%
浏览 21
已结题

查询数据库的时候 明明查了几个字段出来了 但是不知道为什么总是报告这个错误,无法解决。我也找不到错误在哪里

问题遇到的现象和发生背景

查询数据库的时候 明明查了几个字段出来了 但是不知道为什么总是报告这个错误,无法解决。我也找不到错误在哪里

问题相关代码,请勿粘贴截图
package dao.impl;

import dao.CartDao;
import org.apache.commons.beanutils.BeanUtils;
import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.handlers.MapHandler;
import org.apache.commons.dbutils.handlers.MapListHandler;
import pojo.Book;
import pojo.Cart;
import utils.C3P0Utils;

import java.lang.reflect.InvocationTargetException;
import java.math.BigDecimal;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;

/**
 * @Author: 一一哥
 * @Blame: yyg
 * @Since: Created in 2020/8/27
 * @Description: $cursor$
 */
public class CartDaoImpl implements CartDao {

    @Override
    public Cart hasCart(Integer uid, String pid) throws SQLException {
        QueryRunner runner = new QueryRunner(C3P0Utils.getDataSource());

        String sql = "SELECT book.isbn,book.bookname,book.author,book.price,book.book_introduction AS bookintroduction,book.author_introduction as authorintroduction ,book.Inventory,book.warehouse_number as warehousenumber ,book.public_date as publicdate ,book.category,book.picture ,mycart.id,mycart.uid, mycart.pid, mycart.ctotal as total,mycart.ccount as count FROM book JOIN mycart on mycart.pid=book.isbn where mycart.uid = ? and mycart.pid = ?";

        Map<String, Object> resultMap = runner.query(sql, new MapHandler(), uid, pid);
        if (resultMap == null) {
            return null;
        }

        try {
            Cart cart = new Cart();
            //首先从结果集中,把购物车的信息,填充到Cart中!
            BeanUtils.populate(cart, resultMap);
            Book book = new Book();
            //从结果集中,把商品的信息,填充到Product中!
            BeanUtils.populate(book, resultMap);
            cart.setBook(book);
            return cart;
        } catch (IllegalAccessException | InvocationTargetException e) {
            e.printStackTrace();
            return null;
        }
    }

    @Override
    public void insertCart(Cart cart) throws SQLException {
        QueryRunner runner = new QueryRunner(C3P0Utils.getDataSource());
        String sql = "insert into mycart (uid, pid, ctotal, ccount) values(?, ?, ?, ?)";
        runner.update(sql, cart.getUid(), cart.getPid(), cart.getTotal(), cart.getCount());
    }

    @Override
    public void updateCart(Cart cart) {

    }


运行结果及报错内容

img

我的解答思路和尝试过的方法
我想要达到的结果
  • 写回答

1条回答 默认 最新

  • oldmao_2000 人工智能领域新星创作者 2021-11-28 18:52
    关注

    貌似不是这里报的错,看提示说的是获取购物车记录数量的cart.getcount()获取的是空值,检查一下

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月7日
  • 已采纳回答 11月29日
  • 创建了问题 11月28日

悬赏问题

  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计