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 乌班图ip地址配置及远程SSH
  • ¥15 怎么让点阵屏显示静态爱心,用keiluVision5写出让点阵屏显示静态爱心的代码,越快越好
  • ¥15 PSPICE制作一个加法器
  • ¥15 javaweb项目无法正常跳转
  • ¥15 VMBox虚拟机无法访问
  • ¥15 skd显示找不到头文件
  • ¥15 机器视觉中图片中长度与真实长度的关系
  • ¥15 fastreport table 怎么只让每页的最下面和最顶部有横线
  • ¥15 java 的protected权限 ,问题在注释里
  • ¥15 这个是哪里有问题啊?