моя ситуация такова: POST-запрос, который получает JSON:
{'ID':1
'COMPARTMENT':'xxxx'
'COM_COMP':'yyyy'
'ID_ISTAT':'zzzz'
}
мой контроллер:
@RequestMapping(value = "/PostMethod", method = RequestMethod.POST)
public ResponseEntity<String> putCompartment(@RequestBody CompartmentDTO compartmentDTO) {
compartmentService.joinTable(compartmentDTO);
return new ResponseEntity<>("Insert", HttpStatus.OK);
теперь я хочу записать в таблицу СООТВЕТСТВИЕ этому запросу присоединиться:
**
select ID, COMPARTMENT, COM_COMP,CITTA from compartmentDTO, anagrafic_compartment
where compartmentDTO.citta=anagrafic_compartment.citta;
**
ANAGRAFICA ENTITY: те же поля таблицы в базе данных
@Entity(name="anagrafica_compartimenti")
@Data
@AllArgsConstructor
@NoArgsConstructor
public class AnagraficaEntity {
@Column
@Id
private String id_istat;
@Column
private String citta;
}
CompartmentENTITY: те же поля таблицы База данных или те же поля JSON / DTO?
@Entity(name="compartimenti")
@Data
@AllArgsConstructor
@NoArgsConstructor
public class CompartimentiEntity {
@Id
@Column
private Integer id;
@Column
private String compartment;
@Column
private String com_comp;
@Column
private String id_istat; <--- or citta?
}
CompartmentDTO:
@Data
@AllArgsConstructor
@NoArgsConstructor
public class CompartimentiDTO{
@Id
@Column
private Integer id;
@Column
private String compartment;
@Column
private String com_comp;
@Column
private String citta;
@Override
public String toString() {
return String.format(
"Compartimento:(id=%d, compartment='%s', com_comp='%s',id_istat=%s)",
id, compartment, com_comp,citta);
}
}
КОММЕРЧЕСКИЙ СЕРВИС:
@Service
public class CompartimentiService {
@Autowired
private CompartimentiRepository compartimentiRepository;
public void joinTable (CompartimentiDTO compartimentiDTO){
///HERE I WANT TO DO THE LOGIC BETWEEN 2 ENTITY and return 1 entity for save on DB ?////
}
СЕРВИС ANAGRAFICA:
@Service
public class AnagraficaService {
@Autowired
private AnagraficaRepository anagraficaRepository;
public List<AnagraficaEntity> getAnagrafica(){
return anagraficaRepository.findAll();
}
public void putAnagrafica(String id_istat,String citta){
AnagraficaEntity a = new AnagraficaEntity(id_istat,citta);
anagraficaRepository.save(a);
}
}
СПАСИБО