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日

悬赏问题

  • ¥20 机器学习能否像多层线性模型一样处理嵌套数据
  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效