Как при создании одного объекта привязать к нему другой по id?

108
23 февраля 2022, 03:20

Есть класс UserDTO и класс CarDTO

public class UserDTO{
    private Long id;
    private String name;
//еще поля, геттеры сеттеры}
public class CarDTO {
    private Long id;
    private String color;
////еще поля, геттеры сеттеры}

Как сделать так, чтобы при создании пользователя, машину к нему можно было привязать по id? То есть, чтобы не заполнять всю carDTO, а указать уже существующий айдишник конкретной машины? Метод на создание юзера в сервисе и контроллере ниже

//@Service
    public long create(UserDTO us) {
        us.setId(null);
        User user = repository.save(userMapper.map(us));
        return user.getId();
//@Controller
 @PostMapping
    public Long createUser(@RequestBody UserDTO user){
        return userService.create(user);}
    }

Маппер

  public User map(UserDTO u) {
        User us=new User;
        if(u!=null){
        us.setId(dto.getId());
        book.setName(dto.getName());
        return us;
    }
Answer 1

Сделать внешний ключ с id автомобиля для таблицы пользователей.

public class UserDTO{
private Long id;
private String name;
//внешний ключ
private Long car_id; 

Посмотрите как это сделать тут

READ ALSO
Загрузка картинки в WP через php

Загрузка картинки в WP через php

Делаю скрипт, который будет загружать картинку в библиотеку медиафайловДвижок WordPress, но скрипт(самопис), который выполняет загрузку, к движку...

73
Как подключить phpQuery к yii2?

Как подключить phpQuery к yii2?

Как подключить библиотеку phpQuery к yii2 через composer? Объясните поподробнее пожалуйста))))) Заранее благодарю за ответ))

157
В чем разница между joinWith() и with() в Yii?

В чем разница между joinWith() и with() в Yii?

При связи таблиц в запросе (Query) joinWith() или with()В чем разница?

91