|
|
|
Магические методы в Java
|
|||
|---|---|---|---|
|
#18+
В PHP имеются несколько методов классов типа __call() __callStatic(), к которым переходит управление в случае, если вызываемый метод в самом классе отсутствует. Это позволяет прозрачно создавать "виртуальные" методы для ORM, например, для связей один-к-одному и так далее. Можно ли что-то похожее создать на Java ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 07:27:30 |
|
||
|
Магические методы в Java
|
|||
|---|---|---|---|
|
#18+
Герой дня, Таких методов нет, можно делать через аннотации ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 08:08:04 |
|
||
|
Магические методы в Java
|
|||
|---|---|---|---|
|
#18+
Герой дня, Они так и называются? "магические" ? В самом языке Java такого нет. Но в JVM есть схожая инструкция invokedynamic. Она была добавлена в байт-код как раз для того чтобы подобные механизмы поддерживать для скриптовых языков. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 09:28:46 |
|
||
|
Магические методы в Java
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, в пхп так и называются - https://php.net/manual/ru/language.oop5.magic.php ясно.. интересно, а что делать, если имеется большое желание не определять все методы и не пользоваться аннотациями ? оставить java за скобками ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 15:31:53 |
|
||
|
Магические методы в Java
|
|||
|---|---|---|---|
|
#18+
Герой дняBlazkowicz, в пхп так и называются - https://php.net/manual/ru/language.oop5.magic.php ясно.. интересно, а что делать, если имеется большое желание не определять все методы и не пользоваться аннотациями ? оставить java за скобками ? Если хочется использовать динамический язык, то надо его и использовать. jython , например. Для jvm есть ещё. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 16:05:41 |
|
||
|
Магические методы в Java
|
|||
|---|---|---|---|
|
#18+
Alexey Tomin, понятно.. спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 16:15:37 |
|
||
|
Магические методы в Java
|
|||
|---|---|---|---|
|
#18+
Герой дняясно.. интересно, а что делать, если имеется большое желание не определять все методы и не пользоваться аннотациями ? оставить java за скобками ? Изучать 100500 языков для JVM: Scala, Groovy, Kotlin, Ceylon, Xtend, Clojure и прочие ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 17:03:06 |
|
||
|
Магические методы в Java
|
|||
|---|---|---|---|
|
#18+
Герой дня, А может просто наследоваться, не? Что хочется сделать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 17:20:36 |
|
||
|
Магические методы в Java
|
|||
|---|---|---|---|
|
#18+
GregTkГерой дня, А может просто наследоваться, не? Что хочется сделать? Хочется вызывать методы, определяемые в рантайме. В Java как статически типизированном языке такого нет. Либо кодогенерация. Либо скриптовые языки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 17:33:06 |
|
||
|
Магические методы в Java
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, да.. кодогенерация остается, про неё забыл.. хочу создавать в веб-интерфейсе новые объекты БД и определять связи между ними точнее - в пхп уже реализовал, планирую сделать это в java версии продукта ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2015, 04:14:41 |
|
||
|
Магические методы в Java
|
|||
|---|---|---|---|
|
#18+
Герой дняда.. кодогенерация остается, про неё забыл.. хочу создавать в веб-интерфейсе новые объекты БД и определять связи между ними QueryDSL и jOOQ уже умеют это делать вместо тебя. Последний приятнее в API, но у него больше ограничений в лицензии. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2015, 09:33:01 |
|
||
|
Магические методы в Java
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, спб, изучаю ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2015, 11:20:37 |
|
||
|
Магические методы в Java
|
|||
|---|---|---|---|
|
#18+
Герой дня, посмотри на java.lang.reflect.InvocationHandler ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2015, 11:05:06 |
|
||
|
Магические методы в Java
|
|||
|---|---|---|---|
|
#18+
Герой дня, Можно создавать классы, потом их компилить и подгружать налету через classloader. Это как направление, нужно конечно смотреть в деталях. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2015, 11:11:30 |
|
||
|
Магические методы в Java
|
|||
|---|---|---|---|
|
#18+
GregTkГерой дня, Можно создавать классы, потом их компилить и подгружать налету через classloader. Это как направление, нужно конечно смотреть в деталях. Э-э-э. Компилить, ведь, не выйдет, если верификации не отключить. Ну, lombok, вроде, что-то подобное делает. Тут основная проблема в том что поддержка IDE может отсутствовать напрочь. Для lombok, то сделали плагины. А для своего велосипеда плагина уже не будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2015, 11:14:59 |
|
||
|
Магические методы в Java
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, как их компилить вопрос второй, но ведь реально никто не мешает сделать классы новые и загрузить их в работающее приложение. По ним можно и создать таблицы в БД и связи настроить, в общем полный фарш, я так понимаю ТС хочет сделать некий конфигуратор моделей через веб морду. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.03.2015, 09:27:51 |
|
||
|
Магические методы в Java
|
|||
|---|---|---|---|
|
#18+
GregTk, А через некоторое время понимаешь, что WEB морде геттеры и сеттеры не нужны, и вся модель по сути представляет собой Два Map (1 на данные, а 2 на мету). :) И нафига компилить разные классы на сервере? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.03.2015, 12:20:55 |
|
||
|
Магические методы в Java
|
|||
|---|---|---|---|
|
#18+
Сергей АрсеньевGregTk, А через некоторое время понимаешь, что WEB морде геттеры и сеттеры не нужны, и вся модель по сути представляет собой Два Map (1 на данные, а 2 на мету). :) И нафига компилить разные классы на сервере? вот полностью за! так и надо делать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.03.2015, 13:54:06 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38900099&tid=2125695]: |
0ms |
get settings: |
16ms |
get forum list: |
30ms |
check forum access: |
8ms |
check topic access: |
8ms |
track hit: |
75ms |
get topic data: |
23ms |
get forum data: |
5ms |
get page messages: |
93ms |
get tp. blocked users: |
3ms |
| others: | 398ms |
| total: | 659ms |

| 0 / 0 |
