|
|
|
Web-приложение, структура... что изменить, сделать проще, понятнее?
|
|||
|---|---|---|---|
|
#18+
Выкинуть нахер жаву :) И тогда будет вот это (это лишь один из вариантов, код руби, но есть и другие альтернативе если руби не нравится). Код: ruby 1. 2. 3. 4. 5. 6. Вместо этой портянки Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.01.2018, 18:28 |
|
||
|
Web-приложение, структура... что изменить, сделать проще, понятнее?
|
|||
|---|---|---|---|
|
#18+
private, Теперь на хибер API дай и удивись) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.01.2018, 18:37 |
|
||
|
Web-приложение, структура... что изменить, сделать проще, понятнее?
|
|||
|---|---|---|---|
|
#18+
private, А можно писать так Код: java 1. 2. 3. 4. 5. 6. 7. При этом можно использовать все библиотеки и фреймворки Java <:o) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2018, 05:47 |
|
||
|
Web-приложение, структура... что изменить, сделать проще, понятнее?
|
|||
|---|---|---|---|
|
#18+
Можно - на многих языках можно создавать компактно и просто. Например жаваскрипт современный практически не уступает руби по компактности и мощности, а с ТайпСкриптом даже еще и надежней становится с типами. И котлин тоже неплох. Но почему-то весь реальный код на жава (и котлин там-же) - это портянки как в примере выше. Вот реально не найти на гитхабе проекта на жаве где бы - не было длиннющих переменных на полстроки, и вообще линий длинных - кучи скобок - фактори билдер провайдер медиейтор стратеджи - и т.п. - хорошо отформатированного кода, где аттрибуты и пр. сгруппировано так чтобы было компактно и легко читать. Вот даже в твоем примере, смотри, можно его улучшить Код: java 1. 2. 3. 4. 5. 6. Но нет, ты даже не потрудился поставить отступы чтобы читать было проще, размазал код по странице так как идея отформатировала от балды и готово. В этом проблема, жава проекты и жава код - это какая-то мазня на которую неприятно смотреть. Как боливудские фильмы - вроде сюжет тот-же, но не то. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2018, 13:36 |
|
||
|
Web-приложение, структура... что изменить, сделать проще, понятнее?
|
|||
|---|---|---|---|
|
#18+
privateВ этом проблема, жава проекты и жава код - это какая-то мазня на которую неприятно смотреть.Нехватка синтаксического сахара порождает boilerplate © privateКак боливудские фильмы - вроде сюжет тот-же, но не то. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2018, 13:50 |
|
||
|
Web-приложение, структура... что изменить, сделать проще, понятнее?
|
|||
|---|---|---|---|
|
#18+
privateНо нет, ты даже не потрудился поставитьты сам трудился? Нафига ты вывалил код первый попавшийся? Я согласен что java многословен, но сравнивать с js глупо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2018, 14:08 |
|
||
|
Web-приложение, структура... что изменить, сделать проще, понятнее?
|
|||
|---|---|---|---|
|
#18+
Спустя две недели удалось вернуться к проекту, не то, чтобы работы куча, а просто как-то отвлёкся )) Два дня назад решил-таки подключить Spring Data JPA и... провозился 1.5 дня с чтением документации и стековерфлоу, потому как я не понимал, почему везде в книгах и в доках интерфейс @Autowired без реализации, а у меня всё то же самое и выдает ошибку. В итоге на одном из форумов увидел, что JPA 2+ требует Spring 5-й версии, а я юзал 4-й. теперь такие версии подключил и всё взлетело Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. Код: java 1. 2. 3. 4. 5. Над этим текстом код репозитория, а теперь вот такой вопрос, если я, захочу использовать, добавить свои сигнатуры методов с именованием не аля findPhoneNumber(String phoneNumber), который по имени метода, вроде как должен построить автоматом запрос, хотя я не уверен из-за кемелКейса в имени метода... А что-то типа getUserByHisName() имя так себе, но не смог ничего прямо сейчас придумать :) Получается, что если спринг не сможет сгенерить запрос, то надо где-то его реализацию сделать, правильно? Сейчас у меня в контроллере указано так: Код: java 1. 2. ну и метод, какой-никакой) Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. имя такое, потому что тут же в методе используются варианты для REST запросов. Через Criteria и просто через Код: java 1. Должен ли я теперь создать отдельный класс аля UserDao, затем добавить его реализацию UserDaoImpl и использовать именно её... Или же, есть какой-то вариант, использовать всё тот же интерфейс без явной реализации UserRepository, но как, кажется это нереально? Как бы это всё покрасивше сделать? Спасибо :) п.с. HATEOAS посмотрел, попозже, возможно, добавлю, пока разберусь с Spring Data :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2018, 08:37 |
|
||
|
Web-приложение, структура... что изменить, сделать проще, понятнее?
|
|||
|---|---|---|---|
|
#18+
Petro123NixicА что, получается, что либо маппинг сущностей в БД, либо Spting Data? Одно исключает другое?да. Выбирай. Золотой пули нету. Кстати, я тут это... у меня и то и то используется :) То есть я могу смапить всё что есть и одновременно юзать Spring Data. Правда тут получается что у меня в двух местах сейчас прописана EntityManagerFactory: в файле с настройками и бинами и в так называемом классе HibernateUtil где EntityManagerFactory создается на основании persistence.xml ладно хоть и там и там датасорс подтягивается через jndi из томката. Не знаю, насколько это кашерно, но работает... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2018, 08:53 |
|
||
|
Web-приложение, структура... что изменить, сделать проще, понятнее?
|
|||
|---|---|---|---|
|
#18+
NixicНе знаю, насколько это кашерно, но работает...какой смысл на двух стульях сидеть? Выбери где меньше кода и закрывай тему. Тема то про выбор, а не написание проекта. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2018, 09:07 |
|
||
|
Web-приложение, структура... что изменить, сделать проще, понятнее?
|
|||
|---|---|---|---|
|
#18+
Petro123NixicНе знаю, насколько это кашерно, но работает...какой смысл на двух стульях сидеть? Выбери где меньше кода и закрывай тему. Тема то про выбор, а не написание проекта. Просто я люблю сначала всех посмотреть) И как понять, где меньше кода при определенных потребностях, если не пробовать писать проект. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2018, 10:32 |
|
||
|
Web-приложение, структура... что изменить, сделать проще, понятнее?
|
|||
|---|---|---|---|
|
#18+
Nixic, Сейчас приведи код сюда со всеми конфигами спринг и без спринга хибер api. Результат не виден. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2018, 10:35 |
|
||
|
Web-приложение, структура... что изменить, сделать проще, понятнее?
|
|||
|---|---|---|---|
|
#18+
persistence.xml Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. pom.xml Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. WebConfig.java Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. HibernateUtil.java Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. User.java Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. UserRepository.java Код: java 1. 2. 3. 4. 5. 6. UserController.java Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. context.xml в Tomcat'е 9-м в папке conf Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. Вроде всё ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2018, 12:42 |
|
||
|
Web-приложение, структура... что изменить, сделать проще, понятнее?
|
|||
|---|---|---|---|
|
#18+
Nixic, Большая работа). Без спринга, на хибере вроде в 2 раза меньше кода? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2018, 12:48 |
|
||
|
Web-приложение, структура... что изменить, сделать проще, понятнее?
|
|||
|---|---|---|---|
|
#18+
Nixic, Если для вывода фио юзверя надо 1500 строк руками, фигово ты выбирал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2018, 12:58 |
|
||
|
Web-приложение, структура... что изменить, сделать проще, понятнее?
|
|||
|---|---|---|---|
|
#18+
Мне просто в свободное время нужно было попробовать некоторые варианты, которые вдруг когда-нибудь понадобятся. Ну и плюс, можно сказать потом, что да, работал с этим. Ну и второй раз разбираться, даже спустя время или даже ВРЕМЯ)) все равно легче, тем более если будет лежать пример использования в своих заначках. Про большую работу я понял, что сарказм) Но с чего-то надо начинать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2018, 13:15 |
|
||
|
Web-приложение, структура... что изменить, сделать проще, понятнее?
|
|||
|---|---|---|---|
|
#18+
Nixic, Ну, для себя это понятно. А для других показал ужасы java. На jdbc 3 !!!!! строки кода. У тебя 1500 строк, причем ручного кода. Удачи! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2018, 13:42 |
|
||
|
Web-приложение, структура... что изменить, сделать проще, понятнее?
|
|||
|---|---|---|---|
|
#18+
Nixic, огромное спасибо!! теперь у меня есть ссылка для демонстрации разницы моего подхода и "стандартного" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2018, 13:59 |
|
||
|
Web-приложение, структура... что изменить, сделать проще, понятнее?
|
|||
|---|---|---|---|
|
#18+
вадя, Он пока троечник))). А ты? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2018, 14:02 |
|
||
|
Web-приложение, структура... что изменить, сделать проще, понятнее?
|
|||
|---|---|---|---|
|
#18+
Petro123вадя, Он пока троечник))). А ты?у меня хватает мозгов чтоб не делать такое, а заранее представить это. и оценить время и затраты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2018, 14:12 |
|
||
|
Web-приложение, структура... что изменить, сделать проще, понятнее?
|
|||
|---|---|---|---|
|
#18+
вадяменя хватает мозгов-1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2018, 14:18 |
|
||
|
Web-приложение, структура... что изменить, сделать проще, понятнее?
|
|||
|---|---|---|---|
|
#18+
Не используйте интерфейсы для бинов. Они не нужны. Интерфейсы нужны были в старых EJBях ибо прокси создавались через java.lang.reflect.Proxy. В спринге этого не требуется, можно инжектить сразу реализации. Уберите гетеры и сетеры из ентитей. Они там не нужны - вы всё равно не будете переопределять логику внутри. Вообще используйте гетеры и сетеры по минимуму - антипаттерн. Инжекте сразу в приватные поля. Названия пакетов можно сократить если вы не собираете библиотеки. Спринг дружит с хибернейтом, есть хелперы. Не юзайте criteria api - код превращается в месиво и сложно отлаживать запросы в БД. Лучше создавайте naming queries. Не переопределяйте equals и hashCode без надобности. Функциональная декомпозиция лучше послойной. Тесты пишутся в директории src/main/test а код в src/main/java. Если юзаете автосканинг, то будет долго стартовать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2018, 14:25 |
|
||
|
Web-приложение, структура... что изменить, сделать проще, понятнее?
|
|||
|---|---|---|---|
|
#18+
Спасибо, учту, кое что уже поправил, в частности unregesteredТесты пишутся в директории src/main/test а код в src/main/java. сейчас так, а тесты не пишу, пока ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2018, 14:32 |
|
||
|
Web-приложение, структура... что изменить, сделать проще, понятнее?
|
|||
|---|---|---|---|
|
#18+
В идее можно настроить чтобы *.iml были внутри .idea директории ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2018, 14:35 |
|
||
|
Web-приложение, структура... что изменить, сделать проще, понятнее?
|
|||
|---|---|---|---|
|
#18+
NixicPetro123Nixic, Чет я не понял. Если хиберAPI то будет маппинг и session.saveORUpdare Или ,springData? По идее, я хотел бы создавать свои сущности, не заботиться при этом о БД, и вообще поменьше в нее заходить по ходу разработки. Но в дальнейшем, возможно, эта необходимость отпадет и поля с таблицами будут добавляться в БД руками. Вообще, я так понимаю, нужно смотреть в сторону Spring Data, уже открыл пару ссылок :) А что, получается, что либо маппинг сущностей в БД, либо Spting Data? Одно исключает другое? Никогда не создавайте ничего руками. Все sql-скрипты должны быть упорядочены и храниться в репозитории ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2018, 14:46 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=39602411&tid=2122251]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
162ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
61ms |
get tp. blocked users: |
2ms |
| others: | 258ms |
| total: | 526ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...