Jag hittade två sätt att skicka det önskade värdet till funktionen:
- Det är svårt att skapa strängen för UDT om den är komplex. Det enklaste sättet är att göra reverse engineering. Skapa UDT i plpgsql och skriv ut den. På så sätt får du strängen som måste skickas från Java. Skriv nu en logik i Java-kod för att skapa en sådan sträng.
- Ett annat sätt är att skicka värdet i json-formatet och i funktionen, analysera json och konstruera UDT själv.
Jag väljer den andra metoden eftersom den är lätt att underhålla.