首页 > 其他分享 >JPA 自动处理数组字段

JPA 自动处理数组字段

时间:2024-12-10 21:55:20浏览次数:6  
标签:return String java JPA List util 自动 数组 import

//    @ElementCollection
//    @CollectionTable(name = "specification_vote_task_reviewer", joinColumns = @JoinColumn(name = "vote_task_id"))
    @Convert(converter = IntegerListConverter.class)
    @Column(nullable = true, columnDefinition = "varchar(512) comment 'xxx'")
    private List<Integer> reviewerList;
import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;

import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.stream.Collectors;

import javax.persistence.AttributeConverter;
public class IntegerListConverter implements AttributeConverter<List<Integer>, String> {
    private static final String DELIMITER = ",";


    @Override
    public String convertToDatabaseColumn(List<Integer> attribute) {
        if (CollectionUtils.isEmpty(attribute)) {
            return "";
        }
        final List<String> interStringValueList = attribute.stream().map(String::valueOf).collect(Collectors.toList());
        return String.join(DELIMITER, interStringValueList);
    }


    @Override
    public List<Integer> convertToEntityAttribute(String dbData) {
        if (StringUtils.isEmpty(dbData)) {
            return Collections.emptyList();
        }
        final List<String> interStringValueList = Arrays.asList(dbData.split(DELIMITER));
        return interStringValueList.stream().map(Integer::valueOf).collect(Collectors.toList());
    }
}

标签:return,String,java,JPA,List,util,自动,数组,import
From: https://www.cnblogs.com/sunupo/p/18598089

相关文章

  • 从 动态前缀和 到 树状数组
    一.引言——动态前缀和前缀和求解我会在最后给出,想看的直接翻到最后,这里默认大家都知道前缀和怎么求解。有这么一个场景,我们需要不断修改数组中的元素,并且问我们数组内某个区间的和。如果使用最原始的前缀和来求解,每次我们都要重新求一遍sum[],更新时间复杂度是O(n)的,查询是O(1)的......
  • 分享一个让网站底部年份自动更新的方法
    原文地址:https://0jh.cn/13.html前言每年年初的时候都要我们自己手动更新底部的年份,对于博主这样的懒人,觉得太麻烦了$[经典表情]::(无奈),为了解决这个问题,以下是一个教程教程JS代码haml<scripttype="text/javascript">document.write((newDate()).getFullYear());<......
  • Selenium IDE:Web自动化测试的得力助手
    SeleniumIDE:Web自动化测试的得力助手在快速迭代的软件开发环境中,自动化测试已成为确保软件质量的重要一环。SeleniumIDE作为一款开源的Web自动化测试工具,以其简单易用、功能强大的特点,成为了许多测试人员的首选。本文将详细介绍SeleniumIDE的基本概念、安装方法、使用方......
  • 树状数组进阶
    树状数组是众多数据结构中常数较小,简单好写的,很多ds题都应该优先考虑树状数组。接下来介绍树状数组的几种常见套路。单点加,区间求和区间加,单点查询区间加,区间求和二维树状数组,包括上面\(3\)个操作单点修改,求全局\(k\)小值求前驱,后继,排名等平衡树操作......
  • BAPI_BATCH_CHANGE在更新后不自动更新批次特征
    1、问题介绍 在CL03中看到分类特性配置了制造日期字段,并绑定了生产日期字段MCH1~HSDATMSC2N修改批次的生产日期字段时,自动修改了对应的批次特性但是通过BAPI:BAPI_BATCH_CHANGE修改生产日期时,并没有更新到批次特性中2、BAPI根据官方提示,需要使用BAPI:BAPI_BATCH_SAVE_REPL......
  • 数据库公共字段自动填充的三种实现方案
    背景介绍在实际项目开发中,我们经常需要处理一些公共字段的自动填充,比如:createTime(创建时间)updateTime(更新时间)createUser(创建人)updateUser(更新人)这些字段在每个表中都存在,如果每次都手动设置会很麻烦。下面介绍三种常用的解决方案。方案一:MyBatis+AOP......
  • .Net Core中一种应用层各个项目工程自动注入(DI)的方式
    大家好,在DotNetCore开发中我们会用到DI也就是注入一般在Program.cs文件中使用IServiceCollection去添加要注入的对象,但在实际开发中我们不可能去频繁的修改Program.cs文件并且把所有业务相关的注入对象都暴露在Program中也是存在开发风险的,因此有必要封装一个自动注入的服务,在Pro......
  • leetcode 2779. 数组的最大美丽值
    2779.数组的最大美丽值暴力超时解......
  • 通过指针引用数组
    指针变量既可指向变量,又可指向数组元素(把数组某一元素的地址存放在指针变量),它们都有地址。数组元素的指针就是数组元素的地址。可以由两种办法引用数组元素。1.下标法,如a【1】;2.指针法,如p=&a【0】(p为指针变量)等价于p=a。在用指针变量引用数组有几个很重要的知识点。1.假设a为......
  • leetcode 2958. 最多 K 个重复元素的最长子数组
    2958.最多K个重复元素的最长子数组classSolution{public:intmaxSubarrayLength(vector<int>&nums,intk){intsize=nums.size(),resLenth=0;unordered_map<int,int>numAdded;for(intleft=0,right=0;right<siz......