Size: a a a

Java/Kotlin and more

2021 January 10

V

Vlad in Java/Kotlin and more
Alex Nikolaev
Не понял, откуда он должен подтянуться? Id пользователя наоборот уже есть и я хочу его установить в свежесозданный Workout. На всякий случай напишу, что проблема уже вроде решена референсами
В твоем вопросе не понятно,  как ты получаешь свою энтити.  Если,  как ты описал выше,  просто делаешь workout w= new workout(),  то получишь пустой джава объект.  Ты ведь где-то делаешь get()  или load(),  ну либо другим любым способом получаешь данные для твоей энтити. Затем,  судя по проблеме,  у тебя просто не подтянулся юзер из бд( ну либо из мема,  смотря какая бд).  Но раз вопрос решен,  то это уже не важно.
источник

V

Vlad in Java/Kotlin and more
em.persist() не говорит "собери мою сущность",  а просто переводит твою сущность в managed состояние и  ложит твою энтити в контекст персистентности и затем,  добавит в бд.  Т.е если ты не указал своего юзера,  после персиста он там не появится,  тебе необходимо выгрузить из бд свою сущность,  и тогда ты уже получишь все данные.  Но опять же,  возможно я просто некорректно понял вопрос.
источник

AN

Alex Nikolaev in Java/Kotlin and more
Vlad
В твоем вопросе не понятно,  как ты получаешь свою энтити.  Если,  как ты описал выше,  просто делаешь workout w= new workout(),  то получишь пустой джава объект.  Ты ведь где-то делаешь get()  или load(),  ну либо другим любым способом получаешь данные для твоей энтити. Затем,  судя по проблеме,  у тебя просто не подтянулся юзер из бд( ну либо из мема,  смотря какая бд).  Но раз вопрос решен,  то это уже не важно.
Ну да, данные приходят, допустим из контроллера, в том числе id пользователя. Но это же несущественно, откуда они приходят. Главное как раз то, что пользователь «не подтянулся». Вот работающий способ, при котором происходит то, что нужно:
Workout w = new Workout();
User user = entityManager.getReference(User.class, 2);
w.setUser(user);
entityManager.persist(w);
w.getUser().doSmth();

class Workout {
...
@ManyToOne(optional = false, fetch = FetchType.LAZY)
@JoinColumn(nullable = false, name = "userId")
private User user;
...
}

Этот способ работает в том числе без «явной» выгрузки или перечитывания сущностей из базы и вообще без выгрузки, если убрать w.getUser().doSmth();

Допускаю, что я не совсем корректно сформулировал свой вопрос, хотя Роман все равно меня понял.
источник

V

Vlad in Java/Kotlin and more
Все,  теперь картинка собралась,  суть вопроса была замапить воркаут с юзером без вытаскивания юзера из бд)
источник

2

in Java/Kotlin and more
Здравствуйте. Можете подсказать как перевести Java приложение на Kotlin?
источник

EI

Edem Injection in Java/Kotlin and more
если классическое решение — ручками, не подходит, прогони через идею, она сама умеет эти штуки переводить
источник

S

Seryh in Java/Kotlin and more
Здравствуйте. Можете подсказать как перевести Java приложение на Kotlin?
а есть ли в этом смысл? кроме вкусовщины на определенные виды сахара
источник

EI

Edem Injection in Java/Kotlin and more
Seryh
а есть ли в этом смысл? кроме вкусовщины на определенные виды сахара
нам в школе +2 бала давали если проект на котлине сделать
источник

Н

Николай in Java/Kotlin and more
Добрый вечер!
Встретил недавно статью:
https://blog.ttulka.com/package-by-component-with-clean-modules-in-java
Очень интересно описана компонентная архитектура приложения. Как вы думаете можно данную архитектуру использовать на практике? Если да, то как она будет выглядеть при использовании того же spring data.
источник

Н

Николай in Java/Kotlin and more
Заранее, буду очень признателен!
источник

VS

Vitaly Sirotkin in Java/Kotlin and more
Seryh
а есть ли в этом смысл? кроме вкусовщины на определенные виды сахара
Если ты задаешь этот вопрос - значит нет смысла
источник

S

Seryh in Java/Kotlin and more
Vitaly Sirotkin
Если ты задаешь этот вопрос - значит нет смысла
ну у остальных энтузиастов же должна быть какая-то мотивация
источник

2

in Java/Kotlin and more
Edem Injection
если классическое решение — ручками, не подходит, прогони через идею, она сама умеет эти штуки переводить
Спасибо. А какое приложение дольшое живёт на Java или Kotline? А то я изучал только на Java.
источник

EI

Edem Injection in Java/Kotlin and more
Программист помрет раньше
источник

ЯС

Ярослав Суханек... in Java/Kotlin and more
Здравствуйте. Можете подсказать как перевести Java приложение на Kotlin?
в IDEA ctrl + shift + alt + K на открытом java-файле или на выбранном пакете (перекинет все внутренние файлы в котлин)
конечно кривовато местами в плане красоты, но вроде как работает
источник

2

in Java/Kotlin and more
Ярослав Суханек
в IDEA ctrl + shift + alt + K на открытом java-файле или на выбранном пакете (перекинет все внутренние файлы в котлин)
конечно кривовато местами в плане красоты, но вроде как работает
Спасибо.
источник

2

in Java/Kotlin and more
Ярослав Суханек
в IDEA ctrl + shift + alt + K на открытом java-файле или на выбранном пакете (перекинет все внутренние файлы в котлин)
конечно кривовато местами в плане красоты, но вроде как работает
Сейчас попробую.
источник

AE

Alexandr Emelyanov in Java/Kotlin and more
Edem Injection
если классическое решение — ручками, не подходит, прогони через идею, она сама умеет эти штуки переводить
Ну получится тот же код в другом синтаксисе, когда сам язык позволяет какие то вещи реализовывать по другому
источник

AE

Alexandr Emelyanov in Java/Kotlin and more
Сейчас попробую.
Скользкая дорожка, если только потом рефакторить
источник

AE

Alexandr Emelyanov in Java/Kotlin and more
Большие проекты никто никогда так не переводит, по тихоньку рефакторят используя только котлин в новом коде
источник