开发者社区> 问答> 正文

在java中怎么处理才能将数据存入postgresql数据库中类型为hstore的字段?

/**
 * 增加批量导入映射.
 * 
 * @param 
 * @return 
 */
@Action(value = "addImportMapper", results = { @Result(name = "addImportMapper", type = "json", params = {
        "root", "jsonResult" }) })
public String addImportMapper() {
    Boolean operateResult = getImportMapperService().addImportMapper(
            assembleParameterToAddImportMapper());
    Map<String, Object> map = new HashMap<String, Object>();
    map.put("result", operateResult);


    jsonResult = map;


    return "addImportMapper";
}


/**
 * 由于是对外提供接口,不宜显式地暴露对象. <br/>
 * 故将参数组装成对象.
 * 
 * @return 
 */
@SuppressWarnings("unchecked")
private ImportMapper assembleParameterToAddImportMapper() {
    ImportMapper importMapper = new ImportMapper();


    importMapper.setUuid(UUIDGenerator.genUuidStr());
    importMapper.setMapperName("教职工姓名");
    importMapper.setMatchedOrgUuid("123456");
    importMapper.setMapperRule("name=>name,age=>20");  //hstore类型
    importMapper.setCreatorUuid("789456");


    return importMapper;
}
<insert id="insertImportMapper"
    parameterType="net.firstelite.bicp.dtd.personnel$manage.system.ImportMapper">
    insert into t_pm_sys_import_mapper (
    uuid,
    mapper_name,
    matched_org_uuid,
    mapper_rule,
    creator_uuid,
    create_time,
    modify_time
    )values(
    #{uuid},
    #{mapperName},
    #{matchedOrgUuid},
    #{mapperRule},
    #{creatorUuid},
    current_timestamp(0),
    current_timestamp(0)
    )
</insert>

展开
收起
蛮大人123 2016-03-13 17:44:28 3660 0
1 条回答
写回答
取消 提交回答
  • 我说我不帅他们就打我,还说我虚伪

    XXMapper.xml里面的配置为如下
    insert into hstore_tb(key_value) values(#{key_value}::hstore);

    2019-07-17 19:02:56
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
2022 DTCC-阿里云一站式数据库上云最佳实践 立即下载
云时代的数据库技术趋势 立即下载
超大型金融机构国产数据库全面迁移成功实践 立即下载

相关镜像