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 echarts绘制图表
  • ¥15 根据企业名称 对照两个文件 样本筛选/匹配
  • ¥15 Linux环境下CA证书更新问题
  • ¥15 sqlserver语句提取结果以外数据
  • ¥60 微信小程序如何上传QQ聊天文件
  • ¥300 开发的系统遭到无良商家的破解,请问如何防止再次发生,并追回损失
  • ¥15 java代码写在记事本上后在cmd上运行时无报错但又没生成文件
  • ¥15 关于#python#的问题:在跑ldsc数据整理的时候一直抱这种错误,要么--out识别不了参数,要么--merge-alleles识别不了参数(操作系统-linux)
  • ¥15 PPOCRLabel
  • ¥15 混合键合键合机对准标识