@jvmchat

Страница 1365 из 2890
Andrey
16.04.2017
11:22:52
Давайте поизвращаемся. Как получить Class<T> в статическом методе? ClassUtil<T> { public static <T> Class<T> getClass() {???} }

Или давайте расскажу пошире задачу. Я захотел сделать базовый класс для хибернейта, чтобы мочь делать someModel.save() или someModel.findById() и т.п. Дык для создания классов нужно иметь someModel.class, а получить Class<T> хз как.

Google
Pavel
16.04.2017
11:31:01
Единственный вариант, передавай класс в аргументе

Andrey
16.04.2017
11:31:02
Ты никак не можешь узнать класс в рантайме
Я понял, теперь хочу понять как лучше решить это.

Как ты собираешься пользоваться этим?)
Ну. Хочу получить user: User.findById(id); Типа такого задумывалось.

Pavel
16.04.2017
11:31:55
Или в конструкторе

Andrey
16.04.2017
11:32:09
Но походу нужно сделать промежуточный метод actions, и оттуда всё делать.

Pavel
16.04.2017
11:32:15
FindById(user.class,I'd)

Nikolay
16.04.2017
11:32:59
Pavel
16.04.2017
11:33:05
То есть сигнатура будет Class<T> clazz, Long id

Nikolay
16.04.2017
11:33:21
У тебя статический метод в родительском классе

Andrey
16.04.2017
11:33:22
Как у тебя получится клас User?
Наследуюсь от этого класса действий и описываю поля.

Nikolay
16.04.2017
11:33:43
Статические методы не наследуются

Andrey
16.04.2017
11:34:11
Хм... Пора всё таки выучить полностью джаву.

Берял
16.04.2017
11:53:16
Хм... Пора всё таки выучить полностью джаву.
а вот на котлине или скале ты бы без проблем получил свой класс в рантайме, правда там это и не нужно

Google
The mirror
16.04.2017
11:56:06
Эм, как это? Рантайм то у них одинаковый? И type erasure для Class<T> действует одинаково, или я не прав?

The mirror
16.04.2017
11:57:20
В scala очень хитрый компилятор, который многое позволяет и наверняка такую штуку тоже, но чтобы прямо в рантайме ... хм

Nikolay
16.04.2017
11:57:33
скорей бы dotty

Берял
16.04.2017
11:58:01
The mirror
16.04.2017
11:58:47
но это же не рантайм, inline и reified просто инлайнит код лямбды в функцию и поэтому можно предсказать какой класс будет в рантайме

хотя, если исходить от цели - то да - мы с помощью компилятора можем получить класс в рантайме

Берял
16.04.2017
12:00:22
ну инлайнит с конкретным типом, несмотря на дженерик, поэтому для каждой функции этот тип в рантайме можно получить как T::class

Snow
16.04.2017
12:51:06
А ео отправляют из юсы или из рф?

Степан
16.04.2017
13:36:15
Всем привет. Знает кто может как в рантайме менять структуру таблиц в бд? Интересуют готовые средства для этого.

Igor
16.04.2017
13:36:52
Ты Entity хочешь менять?

Степан
16.04.2017
13:37:12
Пока что только таблицы. Но энтити тоже.

Такое возможно вообще?

Igor
16.04.2017
13:37:47
Ну таблицы просто меняешь и всё, там же никаких ограничений

James Tiberius Kirk ?
16.04.2017
13:38:02
я не знаю ответа на вопрос, просто интересно

Степан
16.04.2017
13:38:33
@igorz не понял, ручками что ли?

Андрей
16.04.2017
13:38:56
Просто таблицы - JDBC + SQL

Igor
16.04.2017
13:39:29
@igorz не понял, ручками что ли?
Кейс не ясен, можно руками, можно через jdbc, как выше написали

Степан
16.04.2017
13:40:36
А нет вариантов с spring data например. Хибернейт там все дела. Я jdbc не очень то хотел использовать, базы разные могут быть.

Google
Степан
16.04.2017
13:41:07
Или без native query вообще никак?

S
16.04.2017
13:41:25
У Hibernate/JPA может сам накатывать DDL скрипты

Только лучше так не делать

Ivan
16.04.2017
13:48:21
> Я jdbc не очень то хотел использовать, базы разные могут быть. и что?

пиши на ansi sql

Евгений
16.04.2017
13:48:55
парсь dbf

Ivan
16.04.2017
13:48:57
ааа все понял сори мой фейл

Евгений
16.04.2017
13:49:00
только хардкор!

Ivan
16.04.2017
13:49:03
создание таблиц разное езде

S
16.04.2017
14:12:33
Вопрос - поменял имя в git config и в Idea в настройках Github. Сделал Git push - репозиторий на Github создался, а затем ошибка permission denied про предыдущего пользователя. Что я делаю не так?

Ладно не важно, проще было почистить ключи

Nikolay
16.04.2017
17:20:55
Знатоки scala подскажите как сделать generic factory method в скале что-бы это можно было нормально использовать) Сейчас так abstract class Service[RS, RQ] { def run(params: RQ): Future[RS] } abstract class ServiceFactory { def createService[RS, RQ, S <: Service[RS, RQ]](serviceClass: Class[S]): S } Имплементирую ServiceFactory допустим guice-ом Вызвать получается только передав все generic параметры servicesFactory.create[SomeResponse, SomeRequest, SomeService](classOf[SomeService]).run(SomeRequest())) хотя SomeService наследуется от Service[SomeResponse, SomeRequest]

