YH是月的痕 2022-02-22 16:12 采纳率: 100%
浏览 71
已结题

Exception in thread "main" java.lang.Error: 无法解析的编译问题:没有为类型 TbItem 定义方法 setSpecMap(Map)

在其它的地方调用setSpecMap(自己写的get和set方法)方法。说是找不到,报错信息:没有为类型 TbItem 定义方法 setSpecMap(Map);在其它的地方调用setspecmap方法.说是找不到;我调用其他的get和set方法又是可以的(如:getld和setld) .

文件一(中的代码):
package com.pinyougou.pojo;

public class TbItem implements Serializable{

@Field
private Long id;

@Field("item_title")
private String title;

private String sellPoint;

@Field("item_price")
private BigDecimal price;

private Integer stockCount;

private Integer num;

private String barcode;

@Field("item_image")
private String image;

@Field("item_goodsid")
private Long goodsId;

private String sellerId;

private String cartThumbnail;

@Field("item_category")
private String category;

@Field("item_brand")
private String brand;

private String spec;

@Field("item_seller")
private String seller;

@Dynamic
@Field("item_spec_*")
private Map<String,String> specMap;

public Map<String, String> getSpecMap() {
    return specMap;
}

public void setSpecMap(Map<String, String> specMap) {
    this.specMap = specMap;
}

public Long getId() {
    return id;
}

public void setId(Long id) {
    this.id = id;
}

public String getTitle() {
    return title;
}

public void setTitle(String title) {
    this.title = title == null ? null : title.trim();
}

.............
}
文件二(中的代码,也是出错的地方):
package com.pinyougou.solrutil;

import java.util.List;
import java.util.Map;

@Component
public class SolrUtil {

@Autowired
private TbItemMapper itemMapper;

@Autowired
private SolrTemplate solrTemplate;

/**
 * 导入商品数据
 */
public void importItemData(){
    TbItemExample example=new TbItemExample();
    Criteria criteria = example.createCriteria();
    criteria.andStatusEqualTo("1");//已审核
    List<TbItem> itemList = itemMapper.selectByExample(example);
    
    System.out.println("=====商品列表=====");
    for(TbItem item:itemList){
        System.out.println(item.getId()+" "+ item.getTitle()+ " "+item.getPrice());    
        Map specMap = JSON.parseObject(item.getSpec(), Map.class);//从数据库中提取规格json字符串转换为map
        item.setSpecMap(specMap);
    }        
    solrTemplate.saveBeans(itemList);
    solrTemplate.commit();
    
    System.out.println("=======结束=======");            
}    

public static void main(String[] args) {
    ApplicationContext context=new ClassPathXmlApplicationContext("classpath*:spring/applicationContext*.xml");
    SolrUtil solrUtil=  (SolrUtil) context.getBean("solrUtil");
    solrUtil.importItemData();
}

}

img

  • 写回答

4条回答 默认 最新

  • CSDN专家-sinJack 2022-02-22 16:20
    关注

    Map类型加上。

    Map<String,String> specMap
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 3月2日
  • 已采纳回答 2月22日
  • 创建了问题 2月22日

悬赏问题

  • ¥15 解决一个加好友限制问题 或者有好的方案
  • ¥15 关于#java#的问题,请各位专家解答!
  • ¥15 急matlab编程仿真二阶震荡系统
  • ¥20 TEC-9的数据通路实验
  • ¥15 ue5 .3之前好好的现在只要是激活关卡就会崩溃
  • ¥50 MATLAB实现圆柱体容器内球形颗粒堆积
  • ¥15 python如何将动态的多个子列表,拼接后进行集合的交集
  • ¥20 vitis-ai量化基于pytorch框架下的yolov5模型
  • ¥15 如何实现H5在QQ平台上的二次分享卡片效果?
  • ¥30 求解达问题(有红包)