Nikolay
16.04.2017
17:21:20
Или где почитать об этом

Nikita
16.04.2017
17:25:13
@scala_ru

Митко Соловец?
16.04.2017
19:11:16
Я бы хотел в явке иметь кортежи и пары как базовые структуры языка

Зачем?

обсуждайте, господа

Andrey
16.04.2017
19:12:01
Ещё out аргументы как в сисярпе предложи.

Удобно же.

Pavel
16.04.2017
19:12:13
А что мешает написать свою реализацию кортежей и pair с блекджеком и шлюхами?

Google
Snow
16.04.2017
19:12:18
Чтоб из методов результат возвращать в кортеж

Я про уровень бызового языка

Admin
ERROR: S client not available

Andrey
16.04.2017
19:12:32
Snow
16.04.2017
19:12:41
Клепать дто для возврата приходится

Хотя они и не нужны

Пар в яве нет

Andrey
16.04.2017
19:13:02
Клепать дто для возврата приходится
Покажи пример, где тебе надо всё время dto клепать надо.

Митко Соловец?
16.04.2017
19:13:16
ща он тебе тулзу с завода пошарит

Andrey
16.04.2017
19:13:51
Любой фремворк
Эм? Давай конкретику? Так как фреймворк любой, то пример тебе не составит труда составить.

Snow
16.04.2017
19:13:56
А вообще это был вопрос отграмматике языка

Почему в яве нет кортежей и пар

Andrey
16.04.2017
19:14:06
Не увиливай.

Snow
16.04.2017
19:14:11
На уровне языка

Anton
16.04.2017
19:14:12
Из Котлина убрали кортежи, и норм

Andrey
16.04.2017
19:14:24
Почему в яве нет кортежей и пар
Потому что они не нужны.

Anton
16.04.2017
19:14:30
Почему в яве нет кортежей и пар
видимо, считается, что не нужны

Igor
16.04.2017
19:14:36
Pavel
16.04.2017
19:14:52
видимо, считается, что не нужны
что мешает их самому написать?

Google
Anton
16.04.2017
19:14:54
ну это классы. такие можно и для жавки написать

Snow
16.04.2017
19:14:55
Там пары иммутабельны?

Pavel
16.04.2017
19:15:08
Что Pair, что Triple

Snow
16.04.2017
19:15:12
Кортеж же иммутабелен. Легковесен

Anton
16.04.2017
19:15:22
что мешает их самому написать?
вопрос выше вроде был про поддержку этих штук на уровне языка. теперь повтори вопрос :)

Andrey
16.04.2017
19:15:29
Там пары иммутабельны?
Дружище, пример строгой необходимости пар будет? Класс хотя бы с 2 методами, где нужны разные dto.

Igor
16.04.2017
19:15:29
ну это классы. такие можно и для жавки написать
НО, они есть в стандартной библиотеки

Anton
16.04.2017
19:15:44
Кортеж же иммутабелен. Легковесен
оу оу. с чего бы ему быть легковесным?

Oleksandr
16.04.2017
19:15:53
Кортеж же иммутабелен. Легковесен
что такое "легковесен" ?

Snow
16.04.2017
19:15:56
Andrey
16.04.2017
19:15:59
НО, они есть в стандартной библиотеки
Скачай стороннюю, где нагерены классы вплоть до 150)

Igor
16.04.2017
19:16:31
Там пары иммутабельны?
В Kotlin пары readonly (это почти иммутабульны)

Страница 1365 из 2890