М.Двач / Программирование

Этого треда уже нет.
Это копия, сохраненная 12 марта 2019 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

Java thread #80 ПРАВОСЛАВНЫЙ /java/ 22 янв, 06:06 1332296 В конец треда | Веб

173 Кб, 850x85084 Кб, 625x80219 Мб, 3264x2448746 Кб, 627x418

Прошлый >>1319608 (OP)

Q: Поздно ли вкатываться в айти в 20/30/40/100 лет?

А: Нет, не поздно.

Q: Cобираюсь учить джаву по 2/5/20 часов в день. За сколько дней я выучу достаточно, чтобы зарабатывать фрилансом?

A: На джаве фриланса нет. Хочешь фрилансить — дуй в ПХП/раби/1С тред.

Q: Хули все книги на английском?

A: Без английского ты не нужен и можешь смело идти нахуй. Ну или в 1С-тред.

Q: Что скажете за джавараш?

Если вкатываешься с нуля, то можешь написать пару "хеллоу ворлдов" до 10 лвла. Дальше курс рассчитан на ленивых и не умеющих читать книжки людей. Количество говнокода зашкаливает, годных задачек пару штук на весь курс. В любом случае решать тебе.

https://github.com/qqqlll/Java-Thread/wiki

Ответы3248834989353773867540599407004184042433426154280842964434044492546424471744749948222491794993051086512575876560541

2 22 янв, 06:18 2 1332297

посоны, если вкатываетесь в жабу, вкатывайтесь в QA. серёзно, потом мне спасибо скажете

Ответы4076540767

1,5 Мб, 843x819
3 22 янв, 08:31 3 1332335

Ну зойчем ви нагнетаете? Не по-людски это всё.

4 22 янв, 09:03 4 1332345

> 2019

Ответы32350

5 22 янв, 09:18 5 1332350

>>1332345
>2019
>не жаба

6 22 янв, 13:01 6 1332475

Анончик помоги
Caused by: java.lang.SecurityException: Invalid signature file digest for Manifest main attributes
Выскакивает когда я подключаю arquillian
через dependencyManagement
<artifactId>arquillian-bom</artifactId>
<version>1.4.1.Final</version>
Я хуй знает нахуя оно пытается подписывать и как это отключить нахуй

7 22 янв, 13:25 7 1332483

Кто нибудь знаком с Dropwizard? Какие преимущества в сравнении с Spring Boot? Когда его стоит использовать?

8 22 янв, 13:35 8 1332488

>>1332296 (OP)
kk

9 22 янв, 16:21 9 1332596

почему джава такой ублюдочный язык? даже простая операция- получение и разбор жсона занимающая на пхп 7 строчек на джаве это больше 100 строк, 2 сторонних библиотеки и полдня времени?

Ответы326223265935600

10 22 янв, 16:38 10 1332622

>>1332596
Лол, какие сто срок то, подключить библиотеку и одной строкой замапить в обьект?

11 22 янв, 17:18 11 1332659

>>1332596
5 минут и 8 строчек (не считая data-класса). ЧЯДНТ?

HttpClient client = HttpClient.newBuilder().build();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("http://demo0424665.mockable.io/hui"))
.header("Content-Type", "application/json")
.GET()
.build();

HttpResponse<String> httpResponse = client.send(request, HttpResponse.BodyHandlers.ofString());

Response response = new ObjectMapper().readValue(httpResponse.body(), Response.class);

Ответы3315240632

12 23 янв, 11:13 12 1333152

>>1332659
Ты компьютерный гений?

13 23 янв, 14:31 13 1333360

Поясните простыми словами, что такое JavaBean и зачем он нужен? Что такое model в MVC? Что такое JSP и зачем он нужен, кто генерирует JSP, почему нельзя заменить его на HTML страницу?

Ответы33377

14 23 янв, 14:53 14 1333377

>>1333360
>что такое JavaBean и зачем он нужен

Типа обычный класс с сериализацией и геттерами сеттерами.

Нужен чтобы скармливать интырпрайзной поеботе.

> Что такое model в MVC

хранилище данных и его логика

> Что такое JSP

Стандартный жабошаблонизатор из бородатых годов. Шаблонирует шаблоны.

> почему нельзя заменить его на HTML страницу?

Вопрос в 2к19 нужно заменить на другой:

> "Нахуя его использовать в эпоху SPA и реакта"

15 23 янв, 17:33 15 1333474

Сап, после двух месяцев самостоятельного обучения, начал потихоньку писать первый проект, попутно применяя полученные знания/техники и столкнулся с такой проблемой: я понимаю как работают классы, методы, объекты и тд, но не понимаю когда и что лучше применить.
Например, я пытаюсь написать подобие электронной школы, то есть где хранятся оценки, дата по ученикам, расписания, все такое. И вот постоянно ломаю голову для чего создавать отдельный класс, массив, объект и прочие вещи. Например создавать ли отдельные классы для отдельных предметов(уроков), использовать ли наследование при этом, либо вообще не создавать классов для этого, а вносить всю дату непосредственно в объекты(учеников). И подобные вопросы встают на каждом шагу.
Вопрос: стоит ли мне сейчас над этим так задумываться, или просто делать как удобно? Я свободно владею английским, но не могу найти подходящее объяснение в каких именно ситуациях что использовать, лишь определения по типу "что такое класс", а это и так понятно.

Ответы33479335683359033932

322 Кб, 450x326
16 23 янв, 17:39 16 1333479

>>1333474
> я понимаю как работают классы, методы, объекты и тд, но не понимаю когда и что лучше применить.

17 23 янв, 18:56 17 1333504

Двач, полный ноль в програмировании, хочу вкатиться. В моей мухосрани открываются курсы по яве, при одной компании. Требования пздц низкиеу меня с английским туго, а там всего лищь а1-а2 надо, поэтому хочу туда попасть. Основное требование это
>базовые навыки программирования с использованием любого объектно-ориентированного языка
Я в душе не ебу что такое ООП, и за сколько можно выучить джаву, чтоб жойти до этого самого ООП. И базовые навыки это на сколько?
До 8 февраля подача документов

Ответы335063376933836

18 23 янв, 18:59 18 1333506

>>1333504
>хочу вкатиться
>не может в гугл

Ответы33508

19 23 янв, 19:03 19 1333508

>>1333506
Нормально же общались

56 Кб, 815x489
20 23 янв, 21:22 20 1333564

И вот это считается читабельней чем xml?

21 23 янв, 21:25 21 1333568

>>1333474
Изи. Никакого наследования. Хранение в базе
PupilService
CheduleService
ReportService

И сущности PupilEntity, ScheduleEntity, LessonEntity и т.д.

22 23 янв, 21:53 22 1333590

>>1333474
Всё, что является объектом - класс, урок, школа, расписание и т.д, можно и нужно сделать классом. К наследованию подходи осторожно - не применяй его там, где оно не нужно, и не плоди сложные иерархии. Предпочитай композицию наследованию.

Очевидно, что учителя и ученика можно занаследовать от абстрактного пёрсона, а вот лицей и школу разными классами делать не стоит - они должны отличаться стратегиями преподавания. Школа-интернат может наследовать интерфейс школы и тем самым декорировать как лицей, так и обычную школу, добавляя в эти классы новое поведение. Это тебе для затравки, а дальше думай сам. Можешь закодить и закинуть на гитхаб, что получится.

Но для начала настоятельно рекомендую ознакомиться, что такое SOLID, а потом прочитать Head First Design Patterns, где эта концепция раскрывается вместе с основными паттернами проектирования.

Ответы33932

23 23 янв, 22:15 23 1333604

Есть enum класс с несколькими final int полями.
Есть кусок кода заточенный на производительность.
Есть два стула написать: x = object.getMyPropertyValue() или объявить свойство public final и написать x = object.myPropertyValue

Где:
public int getMyPropertyValue() {
return myPropertyValue
}

Аргументы за первый вариант: Это правильно с точки зрения кода
Аргументы против первого варианта: Вызов функции ради извлечения четырёх байт - не круто
Аргументы за второй метод: Это должно работать быстрее
Аргументы против второго варианта: Код менее читабельный.

Сидел ебал я себе мозг, а потом вспомнил о такой херне как оптимизация при компиляции и компоновка коротких методов в inline функции с последующим вынесением их в целевой код. Но я нихера не помню, будет ли вынесено чтение private/protected метода или нет? Сейчас что-то этот пункт в описание найти не могу, там только говориться о коротких методах.
Выберите мне стул

Ответы33638

24 23 янв, 22:23 24 1333610

Если кому-то надо написать заебенный КрУД на Спринге, советую взять PetClinic. Офигенный CRM, в нём тонна примеров того, как надо. Хочу написать на его основе ПО для местного приюта животных, с доступом для кураторов животных, отслеживанием прививок, сбором денег.

https://github.com/spring-projects/spring-petclinic

25 23 янв, 23:04 25 1333630

Посоны, в Спринге есть аннотация @Autowired, которая судя по документации заменяет сеттеры и геттеры при связи репозитория, сервиса и контроллера. Правильно ли я понимаю, что это ужасный, построенный на рефлексии, костыль, который лучше не использовать?

Ответы336353363833950

26 23 янв, 23:12 26 1333635

>>1333630
>Посоны, в Спринге есть аннотация @Autowired, которая судя по документации заменяет сеттеры и геттеры при связи репозитория, сервиса и контроллера. Правильно ли я понимаю, что это ужасный, построенный на рефлексии, костыль, который лучше не использовать?
А на чём ему ещё быть? Но он теоретически не так страшен, так-как по "уму" должен использоваться единожды при инициализации глобальных переменных.

27 23 янв, 23:34 27 1333638

>>1333604
Сложнее инлайнить методы, которые могут быть переопределены в сабклассах. С private или static методом вероятность наоборот будет выше. Попробуй это и проверь, инлайнится или нет.
http://normanmaurer.me/blog/2014/05/15/Inline-all-the-Things/
Но оно должно того стоить - т.е. JIT должна посчитать метод достаточно горячим, чтобы от этого был профит.
С позиции дизайна, Джош Блок считает, что раскрытие иммутабельного final поля неоднозначно, но допустимо.

>>1333630
Нет, ты понял неправильно. Почитай сначала, что такое inversion of control. @Autowired это добро, и эта аннотация не заменяет ни геттеры, ни сеттеры. Спринг даёт тебе IoC-контейнер и сам управляет инициализацией классов и внедрением зависимостей. @Autowired означает, что в поле твоего экземпляра нужно засунуть экземпляр другого класса из контейнера. Причем хорошей практикой является использование интерфейса, чтобы Спринг сам заинжектил подходящую реализацию. Реализация может быть выбрана на основе профиля, мок-реализация может быть использована в интеграционных тестах, и т.д.

И не используй @Autowired с private полями, желательно всё инжектить с помощью конструкторов.

28 24 янв, 10:39 28 1333769

>>1333504
>английским
какой город?

Ответы33792

29 24 янв, 11:21 29 1333792

>>1333769
Гродно

30 24 янв, 12:36 30 1333836

>>1333504
https://www.udemy.com/java-simple2advanced/

16 Кб, 673x57
31 24 янв, 12:38 31 1333840

как разобрать жсон при помощи этой хуйни длинее 51200 знаков?
http://www.jsonschema2pojo.org/

Ответы3384333844

32 24 янв, 12:43 32 1333843

>>1333840
Попробуй плагином в идее
https://plugins.jetbrains.com/plugin/8634-robopojogenerator

Ответы33855

33 24 янв, 12:44 33 1333844

>>1333840
Попробуй это https://codebeautify.org/

34 24 янв, 12:59 34 1333851

Как в Идее настроить положение курсора после автокомплита? Например, надо написать Set<Integer>, я набираю на клавиатуре Set<Int в этом месте появляется подсказка, я жму Enter> И курсор остается внутри скобки, перед >
Типа вот так Set<Integer |>, а я же хочу вот так Set<Integer> |, чтобы без лишних нажатий набрать имя переменной и не жать End. Я что-то не понимаю? Это можно настроить?

35 24 янв, 13:02 35 1333855

>>1333843
обнял

36 24 янв, 14:20 36 1333932

>>1333474
>>1333590

Тащем-то анон все расписал. Но я добавлю.

Если в универе не прогуливал философию, то помнишь, что Аристотель выводил форму и материю.

Представь стакан в своей голове, он нематериален – это форма, т.е. класс. Он не занимает никакого пространства.

По форме создается сущность – т.е. форма, заполненная материей (стакан на твоем столе). Это объект, созданный по некому классу. Он физически есть на диске в виде байтиков. Эти объекты по разному заполнены материей (отличаются свойствами (значением полей), один стакан толще, другой выше), тем самым, объекты одного класса отличаются друг от друга (помимо ссылки). У любого объекта есть метод .toEquals(), переопределив его можно сравнивать объекты одного класса.

Кроме того, объекты делятся на низшие (т.н. POJO или DTO) и высшие.

Низшие объекты – это тупые объекты, болванки. Они просто несут информацию. Тут подробнее (https://www.yegor256.com/2016/07/06/data-transfer-object.html). Высшие объекты это те, которые проявляют некоторую активность (т.е. имеют функции).

Кроме того, есть интерфейсы. Взять тот же стакан – основная его цель это удерживать жидкость. Т.е. он имеет некий контракт. Если он выглядит как стакан, но не имеет дна – это не стакан, т.к. он не отвечает контракту (интерфейсу) на удерживание воды – она будет выливаться.

37 24 янв, 14:33 37 1333950

>>1333630
При чем тут вообще сервисы/репозитории? Это аннотация для автоматической подстановки зависимостей (бинов) из спринг-контейнера. Вообще весь спринг - это сплошная рефлексия, включая @Autowired. Короче говоря, не понял ты ничего.

38 24 янв, 15:15 38 1333967

https://pastebin.com/iDwyKyki
Достаточно MVC-шно? Или лучше метод updateColor перенести в контроллер? И еще запуск приложения через метод init это какая-то хуита, но для FX я не нашел других вариантов.

2,6 Мб, 4000x2664
39 24 янв, 18:08 39 1334150

Посоветуйте пожалуйста годные книги по спрингу (желательно в переводе, но не критично), на ютубе стоющих видосов не нашел. А документацию читать для меня тяжело.

Ответы341523417334192

40 24 янв, 18:10 40 1334152

>>1334150
ПРУЖИНА В ДЕЙСТВИИ

Ответы3419235463

41 24 янв, 18:30 41 1334173

>>1334150
Попробуй любой из популярных курсов на udemy.

42 24 янв, 18:41 42 1334192

>>1334150
смари читаешь >>1334152
если не заходит и хочешь понять как внутреняя магия работает то читаешь спринг про 4 или смотришь доклад Борисова спринг потрошитель

а вообще официальные мануалы/ документации нормас вроде

Ответы35463

43 24 янв, 18:51 43 1334203

Аноны, можно в swagger ui заменить тип параметра?
Например в методе:
public void foo(@RequestBody String bar) {...}
необходимо, чтобы вместо String отображался другой класс, но использовать класс прямо в параметре не могу.

44 25 янв, 10:51 44 1334508

Посоны, как вернуть результат из блока try catch?
есть код вида
String yoba;<-результат вернуть сюда
try{
разные действия;
yoba=результат разных действий;
}catch{}
Вывод(йоба);

Ретурн не работает

Ответы34512

45 25 янв, 11:07 45 1334512

>>1334508
Запихни в finally

46 25 янв, 15:47 46 1334594

Посоны, два вопроса.

1. В большинстве случаев в Spring.boot+Hibernate люди оборачивают методы класса-Репозитория методами класса-Сервиса, и из Контроллера вызывают уже эти классы.
В отдельных случаях из Контроллера вызывают напрямую классы Репозитория. В чём плюсы?

2. Я написал метод поиска элемента по названию. Создаю форму, получаю искомое значение, перебираю Репозиторий, выбираю совпадения, вывожу их. Все верно?

Ответы3460634716

47 25 янв, 16:25 47 1334606

>>1334594
>2. Я написал метод поиска элемента по названию. Создаю форму, получаю искомое значение, перебираю Репозиторий, выбираю совпадения, вывожу их. Все верно?

В смысле, не слишком ли это по велосипедному?

48 25 янв, 18:52 48 1334716

>>1334594
1. репозиторий отвечает за сохранение/получение данных в бд, а сервис за обработку этих данных. можешь менять реализацию репозитория (запилить все через JDBC, например) или сервиса(после извлечения firstName добавить к нему "tvoya_mamka"), и если они сохраняют/расширяют уже имеющиеся интерфейсы, то все заебись будет. вся эта делается, чтобы твоя абстракция не зависела от конкретной реализации.
2. для себя - сойдет, но в спринге есть JpaRepository, например, который все делает без тебя. читай документацию.

Ответы34721

49 25 янв, 19:09 49 1334721

>>1334716
>2. для себя - сойдет, но в спринге есть JpaRepository, например, который все делает без тебя. читай документацию.
Там есть только
1) findById(id) - очевидный вариант
2) findOne() - хз, как он работает, но возвращает 1 результат. А я написал поиск с выводом списка подходящих вариантов (похожие названия и иные поля).

Ответы34739

50 25 янв, 19:48 50 1334739

>>1334721
Там есть все методы для всех полей, которые у тебя есть в твоей сущности, читай внимательнее.

Ответы34754

51 25 янв, 20:11 51 1334754

>>1334739
Есть метод findOne()

Returns a single entity matching the given Example or null if none was found.

Throws:
IncorrectResultSizeDataAccessException - if the Example yields more than one result.

Поиск в базе данных не по Id (PrimaryKey) может дать множество значений, поэтому разумнее вывести список.

Ответы3475534757

52 25 янв, 20:12 52 1334755

>>1334754
>дать множество значений
Кроме того, пользователь может искать только по одному полю из множества.

53 25 янв, 20:16 53 1334757

>>1334754
Читай внимательнее про репозитории в спринге. Он сам генерирует все необходимые методы для поиска чего угодно по любым полям.

Ответы34767

54 25 янв, 20:19 54 1334758

Это нормально, что мой парсер переводит данные сначала в одну промежуточную струкруру, потом в другую, потом еще в одну и только потом в нужную мне?

Ответы36360

55 25 янв, 20:45 55 1334767

>>1334757
Для поиска по id я использую, тут всё просто.
Optional<Book> book = this.bookRepository.findById(id);

@Override
public Book getBook(Integer id) {
//return bookRepository.findOne(id);
Optional<Book> book = this.bookRepository.findById(id);
if (book.isPresent()) {
return book.get(); // If a value is present in this Optional, returns the value, otherwise throws NoSuchElementException.
} else {
return null;
}
}

Но допустим, мне нужно создать форму поиска, позволяющую искать книгу по заголовку (пользователь может внести, например, только заголовок). Моя конструкция выглядит так:

@GetMapping("/books/search")
public String showSearchForm(Model model) {
Book book = new Book();
model.addAttribute("book", book);
return "/books/searchForBook";
}

@PostMapping("/processSearchForm")
public String processSearchForm(Book bookToFind, Model model) {
List<Book> foundBooks = new ArrayList<>();
// strict search by ID
if (bookToFind.getId() != null) {
foundBooks.add(bookService.getBook(bookToFind.getId()));
}
// search by title & author
else
{
for (Book currentBook : bookService.getAllBooks())
{
if (bookToFind.getBookTitle()!= "" && currentBook.getBookTitle().toLowerCase().contains(bookToFind.getBookTitle().toLowerCase()))
{
foundBooks.add(currentBook);
}
else if (bookToFind.getBookAuthor() != "" && currentBook.getBookAuthor().toLowerCase().contains(bookToFind.getBookAuthor().toLowerCase()))
{
foundBooks.add(currentBook);
}
}
}
model.addAttribute("books", foundBooks);
return "/books/booksList";
}

Это позволяет мне получать список со всеми книгами, в заголовке которых есть искомая строка.

1. Для чего мне нужен findOne в данной схеме?
2. При попытке реализовать findOne(Book book) у меня подсвечивается ошибка:
inferred type s for type parameter s is not within its bound should extend...

Конструкция
Optional<Book> book = this.bookRepository.findOne(Optional.of(bookToFind));
не помогает.

55 25 янв, 20:45 55 1334767

>>1334757
Для поиска по id я использую, тут всё просто.
Optional<Book> book = this.bookRepository.findById(id);

@Override
public Book getBook(Integer id) {
//return bookRepository.findOne(id);
Optional<Book> book = this.bookRepository.findById(id);
if (book.isPresent()) {
return book.get(); // If a value is present in this Optional, returns the value, otherwise throws NoSuchElementException.
} else {
return null;
}
}

Но допустим, мне нужно создать форму поиска, позволяющую искать книгу по заголовку (пользователь может внести, например, только заголовок). Моя конструкция выглядит так:

@GetMapping("/books/search")
public String showSearchForm(Model model) {
Book book = new Book();
model.addAttribute("book", book);
return "/books/searchForBook";
}

@PostMapping("/processSearchForm")
public String processSearchForm(Book bookToFind, Model model) {
List<Book> foundBooks = new ArrayList<>();
// strict search by ID
if (bookToFind.getId() != null) {
foundBooks.add(bookService.getBook(bookToFind.getId()));
}
// search by title & author
else
{
for (Book currentBook : bookService.getAllBooks())
{
if (bookToFind.getBookTitle()!= "" && currentBook.getBookTitle().toLowerCase().contains(bookToFind.getBookTitle().toLowerCase()))
{
foundBooks.add(currentBook);
}
else if (bookToFind.getBookAuthor() != "" && currentBook.getBookAuthor().toLowerCase().contains(bookToFind.getBookAuthor().toLowerCase()))
{
foundBooks.add(currentBook);
}
}
}
model.addAttribute("books", foundBooks);
return "/books/booksList";
}

Это позволяет мне получать список со всеми книгами, в заголовке которых есть искомая строка.

1. Для чего мне нужен findOne в данной схеме?
2. При попытке реализовать findOne(Book book) у меня подсвечивается ошибка:
inferred type s for type parameter s is not within its bound should extend...

Конструкция
Optional<Book> book = this.bookRepository.findOne(Optional.of(bookToFind));
не помогает.

Показать весь текст
Ответы3476834802

56 25 янв, 20:47 56 1334768

>>1334767
Какой ты хуйней страдаешь, открой уже петклиник да посмотри как там сделано. Я не видел, но наверняка там используется интерфейс CRUDRepository и нет такого говна в контроллере.

Ответы34779

57 25 янв, 21:02 57 1334779

>>1334768

1. ПэтКлиник недалеко ушёл.
2. Да, я делаю велосипед, но только для того, чтобы разобраться.

@GetMapping("/owners/find")
public String initFindForm(Map<String, Object> model) {
model.put("owner", new Owner());
return "owners/findOwners";
}

@GetMapping("/owners")
public String processFindForm(Owner owner, BindingResult result, Map<String, Object> model) {

// allow parameterless GET request for /owners to return all records
if (owner.getLastName() == null) {
owner.setLastName(""); // empty string signifies broadest possible search
}

// find owners by last name
Collection<Owner> results = this.owners.findByLastName(owner.getLastName());
if (results.isEmpty()) {
// no owners found
result.rejectValue("lastName", "notFound", "not found");
return "owners/findOwners";
} else if (results.size() == 1) {
// 1 owner found
owner = results.iterator().next();
return "redirect:/owners/" + owner.getId();
} else {
// multiple owners found
model.put("selections", results);
return "owners/ownersList";
}
}

И репозиторий:

public interface OwnerRepository extends Repository<Owner, Integer> {

/
Retrieve {@link Owner}s from the data store by last name, returning all owners
whose last name <i>starts</i> with the given name.
@param lastName Value to search for
@return a Collection of matching {@link Owner}s (or an empty Collection if none
found)
/
@Query("SELECT DISTINCT owner FROM Owner owner left join fetch owner.pets WHERE owner.lastName LIKE :lastName%")
@Transactional(readOnly = true)
Collection<Owner> findByLastName(@Param("lastName") String lastName);

57 25 янв, 21:02 57 1334779

>>1334768

1. ПэтКлиник недалеко ушёл.
2. Да, я делаю велосипед, но только для того, чтобы разобраться.

@GetMapping("/owners/find")
public String initFindForm(Map<String, Object> model) {
model.put("owner", new Owner());
return "owners/findOwners";
}

@GetMapping("/owners")
public String processFindForm(Owner owner, BindingResult result, Map<String, Object> model) {

// allow parameterless GET request for /owners to return all records
if (owner.getLastName() == null) {
owner.setLastName(""); // empty string signifies broadest possible search
}

// find owners by last name
Collection<Owner> results = this.owners.findByLastName(owner.getLastName());
if (results.isEmpty()) {
// no owners found
result.rejectValue("lastName", "notFound", "not found");
return "owners/findOwners";
} else if (results.size() == 1) {
// 1 owner found
owner = results.iterator().next();
return "redirect:/owners/" + owner.getId();
} else {
// multiple owners found
model.put("selections", results);
return "owners/ownersList";
}
}

И репозиторий:

public interface OwnerRepository extends Repository<Owner, Integer> {

/
Retrieve {@link Owner}s from the data store by last name, returning all owners
whose last name <i>starts</i> with the given name.
@param lastName Value to search for
@return a Collection of matching {@link Owner}s (or an empty Collection if none
found)
/
@Query("SELECT DISTINCT owner FROM Owner owner left join fetch owner.pets WHERE owner.lastName LIKE :lastName%")
@Transactional(readOnly = true)
Collection<Owner> findByLastName(@Param("lastName") String lastName);

Показать весь текст
Ответы34781

58 25 янв, 21:04 58 1334781

>>1334779
>Да, я делаю велосипед, но только для того, чтобы разобраться
Еще раз, разбирайся правильно. https://habr.com/ru/post/139421/

Ответы34796

59 25 янв, 21:24 59 1334796

>>1334781
>Еще раз, разбирайся правильно.
>Не буду объяснять свою позицию, буду загадочно умничать и слать в гугл.

Ответы34797

60 25 янв, 21:25 60 1334797

>>1334796
Я тебе уже все объяснил и дал ссылку на конкретный пример, но ты, видимо, просто не хочешь разбираться.

Ответы34805

61 25 янв, 21:31 61 1334802

>>1334767
Зачем ты фильтруешь в джаве, когда есть sql? Пишешь метод в BookRepository: List<Book> findByTitle(String title). Все.
По поводу findOne. Он использует EntityManager.getReference(...) и возвращает прокси (НИКОГДА null), и если объект не найден, то при первом обращении к этому прокси вывалится EntityNotFoundException (см. доки на EntityManager).

Ответы34809

62 25 янв, 21:33 62 1334805

>>1334797
>Я тебе уже все объяснил
Нет, ты токсичный дурак, который самоутверждается на анонимном форуме.

Ответы34807

63 25 янв, 21:35 63 1334807

>>1334805
>CRUDRepository
>сам генерирует все необходимые методы для поиска чего угодно по любым полям
>Там есть все методы для всех полей, которые у тебя есть в твоей сущности

64 25 янв, 21:36 64 1334809

>>1334802
>Зачем ты фильтруешь в джаве, когда есть sql?
На данном этапе я работаю с h2. Когда пропишу все методы работы с объектами, переключусь с h2 на SQL.

>Пишешь метод в BookRepository: List<Book> findByTitle(String title).
Спасибо.

>По поводу findOne. Он использует EntityManager.getReference(...) и возвращает прокси (НИКОГДА null), и если объект не найден, то при первом обращении к этому прокси вывалится EntityNotFoundException (см. доки на EntityManager).
Спасибо.

Ответы3481234814

65 25 янв, 21:44 65 1334812

>>1334809
Бтв, я перепутал, не findOne, а getOne. Если тебе нужно найти по произвольным полям, причем некоторые могут быть null, попробуй query by example.

66 25 янв, 21:47 66 1334814

>>1334809
h2 это такая же бд, хоть она у тебя и в памяти. Пиши сразу sql репозитории, потом сможешь заменить базу, а код менять не придется.

67 26 янв, 08:23 67 1334989

>>1332296 (OP)
Нубский вопрос

Создал проект Spring Initializr.
Запихнул в него index.html со скриптом.
Скрип посылает запрос get.
@GetMapping метод принимает запрос и возвращает строку.
Скрипт отправлявший запрос отлавливает строку, вплоть до этого момента всё работает как и ожидалось.
Но затем содержимое html-страницы подменяется строкой (если был прописан @RESTController, иначе в ответ на запрос GET возвращается хуйня).

Как предотвратить подмену содержимого страницы?

Ответы349963499734999

29 Кб, 640x640
68 26 янв, 09:09 68 1334995

Есть один джун (я), год опыта разработки, пилю круды с mybatis, поебошился с бинфакторипостпроцессорами и рефлексией, неплохо знаю oracle, в принципе знания норма. Единственная популярная вещь которую не трогал это hibernate и прочие ORM.
Джун хочет съебать из этой страны. Английский в порядке. Откуда начинать? Пока зарегался на linkedin, но что делать дальше непонятно.

Ответы35374

69 26 янв, 09:20 69 1334996

>>1334989
У тебя там какие где URL?
1) html это наверное "/index.html"
2) в form action у тебя что?

>Но затем содержимое html-страницы подменяется строкой
Ты просто перешёл на другую страницу

Ответы35012

70 26 янв, 09:25 70 1334997

>>1334989
Ты хоть ajax используешь? Если нет, то у тебя просто страница открывается с твоей строкой.

Ответы35012

71 26 янв, 09:28 71 1334999

>>1334989
нужно установить возвращаемую строку, как атрибут модели:

model.addAttribute("name", name);

включить этот атрибут в html страницу с помощью какого-нибудь thymeleaf:

<p th:text="'Hello, ' + ${name} + '!'" />

Ответы35012

72 26 янв, 10:15 72 1335012

>>1334996
>>1334997
>>1334999

Я вообще неправильно отправлял запрос GET. Я обращался к localhost:8080, и поэтому ответ подменял собой index.html.
Сейчас обращаюсь к localhost:8080/controller и всё отрабатывает как надо.
Единственная проблема - браузер постоянно цепляет старую версию скрипта, которая посылает запрос на localhost:8080.
Старый файл с яваскриптом цепляется из кэша браузера?

Ответы35093

73 26 янв, 12:40 73 1335093

>>1335012
Можешь в режиме инкогнито открывать.

Солидол Иваныч 74 26 янв, 13:05 74 1335119

Пацаны, если мой английский недостаточно хорош чтобы читать книги в оригинале, могу ли я spring in action третье издание переведённое прочитать? Много потеряю?

Ответы35135

107 Кб, 1422x691
75 26 янв, 13:08 75 1335123

В какой программе можно сделать подобную диаграмму, желательно быстро (это UML или SysML)?

Ответы35136

76 26 янв, 13:13 76 1335135

>>1335119
>третье издание
ну хотя бы четвёртое, братан, там уже пятое вышло два месяца назад

Ответы35138

77 26 янв, 13:14 77 1335136

>>1335123
Попробуй starUML

Ответы35150

Солидол Иваныч 78 26 янв, 13:15 78 1335138

>>1335135
В русском только 3-е нашёл, пробовал читать пятое но пиздец быстро устаю.

79 26 янв, 13:27 79 1335150

>>1335136
Спасибо, то, что надо.

80 26 янв, 16:50 80 1335374

>>1334995
плиз респонд

81 26 янв, 16:54 81 1335377

>>1332296 (OP)
Это нормально в ДС3 получать 70к с 5 годами опыта в серверной джаве?

Ответы35389

82 26 янв, 17:13 82 1335389

>>1335377
братан я живу в миллионнике мне дали 70к после стажировки
беги оттуда

Ответы35394

83 26 янв, 17:21 83 1335394

>>1335389
Ну, под дс 3 я имел в виду Новосибирск.

84 26 янв, 18:56 84 1335460

Всем привет.

Кто может объяснить, или скинуть годную статью по теме как происходит взаимодействие backend(Spring) с frontend(JS). Нагуглил про AJAX и прочее, но это только еще больше меня запутало. Раньше старался не лезть в мир фронтенда, но обстоятельства заставили. Например представим ситуацию: моя задача написать на серверной стороне спринговое веб-приложение которое ходит в бд и возвращает данные для отображения на странице. Как это сделать по-современному? Потому что раньше я делал это только через jsp и прочие статические вьюхи, без js на стороне клиента. Интересно как это происходит в реальном мире?

Ответы35466

85 26 янв, 18:59 85 1335463

>>1334192
>>1334152
спасибо

86 26 янв, 19:01 86 1335466

>>1335460
REST на бекенде (@RestController и иже с ним), и какой-нибудь способ слать HTTP запросы с фронта (в каком-нибудь Angular.js эта штука есть из коробки). Фронт ходит по REST эндпоинтам и получает данные с бекенда. Ну, это если коротко.

Ответы35490

87 26 янв, 19:47 87 1335490

>>1335466
Понял, спасибо, а есть видео/статья где это подробно описуется? Буду очень благодарен.

Еще по REST вопрос. Я так понимаю это отдача данных по HTTP обычным JSON/XML/etc ?

Ответы35505

88 26 янв, 20:05 88 1335505

>>1335490
Да ты открой гайды по спринг буту. Там есть 5 минутные гайды, где собирают такой рест сервис.
Да, обычно отдача инфы идет в формате JSON, реже в XML. Иногда бывает, что нужно отдать какой-нибудь файл, например - тут отдаешь бинарный поток.
Обычно делается так - один докер контейнер, в котором крутится nginx и твой фронт. nginx раздает статику и хранит в себе твою фронт-логику. Также nginx проксирует запросы к твоему API через себя и к твоему Spring Boot (или что там у тебя) приложению, которое развернуто в другом докер контейнере.
Такие дела.

89 26 янв, 20:13 89 1335509

Посоны, покритикуйте КрУД на Спринг.Буте -
https://github.com/spitfireoverwatch/BookManager_Spring.boot
Чего ещё к нему добавить, помимо подключения к SQL вместо H2?

Ответы35521355413560535608356113561238303

90 26 янв, 20:37 90 1335521

>>1335509
Добавить папку /src/test/

Ответы35548

91 26 янв, 21:49 91 1335541

>>1335509

Чем пользовался? Доки мануалы книги?
Сколько времени потратил?

1) Запили read.me где расскажи как запускать.
(mvn compile spring-boot:run)
2) Что за хипстерские maven враперы?

Ответы35550

92 26 янв, 22:15 92 1335548

>>1335521
Я добавил тест в гитигнор

Ответы35549

93 26 янв, 22:15 93 1335549

>>1335548
...зачем?

94 26 янв, 22:18 94 1335550

>>1335541
>2) Что за хипстерские maven враперы?
Для сборки и запуска без установленного maven

>Чем пользовался? Доки мануалы книги?
>Сколько времени потратил?
Туториалы + документация. Потратил довольно много времени на чтение, само приложение пишется быстро. Думаю, суммарно вышло по несколько часов в течение дней четырёх. 90% - чтение.

95 27 янв, 00:29 95 1335600

>>1332596
Я вот после джавы - жабаскрипт осиливаю. Пиздец это говно кривое. Просто пиздец. Как на нем писать.
Зная немного С и питон не лезет вообще, организм прям отторгает.

96 27 янв, 00:35 96 1335605

>>1335509
Тестов допиши. И у тебя логика в контроллере что не ок. Переноси в сервис.

Ответы35777

97 27 янв, 00:36 97 1335608

>>1335509
Лапша из ифов в контроллере ну такое себе.

Ответы356123577738306

98 27 янв, 00:41 98 1335611

>>1335509
ещё раз напишешь скобку на новой строке приеду и руки тебе отломаю сишник ебаный

Ответы35757

99 27 янв, 00:43 99 1335612

>>1335509
>>1335608
> bookToFind.getBookTitle()!= "" && currentBook.getBookTitle().toLowerCase().contains(bookToFind.getBookTitle().toLowerCase()))
> (bookToFind.getBookAuthor() != "" && currentBook.getBookAuthor().toLowerCase().contains(bookToFind.getBookAuthor().toLowerCase()))
зачем пустую строку проверяшь наркоман
null хотел написать?

Ответы3561535757

100 27 янв, 00:45 100 1335615

>>1335612
Я в это даже вчитываться не стал, лол.

101 27 янв, 03:27 101 1335668

Подскажите гросс зп в дс для джуна, мидла и сеньора

Ответы3567035698

102 27 янв, 03:30 102 1335670

>>1335668
У нас в оффисе все программисты получают минимум 150к, и это даже не джуниоры, а какие то духи 16-ти летние после школы.

103 27 янв, 08:13 103 1335698

>>1335668
Миддл с 5 годам опыта получает примерно 120к.

104 27 янв, 10:15 104 1335714

Создает ли использование в сервис-эксепшенах @ResponseStatus зависимость сервис-слоя от веб-слоя? И вообще правильно ли использовать эксепшены в сервисах, если, например, сущность не найдена, или лучше возвращать Optional.empty?

Ответы36365

105 27 янв, 10:25 105 1335717

кто-нибудь юзал appenging гугловый? как впечатления?

Ответы35718

106 27 янв, 10:25 106 1335718

>>1335717
>app-engine

107 27 янв, 11:29 107 1335757

>>1335612
>зачем пустую строку проверяшь наркоман
>null хотел написать?
Если пользователь оставляет строку поиска пустой, она возвращает "", а не null

>>1335611
>ещё раз напишешь скобку на новой строке приеду и руки тебе отломаю сишник ебаный
но... но соглашение о стиле кода...

Ответы35931

Spring MVC CRUD 108 27 янв, 11:41 108 1335760

Сломал голову и гугл не помог.
Сделал круд, даже кириллицу отображает нормально (та ещё проблема)

И я решил сам себя взломать мамкин хакер
В форме отправляю теги, но они все отображаются просто как текст!
Пишу в форме <h1>Fuck</h1>
Вывод получаю такой же <h1>Fuck</h1> (смотрю результирующий html, там лишних тегов нет, но эти теги не подсвечиваются )
С кодировкой что-то наверное?

Ответы35765

109 27 янв, 11:51 109 1335765

>>1335760
А ты блядь сам понял!
В хроме если по F12 код смотреть то там он не подсвечивает теги потому что это блядь не теги а < и >
И у видеть это можно только если нажать редактировать как html!

Ответы35766

110 27 янв, 11:52 110 1335766

>>1335765
>не теги а < и >
& lt
& gt

Ну вы поняли

111 27 янв, 12:04 111 1335777

>>1335605
>>1335608
Пофиксил, спасибо.

Стало красиво и аккуратно:
@PostMapping("/processSearchForm")
public String processSearchForm(Book bookToFind, Model model) {
model.addAttribute("books", bookService.getBookByFields(bookToFind));
return "/books/booksList";
}

112 27 янв, 13:02 112 1335812

часто стал видеть ОЧЕНЬ положительные отзывы о javarush, а мне как раз нужна хорошая практика и задачки.. скажите плз стоит ли тратить деньги (которых немного ибо студент) на их подписку, если нет то какие есть альтернативы ему? можете предлагать англоязычные, тк с ним все ок

Ответы3582835832358353584335870

113 27 янв, 13:54 113 1335828

>>1335812
Нет не стоит. Выкинутые деньги. Все есть в шапке.

114 27 янв, 13:57 114 1335832

>>1335812
Если тебе нужны именно КУРСЫ чтобы тебя учили, можешь сразу забить на попытки начать кодить вообще, лол.

Ответы35836

115 27 янв, 13:59 115 1335835

>>1335812
>скажите плз стоит ли тратить деньги (которых немного ибо студент) на их подписку
Да. Я с удовольствием 3/4 их курса прошёл.

Ответы35843

116 27 янв, 13:59 116 1335836

>>1335832
не курсы а задачки

Ответы35860

117 27 янв, 14:06 117 1335843

>>1335835
>>1335812
Поясняю за Javarush.
Это сервис автоматической проверки кода. Ты пишешь код по заданию, валидатор проверяет код. Начинаешь с хелло ворд, но уже скоро пишешь маленькие приложения, работаешь с потоками, файлами, объектами.
Бывают очень заковыристые задачи. Валидатор в 90% случаев проверяет точно, при этом у тебя есть возможность решить поставленную задачу несколькими путями. Будет несколько задач, где валидатор будет лютовать.
Теория там вся из книг, но теорию ты можешь почерпнуть без них, из книг и туториалов. То есть вся фишка Javarush вовсе не в каких-то лекциях, семинарах, вебинарах, прочей лабуде уровня Skillbox, а именно в получении сотен часов простой практики.
Быстро пробежавь Javarush с нуля, можешь переходить к фреймворкам вроде Спринга, писать веб-приложения и КрУДы для баз данных, после чего идти и работать.
Мне лично Javarush много дал, я доволен.

Ответы35864

118 27 янв, 14:13 118 1335860

>>1335836
Осваиваешь синтаксис.
+ читаешь всякие хед ферст / кук бук с паттернами/алгоритмами.
И дальше ПРОСТО:
Пиши свое что нибудь, неважно что.
Калькулятор, часы, радио, генератор лабиринтов + решение этих лабиринтов (поиск в ширину), игры на любом движке, говномикросервисы, что угодно.
И пока ты это будешь писать будешь решать реальные задачи.
Копать стаковерфлоу и дрочить с самыми банальными моментами, которые потом войдут в подкорку.

Задачки для олимпиадников.

119 27 янв, 14:15 119 1335864

>>1335843
Круды, лол. Интерфейс написать и пару аннотаций добавить. Пиздос там сложно то.

Ответы35901

120 27 янв, 14:20 120 1335870

>>1335812
Только для умственно отсталых.

Ответы35892

121 27 янв, 14:43 121 1335889

Где можно оценить свой хеловорд на спринге?

Ответы35894

122 27 янв, 14:47 122 1335892

>>1335870
похоже на то, плохо становится когда вижу эти ресунки и ОЧЕНЬ ИНТЕРЕСНЫЕ ИСТОРИИ

123 27 янв, 14:50 123 1335894

>>1335889
Сюда выкладывай, пацаны оценят!

124 27 янв, 14:54 124 1335895

Блядь, хуилы, вы мне напомнили как я будучи безработным студентом задрачивал codewars. Такая параша, господи прости меня. Какие-то математичкеские задачки, операции над массивами, хуета ебаная которая нахуй никому не нужна, про саму джаву и её особенности ноль. Даже коллекции нормально не присутсвовали по моему. Абсолютная трата времени, аж забомбило немного.

Ответы358973589935904

125 27 янв, 14:55 125 1335897

>>1335895
А на собесе что говорил?

Ответы35918

126 27 янв, 14:56 126 1335899

>>1335895
ого, а я как раз щас этим занимаюсь

127 27 янв, 14:58 127 1335901

>>1335864
Не спорю, но это, чего ждут от программистов. Хороший, большой КрУД - это CRM для бизнеса.

Ответы35906

128 27 янв, 15:02 128 1335904

>>1335895
> Такая параша, господи прости меня. Какие-то математичкеские задачки, операции над массивами
Вот кстати на Javarush упор именно в специфику Java и ООП. Все адаптеры, врапперы, паттерны.

Но в целом мне теперь Javarush кажется полностью пройденным этапом.

Ответы35918

42 Кб, 400x373
129 27 янв, 15:04 129 1335906

>>1335901
>CRM
Смотри какой у меня Круд, Здоровый сука.
Логику кто за тебя писать будет?

130 27 янв, 15:05 130 1335909

аноны, насколько хорошо нужно знать jsp/jsf и шаблонизаторы типа thymeleaf? достаточно ли просто знать, что это за хуйня и уметь применять, чтобы демонстрировать работоспособность веб-страничек приложения?

Ответы3591035911

131 27 янв, 15:06 131 1335910

>>1335909
Jsp еще кто то использует?

132 27 янв, 15:07 132 1335911

>>1335909
>шаблонизаторы типа thymeleaf?
Во всех туториалах по Спрингу используется Thymeleaf

Ответы35926

133 27 янв, 15:12 133 1335918

>>1335897
ООП, коллекции, но на самом деле по java я не так много знал (голый jdbc, зачем-то сервлеты и сё). В основном вывез за счёт того, что хорошо знал SQL/работу баз данных (транзакции блокировки хуё моё) и что шёл на стажёра.
Если бы сейчас снова с нуля учил, я честно не знаю, откуда можно начать. У спринг бута например есть туториалы, но они сводятся к тупому копипасту без объяснений, книжки в отрыве от практики тоже пользы мало принесут.
>>1335904
Я чутка глянул их программу, вроде адекватно выглядит. Только цену не нашёл, если там какие-нибудь 100к как у мейл.ру, проще стажёром пойти куда-нибудь.

Ответы35927

134 27 янв, 15:19 134 1335926

>>1335911
Я с его помощью не знаю ЖС наебенил норм страничек. С показом полей по авторизацией и т д. Норм штука.

Ответы36203

135 27 янв, 15:21 135 1335927

>>1335918
>туториалы, но они сводятся к тупому копипасту без объяснений
Да ты ахуел.
https://spring.io/blog/2013/11/01/exception-handling-in-spring-mvc
И это только офф сайт. Пиздос какие тут дауны сидят.

136 27 янв, 15:24 136 1335931

>>1335757
тогда имеет смысл проверить через StringUtils.isEmpty()
https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/util/StringUtils.html#isEmpty-java.lang.Object-

Ответы36157

9 Кб, 616x439
137 27 янв, 17:59 137 1336132

Бля как охуенно-то.

Ответы36395

138 27 янв, 18:32 138 1336157

>>1335931
Проверил, получаются ошибки.
Работающий вариант:
!bookToFind.getBookTitle().equals("")

139 27 янв, 18:34 139 1336160

Господа, я тут абсолютно зелёный, но поставил перед собой охуеть какую нетривиальную задачу, а именно - отпарсить 2д карту в игровой мир. Это вообще осуществимо? С какой стороны подойти?

Ответы36161

140 27 янв, 18:35 140 1336161

>>1336160
Что ты хочешь отпарсить? Картинку? Или текст?

Ответы36240

141 27 янв, 18:53 141 1336203

>>1335926
Походу да. Делаешь темплейты из html, делаешь фрагументы, и всё.

142 27 янв, 19:28 142 1336240

>>1336161
Картинку. Попробовал щас свинг прикрутить, вроде прикрутился, но что дальше делать - не ебу, графовый обход по гексагонам и преобразование неведомым хуем гексагона в элемент игрового мира, мейби, но я хз

Ответы36248

143 27 янв, 19:35 143 1336248

>>1336240
Причем тут свинг? Покажи картинку, откуда у тебя там гексагоны?

144 27 янв, 20:26 144 1336309

Я делаю недосервис блогов, сделал функцию закрепления постов.
Вопрос: как лучше отдавать закреплённые посты на клиент?
Делать отдельный эндпоинт /blogs/:blogId/blog-posts/pinned
vs
Включать закреплённые посты в ответ на запрос /blogs/:blogId/blog-posts, если запрашивается самая первая страница

145 27 янв, 20:26 145 1336310

Парни, отправляю через Angular.js на Spring Boot REST эндпоинт GET запрос и он(спринг) молчит, вообще никаких сообщений. Хотя если через браузер - выдает json как положено. Накопал про какой-то CORS, попробовал добавить аннотацию @CrossOrigin на @GetMapping - нихуя. Кто знает в чем проблема?

Ответы36358

146 27 янв, 20:42 146 1336326

Смотри в консоли браузера.

147 27 янв, 21:29 147 1336358

>>1336310
все уже порешал, там ошибка была на фронтенде

148 27 янв, 21:33 148 1336360

>>1334758
Ты кипяток из чайника тоже сначала через n кружек проливаешь, чтобы сделать чай?

Ответы36361

149 27 янв, 21:35 149 1336361

>>1336360
Я просто наливаю кипяток в чайник, кидаю заварку, жду и наливаю чай, а что там происходит внутри все это время мне все равно.

Ответы36369

150 27 янв, 21:39 150 1336365

>>1335714
Попробуй кидать на сервисах и на ресте ловить эдвайсом.

151 27 янв, 21:46 151 1336369

>>1336361
Где берешь кипяток?

Ответы36370

152 27 янв, 21:48 152 1336370

>>1336369
Из внешней системы присылают. Для тестирования чайника беру из папки где лежат кипятки разной температуры.

153 27 янв, 22:17 153 1336395

>>1336132
Бля а дальше сложно пиздец.

Ответы36414

28 Кб, 616x439
154 27 янв, 22:42 154 1336414

>>1336395
Хотя норм.

Антоны, хелп ми плиз! 155 28 янв, 22:17 155 1336984

Пилю CRUD на Spring. Java + jdbc
Как по понятиям сделать?
Мне нужно сделать валидацию данных / защиту от дурака.
В каком месте нужно это делать?
Сам думаю что в сервисе, хотя хз
Controller тут только получаю нужные String и передаю дальше
Service тут проверяю корректность данных, парсинг и создание переменных нужных типов (вроде int, float). Чистые данные идут в жопу далее
DAO тут дёргаю анус базу данных через preparedStatement
Model тут просто POJO

Нужно ли тут делать DTO?

Ответы3698637053

156 28 янв, 22:18 156 1336986

>>1336984
>Spring
>jdbc
anon no

Ответы36996

157 28 янв, 22:26 157 1336996

>>1336986
Почему нет? Есть Spring JDBC Template.

Ответы37296

158 28 янв, 23:13 158 1337053

>>1336984
>Мне нужно сделать валидацию данных / защиту от дурака.
>В каком месте нужно это делать?
В контроллере. По крайней мере если речь о формате данных, а не о бизнес-правилах.

>Controller тут только получаю нужные String
Spring MVC уже прекрасно умеет парсить параметры в инты и флоаты. Сервисы для круда могут быть вообще не нужны.

>Нужно ли тут делать DTO?
Нет

Java вкатальщик знатно охуевает! 159 29 янв, 11:17 159 1337278

Пилю CRUD на Spring. Java + JSP + JDBC + MySQL
Сколько же я говна нахлебался пока кириллица начала работать на всех этапах.
В JSP нужно указать!
В JDBC тоже нужно указать!
В MySQL тоже само собой!
Ох ты блядь сука!

Ответы3728137355

В догонку 160 29 янв, 11:22 160 1337281

>>1337278
Решил ещё по умному при старте системы загружать shema.sql и data.sql!
И тут подлянка, весь гугл сломал пока понял.
Нужно то всего в properties 5 параметров datasource указать и в pom.xml подключить ещё одну зависимость.

161 29 янв, 12:07 161 1337296

>>1336996

Потому что SQL-запросоебство - есть аналогия байтоебства.

Пока начальство/клиенты не начнут вайнить что не могут купить топовые сервера под СУБД - этим заниматься не нужно.

Ответы3729737298

162 29 янв, 12:10 162 1337297

>>1337296

Тем более для запросоебов уже давно придумали HQL, а бизнеслогика на джойнах и тем паче - на вендорлокнутых аналитических расширениях - это сразу вон из профессии и го бомжевать да перед пенсионерами оракла и фокспро 90х выёбываться.

163 29 янв, 12:11 163 1337298

>>1337296

Точнее под апликейшон. СУБД как раз тыквит от SQL-мастеров с хранимками и сложносочиненными запросами из таблиц.

60 Кб, 519x425
164 29 янв, 13:20 164 1337333

сап программач, вкатился в джаву и пытаюсь устроиться джуном в местную галеру, написал тестовый круд на spring boot с гибернейтами, спринг секьюрити, спринг датой и прочими вытекающими из этого. Проект им вроде зашёл, позвали на техническое собеседование, пообещали нормально поспрашивать. За кор джаву и кор спринга вывезу, но намекнули что будут ебать за многопоточность, в которой я ну совсем не шарю, не сталкивался.
Может кто пояснить для чего она вообще реально будет нужна джуну, ну и мб ссылок покидать на статьи для быстрого вката в эту тему

Ответы3734937659

165 29 янв, 13:56 165 1337349

>>1337333
Сколько денег обещают?
Сколько собесов / тесовых делал уже?

Ответы37464

166 29 янв, 14:07 166 1337355

>>1337278
Делаю CRUD повышенной сложности на Spring + Hibernate + PostgreSQL + React, вообще никаких проблем с кириллицей, всё работает из коробки :)

Ответы37364

167 29 янв, 14:21 167 1337364

>>1337355
Кышь хипстота!
Из коробки у него работает!
Сразу бери jhipster , там crud из коробки!

168 29 янв, 17:22 168 1337464

>>1337349
Делал тестовый после внутренних курсов галеры для быдлостудентоты(коей сам и являюсь), собственно после них меня и решили не выгонять, а дать шанс. Теперь вот техническое.
Стоит наверное сказать, что до этого про джаву просто что-то слышал и начал буквально с нуля. Так за 3 месяца и успел кое что узнать, но остались пробелы кое-где.

169 29 янв, 21:43 169 1337596

Есть List<T> (T - это template).
По факту в T попадают ссылки на объекты.
Как обратиться к полям данных этих объектов?

Ответы375993763737722

170 29 янв, 21:52 170 1337599

>>1337596
Забыл про тайпкаст

171 29 янв, 22:55 171 1337637

>>1337596
T это type.

172 29 янв, 23:10 172 1337650

Заметил, что один участок кода просто обёрнут в скобки ради одной хуйни

//code

{
//code
Calendar c = Calendar.getInstance();
}

Calendar c = Calendar.getInstance();
//code

Ну и сами вопросы. Оборачивание в скобки даёт нам эдакую вариацию чего-то вложенного, где после выполнение все объекты cg почистит и переменные фсё?

Ну и второй вопрос такое имеет вообще смысл делать? Тип почему бы просто не назвать по другому?

Ответы3767937734

173 29 янв, 23:34 173 1337659

>>1337333
Почитай про synchronized, volatile, про immutable классы и зачем это нужно в многопоточности, виды локов.
Знаешь, я когда-то писал себе небольшой конспект по многопоточности(чтобы быстро вспомнить всю эту фигню, страниц 5) - могу тебе скинуть скрины в телегу

174 30 янв, 01:21 174 1337679

>>1337650
Смари кароче
наверное ты видел подобные блоки где-нибудь
static{
тут инициализация static переменных
}
Это называется блок статической инициализации
Так вот тобой вышеуказанное, это аналогичная херня, только не статическая, а для каждого объекта, то есть при инициализации объекта через конструктор, этот блок будет выполняться, такие дела
Смысл делать или нет решать тебе, я с таким никогда не сталкивался все всяких хитровыебанных квизов на знание возможностей языка.
Синьеры-помидоры поправьте если я обосрался где нить

Ответы37850

175 30 янв, 07:27 175 1337722

>>1337596
List<T extends MyClass>?

176 30 янв, 08:49 176 1337734

>>1337650
>Оборачивание в скобки даёт нам эдакую вариацию чего-то вложенного, где после выполнение все объекты cg почистит и переменные фсё?

Как и в любом с-подобном языке оборачивание в скобки создает безымянный scope, работающий аналогично прочим scope - if(){},for(){},while(),{} int method(){} и.т.д. То есть да, переменные и объекты инициализированные в scope за его пределами убираются из стека/попадают в GC.

Ответы37850

177 30 янв, 08:55 177 1337735

33 Кб, 451x48812 Кб, 342x227

Мда блять

Ответы3773637848

178 30 янв, 09:01 178 1337736

>>1337735
Говнокод-с
Не обижайся

Ответы37745

179 30 янв, 09:33 179 1337745

>>1337736
Долбоёб?

Ответы37761

sage 180 30 янв, 10:07 180 1337761

>>1337745
Ты - безусловно. Хули только три цикла, а не восемь?

Ответы37762

181 30 янв, 10:08 181 1337762

>>1337761
Я то тут причём? Я ебу вообще хули их 3?

182 30 янв, 14:18 182 1337848

>>1337735
Узнаю родные Структуры и Алгоритмы Обработки Данных!

183 30 янв, 14:28 183 1337850

>>1337679
>>1337734
Пасибо помидоры

184 30 янв, 17:41 184 1337993

Аноны, возможно ли сделать так, чтобы в query by example две даты сравнивались без учета времени (только год-месяц-день)?

185 30 янв, 22:32 185 1338276

Сап, начал читать хорстмана, перехожу с плюсов на жабу, но скоро новый сем, и времени будет на чтение мало, хочу просто заняться практикой, мб что то вроде sololearn только с серьёзными задачами после не сильно углубленного курса есть? Хорстмана летом прочту для закрепления. Если что то такое есть, киньте ссыль.

Ответы38598

186 30 янв, 22:58 186 1338303

>>1335509
Зачем букСервис файнал в контроллере?
Почему автоваришь в конструктор а не просто в свойство?
Сам нуб

187 30 янв, 23:00 187 1338306

>>1335608
Лучше спецификацию добавить и динамически собирать ее?

188 30 янв, 23:59 188 1338351

в

189 31 янв, 05:16 189 1338408

Начал изучать джаву четыре месяца назад, работая ежедневно по 12 часов грузчиком-экспедитором, во время работы читая учебники - успел пока познакомиться с Хорстманном и Thinking in Java. В свободное время решаю задачи на кодеварс и жавараше; начал писать одного простого бота для хтмл-игры, но, реализовав основной функционал, не стал доделывать графический интерфейс (пробежал эти главы мельком). Потихоньку сдвинулась с мертвой точки способность придумывать логику решения поставленной задачи, но с цифрами работать отвык - математика вылетела из головы ещё где-то в восьмом классе, а в университете я учился всего полгода, получая по этому предмету стабильно неуды. Вспоминается английский постепенно, который по выпуску из школы у меня был на уровне адвансед. Собираюсь увольняться, чтобы стабильно весь день практиковать навыки написания кода. Эти четыре месяца можно сказать потрачены впустую - с таким уровнем знаний, как у меня, я мог бы разве что претендовать на место в курсе-стажировке, но увы, они сейчас в Москве доступны исключительно студентам или выпускникам вузов. На позицию джуниора с моим булькающим Java Core можно пока даже не засматриваться - необходимы как минимум фреймворки и SQL. Немного поискав в Интернете информацию о Spring и Hibernate, столкнулся с мнением, которое мне интуитивно близко по духу - программисты критикуют засилье коллег, чьи способности ограничиваются муштрой фреймворка, советуя обучение тому, на чем эти фреймворки работают, плюс часто упоминая необходимость ориентации в архитектуре (этого я не понимаю сейчас совсем).
Я эту исповедь к чему пишу: самостоятельное обучение технологиям, которые требуются на позицию джуниора, релевантно задаче найти в кратчайший срок работу? Или больше смысла будет в трате денег на то, что меня кто-то направит и объяснит актуальные, необходимые в работе шаблоны? Единой точки зрения в Сети я не нашел, а мое увлечение чтением тематической литературы как будто в этом вопросе - наименее действенный выбор.

Ответы38409

190 31 янв, 05:33 190 1338409

>>1338408
>Или больше смысла будет в трате денег на то, что меня кто-то направит и объяснит актуальные, необходимые в работе шаблоны?
Методики обучения тех, "кто не умеет, но учит" за деньги могут отличаться от "актуальных, необходимых в работе шаблонов", западзывать на n-лет. Не торопись дарить деньги таким людям.

Самое надежное это подучить уровень английского до возможности чтения, а лучше понимания на слух, и читать/смотреть актуальные курсы, лекции. На том же удеми есть более-менее актуальные курсы, которые продаются на торрентах по цене интернет-траффика (https://freecoursesite.com/ ищи java, hibernate, spring и прочие buzzwords, поглядывая на список требуемого в вакансиях на hh.ru). Конечно же, на изучение всего этого уйдет какое-то кол-во времени, также без гарантии трудоустройства.

Ответы38414

191 31 янв, 05:47 191 1338414

>>1338409
Спасибо за ссылку. К тематическому английскому, думаю, за месяц-другой привыкну.

192 31 янв, 10:12 192 1338465

Jsp/jsf где-то используется?На это тратить время?

Ответы38475

193 31 янв, 10:42 193 1338475

>>1338465
JSP в вакансиях пишут.
Для круда нужно знать.
Там реально за 2 дня то что нужно узнаешь.

194 31 янв, 11:00 194 1338485

Анон, подскажи как в своём веб приложении на сервлетах сделать регистрацию + авторизацию, в гугле реально не могу найти нормальной инфы. Нельзя же просто ебануть атрибуты и гонять их туда без шифрования или ещё какой-то защиты? Как вообще это всё работает?

Ответы3848738512

195 31 янв, 11:07 195 1338487

>>1338485

https://spring.io/projects/spring-security

Ответы38488

196 31 янв, 11:08 196 1338488

>>1338487
Бля, хотел дописать что без спринга надо.

Ответы3851938521

197 31 янв, 11:51 197 1338512

>>1338485
Чё никто не шарит?

198 31 янв, 11:54 198 1338519

>>1338488

Тогда или ванильный Java EE 8 и жирные интырпрайз-сервера на 32+ГБ, там есть хуитки, или велосипедь сам на сессиях и кукисах. Проблема "не гонять без шифрования" решается HTTPS.

Ответы38523

199 31 янв, 11:55 199 1338521

>>1338488

http://oaccframework.org/

200 31 янв, 11:56 200 1338523

>>1338519
>велосипедь сам на сессиях и кукисах
Вот именно это мне и надо.
>HTTPS
Ну это не интересно.

201 31 янв, 15:09 201 1338598

>>1338276
бамп

202 31 янв, 15:16 202 1338605

петян, накидай клёвых шкурок look and feel для свинга, чтобы не пиздец-вырви-глаз были из прошлого. или я много прошу?

Ответы38657

203 31 янв, 16:45 203 1338657

>>1338605
Спизди у идеи.

164 Кб, 960x1280
204 31 янв, 17:26 204 1338675

>>1332296 (OP)
Аноны, подскажите, что с наибольшей вероятностью будут спрашивать при собеседовании на стажёра/джуна?

Ответы3868638735

205 31 янв, 17:57 205 1338686

>>1338675
Ты долбоёб?

Ответы3868838724

206 31 янв, 18:00 206 1338688

>>1338686
А еще что?

Ответы38724

254 Кб, 1082x812
207 31 янв, 18:43 207 1338724

>>1338688
В голосище!
>>1338686
Ну правда, анон. Мне ж пиздец очково

208 31 янв, 18:56 208 1338735

>>1338675
ООП. Алгоритмы и их сложность(самые бесполезные знания, но зачем то это постоянно спрашивают). Структуры данных. Возможно конкарренси в общих чертах. HTTP, возможно. Сукель скорей всего. Вон сверху лежит список вопросов.Выкидываешь оттуда фреймворки и дж-эс (если его нет в вакансии) вот это и будут спрашивать.

Ответы38742

209 31 янв, 18:59 209 1338742

>>1338735
А да анончик, забыл добавить, что 90% спрашиваемого ты никогда не применишь в практике, потому что для дерганья БД за анус через спрингдатку даже понимания инкапсуляции не надо

210 31 янв, 19:18 210 1338757

Блядь, да что я не так делаю?
http://blog.simonrodriguez.fr/articles/30-07-2016_implementing_fxaa.html
https://pastebin.com/wSjaLF0Z

Ответы387603899539511

211 31 янв, 19:20 211 1338760

>>1338757
Ты даже код не можешь скопировать со статьи?
Ищи другую где ссылка на гитхаб есть.

Ответы38783

212 31 янв, 19:41 212 1338783

>>1338760
Я скопировал, он не работает.

213 1 фев, 00:22 213 1338991

Салют, господа.
Планирую выкатиться из своей галеры в енеми компанию. Опыт 2 года. Беспокоит вопрос, нормально ли скиллов, которые я знаю, мб добрый анон даст совет, что подкачать буду рад.

Сейчас у меня в арсенале есть: Java(до 11 версии основные фичи), Spring(IoC, MVC, Security, Boot), Hibernate, RabbitMQ, Kafka, RDBMS(Postgres, юзал MySQL но не смогу за них пояснить преимуществах/недостатках), NoSQL(CouchDB), Groovy.

Из окольных тем небольшой опыт работы с JS, React, Electron, NodeJS, WebSocket.

Паттерны проектирования, опыт код ревью и бест практик чистого кода знаком, использую.

Подскажите, что еще хорошо было бы подтянуть? Буду благодарен?
Нужно ли шарить за протоколы сети TCP/IP, и т.д.?

Ответы39251

214 1 фев, 00:25 214 1338995

>>1338757
Брат, зачем тебе GUI в Java? Если это не лаба, бросай это дерьмо

Ответы38997

215 1 фев, 00:27 215 1338997

>>1338995
Причем тут вообще GUI?

216 1 фев, 06:25 216 1339059

Какие шансы в 18 лет без образования найти работу джуном? Это вообще сильно важно? Или там будут смотреть только на знания. Очень боюсь что меня пошлют нахуй из-за того что ещё слишком юн.

Ответы39084

5,8 Мб, webm,
960x533, 1:37
217 1 фев, 09:22 217 1339084

>>1339059
А что умеешь?

Ответы39088

218 1 фев, 09:34 218 1339088

>>1339084
Ну для джуна хуйня всякая, java core эксэпшоны, multithreading, коллекции, инпут оутпут и прочая ебота из руководства Шилдта , oop, sql, jdbc, сервлеты ебаные, jsp, мавены там всякие с иксэмэлями, всё хочу в спринг забурится но сложно пока.

Ответы3909539096

219 1 фев, 10:02 219 1339095

>>1339088
Мы вам перезвоним, войтивайти.

Ответы39100

220 1 фев, 10:03 220 1339096

>>1339088
на само деле Spring на ур-не для джуна ез освоить. Посоветую использовать стартовать используя Spring Boot. Реализую свой-мини проектик на MVC

мими-мидл-который-в-глубокой-юности-не-разобрался-в-spring-т.к.-все-сложна

254 Кб, 645x773
221 1 фев, 10:11 221 1339100

>>1339095
>войтивайти

222 1 фев, 11:31 222 1339180

Что эта за красная хуйня ? Делаю всё шаг за шагом за афффтором пружины в действии 5, у него все работает, у меня не может определить этот красный метод. Я не понимаю что это, он такого нигде в коде не создавал, такой метод не гуглица, как быть ананасы ?

Ответы3918139194

109 Кб, 1073x288
223 1 фев, 11:32 223 1339181

>>1339180

224 1 фев, 11:44 224 1339194

>>1339180
Плохо гуглишь
https://forums.manning.com/posts/list/43033.page
https://stackoverflow.com/questions/51024877/thymeleaf-returning-a-string-array-instead-of-listobject

Ответы39219

48 Кб, 600x400
225 1 фев, 12:27 225 1339219

>>1339194

226 1 фев, 13:16 226 1339238

Взял курсовую на разработку программы шифрования и дешифрования по ключам.
Есть какие-нибудь туториалы по различным видам шифрования, использованию XOR, анализу и дешифровке?
Просто тема слишком абстрактная, хочется конкретики, поэтому прошу подтолкнуть в нужном направлении.

Ответы3924139250

227 1 фев, 13:22 227 1339241

>>1339238
Без туториалов не как?
Берёшь классическую книгу по криптографии, там все алгоритмы начиная от щифра цезаря заканчивая твоим ксором

228 1 фев, 13:35 228 1339250

>>1339238
Эллиптическая криптография. Нахуй твой ксор, Арви ебучий.

229 1 фев, 13:36 229 1339251

>>1338991
Нихуёвый такой арсенал
>Нужно ли шарить за протоколы сети TCP/IP, и т.д.?
Если собираешься в веб - да. Всё ж зависит от того, на какое место хочешь податься

Ответы39253

230 1 фев, 13:45 230 1339253

>>1339251
Ну и нахуя ему TCP/IP?

231 1 фев, 15:35 231 1339325

Пиздец, как пароль в sha256 захэшировать?

Ответы39334

232 1 фев, 15:44 232 1339334

>>1339325
https://www.baeldung.com/sha-256-hashing-java

233 1 фев, 17:08 233 1339381

В RestController есть параметр:
@RequestBody @Valid @NotEmpty List<Foo> values,
нужно проверить, что лист не пуст, но аннотации не триггерятся. В чем проблема?

Ответы39459

234 1 фев, 17:49 234 1339397

Уважаемые господа, я сижу околосисадмином в ынтырпрайзе, но поскольку позиция есть только для дева, мне сказали начинать потихоньку прогромировать на жабе (а я и не против).

Так вот, с чего конкретно начать? Учтите, что у меня нет технического образования, но есть работа в IT (что я делаю: файловые скрипты, то запарси, это автоматизируй, найди и выеби того, кто сожрал весь дискспейс, schedulers, немного ETL, немного дотнета, немного линупсов).

Стать программистом - моя мечта, и я близок к ее реализации, как никогда. Помахите.

Ответы39439

235 1 фев, 19:35 235 1339439

>>1339397
Может из тебя хотят толкового DEVOPSа сделать а ты не понял намёка?
Если прям хочешь погромировать по пробовать, бери любой язык и начинай решать простые олимпиадные задачки типо как на acmp.ru
Если сделаешь первые 50 (отсортируй по сложности и начинай с простых) задач и не захочешь всё бросить, то у тебя есть все шансы.

236 1 фев, 19:52 236 1339459

>>1339381
Надо в депенденси добавить того кто имплементирует @Valid и @NotEmpty, насколько я помню.
Обычно это hibernate-validator

Ответы39476

237 1 фев, 19:59 237 1339467

https://www.youtube.com/watch?v=UUhB4rVlIoU

238 1 фев, 20:04 238 1339476

>>1339459
Все добавлено. Почему-то спринг триггерит только аннотации внутри класса (когда помечаешь аннотациями поля класса + @Valid на объекте). Аннотации на самом объекте, как у меня в примере, не работают.

239 1 фев, 20:27 239 1339511

>>1338757
Бмап.

240 1 фев, 20:56 240 1339559

Братишки, подскажите
Решил остановится на Жабе, скачал курс от ITVDN, но сразу появилась загвоздка, что гайд 16-го года и там используется Java SE 8, а сейчас уже есть 11.
Вот вопрос, ставить 8 как на курсах версию или 11?

Ответы39568

241 1 фев, 20:58 241 1339568

>>1339559
Ставь 11 и выбирай уровень языка 8.

242 2 фев, 07:47 242 1339906

Ребятушки, помогите.
Я начинающий программист в колхозной конторе на 700 человек.
По всем показателям и требованиям JAVA подходит как основной язык разработки.

Но у моего начальника какие-то предрассудки по поводу Java. "Все, что касается как-то Java постоянно выбивало ошибку то там, то там".

Я не хочу, чтобы отдел продолжал катиться в сторону C#/Python - все, что нужно нашему отделу это Java

Как можно смотивировать начальника на дальнейшее развитие в сторону Java? Ну, то есть, отдел разработки не против. Нужны какие-то мотивационные статьи

Ответы39909

243 2 фев, 07:50 243 1339909

>>1339906
Ну во первых, если тебе кажется, то не обязательно так и есть, а во вторых, если ты его уломаешь на жабу и потом что-то случится он тебя с говном сожрёт.

Ответы39912

244 2 фев, 08:03 244 1339912

>>1339909
1) C# имеет платную IDE
2) Платная ОС для работы c десктопом на C#
3) Платные сервера для запуска ASP.NET

JAVA) Free for all
Ну и пусть. Предприятие не проиграет от этого.
Стоимость java разработчика в разы меньше, чем C#)

Ответы3991439958

245 2 фев, 08:06 245 1339914

>>1339912
А ты не очень умный я смотрю...

Ответы39916

246 2 фев, 08:15 246 1339916

>>1339914
C# уже не видать нам, так как переходим на Python. потому что бесплатно. А python это те еще копейки

247 2 фев, 10:41 247 1339958

>>1339912
Анончи, я тут прочитал про то, что Java станет платной. Причем довольно дорогой для русского сегмента.

Ответы39960

248 2 фев, 10:43 248 1339960

>>1339958
Ну естественно, у нас ведь рубль дешевле доллара стоит. Для нас все дороже.

Ответы39961

249 2 фев, 10:45 249 1339961

>>1339960
начальник это узнает и скажет "продолжай колупать вилкой пихон, пока этот удав бесплатный!"

Так что не стать мне разрабом java :(

250 2 фев, 10:47 250 1339963

хотя есть вариант делать всё гавно на Node.JS/ Electron

251 2 фев, 17:09 251 1340195

делают ли игры на джаве сейчас?)

Ответы40246

252 2 фев, 17:12 252 1340198

59 Кб, 616x43958 Кб, 616x439

блядь

Ответы40289

253 2 фев, 17:19 253 1340204

/hc

254 2 фев, 18:41 254 1340246

>>1340195
Какой-то парень на реддите сейчас регулярно выкладывает спидвидео создания простенькой 2д бродилки в стиле пиксель-арт.

255 2 фев, 20:23 255 1340288

Сап, жаваны. Я тут пишу тестовое в одну контору. И впервые пишу DAO классы через jpa. Постоянно ощущение, что делаю какое-то говно, но из знакомых никто подобное не делал. По сему пишу сюда, может кто может выделить десять минут, поскролить три класса наискось и сказать где я не прав?

Ответы4034040377

256 2 фев, 20:24 256 1340289

>>1340198
Это ты на какой либе сделал? fx?

Ответы40309

257 2 фев, 20:43 257 1340309

>>1340289
Там от всего fx только ImageView и WritableImage.

258 2 фев, 21:20 258 1340340

>>1340288
Ну и куда скролить?

Ответы40341

259 2 фев, 21:20 259 1340341

>>1340340
https://github.com/xeruvimov/haulmont-test-task

Ответы40344403484065140924

260 2 фев, 21:25 260 1340344

>>1340341
Папка должна называться не daoimpl, а dao, а внутри уже impl. Дальше даже не смотрел.

Ответы4034540635

261 2 фев, 21:27 261 1340345

>>1340344
И на этом спасибо

262 2 фев, 21:42 262 1340348

>>1340341
Это именно требование такое - голый jpa, без Springa (или EJB) для управления транзакциями? В реальном мире такое довольно редко встречается. Даже если так, копипаста из открытия транзакции, коммита и т.п. в каждом методе - это пиздец, выноси это все в отдельный общий код. Свой маленький TransactionManager можешь сделать.

Что еще бросилось в глаза - flush нет необходимости каждый раз делать, a remove не будет работать работать в таком виде, надо сначала смерджить сущность с этим EntityManager.

И интерфейсы. Вот зачем тебе интерфейсы?

Ответы40356

263 2 фев, 21:52 263 1340356

>>1340348
>голый jpa, без Springa (или EJB)
Тоже подумал, что как-то странно, но в тз ничего про спринг не написано. Так бы просто навесил везде @transactional из спринга. это же так работает?

>интерфейсы
Мне - абсолютно не зачем, но когда меня учили делать dao, то делали интерфейсы. Полагаю что это такая общепринятая практика, вдруг понадобятся разные реализации. мне то ясен хуй не понадобятся

264 2 фев, 22:40 264 1340377

>>1340288
Это на ждуна? Какие там требования в вакансии (по технологиям)?
Ты прям по этому vadin-у упарывался или для тестового по быстрому обмазываешься?

Ответы40382

265 2 фев, 22:42 265 1340379

.

41 Кб, 557x395
266 2 фев, 22:46 266 1340382

>>1340377
Вообще первый раз с ваадином буду разговаривать. До этого в свинге малёха формочки делал. Вроде похоже.

Я хз какая это вакансия. Написано нужен опыт работы 2 года в ИТ компании, при этом у меня в резюме написано, что я нигде не работал, но они решили кинуть мне тестовое.

Тащемто пикрилейтед

Ответы40390

267 2 фев, 22:58 267 1340390

>>1340382
>Вообще первый раз с ваадином буду разговаривать
Сейчас развелось дохуя русскоязычных ресурсов где круды на спринге разжевывают!
На тестовое задание мне кажется стараются специально редкую хуиту дать и проверить как ждун будет манулы на англицком читать и разбираться по коду что и как делать.

Ответы40397

268 2 фев, 23:05 268 1340397

>>1340390
Ну они походу реально ваадин юзают.

А что значит >круды на спринге
Там что есть какие-то встроенные инструменты для вёрстки? Насколько я знаю там можно просто через html+css+js или всякие jsp.

Ответы40404

269 2 фев, 23:10 269 1340404

>>1340397
CRUD

270 3 фев, 06:46 270 1340599

>>1332296 (OP)
Зачем в вакансиях пишут "опыт работы с Hibernate"? Разве Spring Data недостаточно? И если нет, то какой лучший способ изучить данную технологию?

Ответы40609

271 3 фев, 08:10 271 1340609

>>1340599
BTW, где достать High-Performance Java Persistence? На либгене лежит обрезанная версия в 200 страниц. Когда на амазоне в книге более 400 страниц.

272 3 фев, 09:35 272 1340632

>>1332659
Ебать сколько лишнего говна, для такой простой задачи. Какой же все-таки php красивый язык. Не то что ЭТО. Как же я рад что являюсь PHP разработчиком, настоящий программист, не то что вы джава-макаки! ёпта.

Ответы40633

273 3 фев, 09:37 273 1340633

>>1340632
Забл добавить еще, что не хуёво так админю *nix системы. Потому что php разраб - это еще и админ/devops. А вы как видите командную строку, сретесь от страха...

Ответы40752

274 3 фев, 09:42 274 1340635

>>1340344
>Папочка называется не так как я хочу значет хуйня РЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯ

275 3 фев, 10:49 275 1340651

>>1340341
Как писали выше - копипаст кода. Это можно исправить написав универсальные методы через лямбды.
Подключи логгер.
Может быть попробовать сделать один параметризованный интерфейс dao?
Добавить слой service, где будут кроме crud специфические методы для работы с сущностями.

Ответы40696

276 3 фев, 11:37 276 1340665

https://github.com/Weydile/ToDolist Говнокод?

Ответы4067140677

277 3 фев, 12:01 277 1340671

>>1340665
Нормально, только зелени маловато, такую тудушечку нужно край за неделю делать, без паники, итого за месяц 4-круда, каждый раз ты будешь чуть усложнять и добавлять новые фишечки.

Ответы40674

278 3 фев, 12:05 278 1340674

>>1340671
> зелени маловато
Углублялся в чтение шилдта.
>>1340671
> такую тудушечку нужно край за неделю делать
Я хочу сейчас дописать это всё на сервлетах, а потом переписать под спринг и хибернейт.

279 3 фев, 12:17 279 1340677

>>1340665
Говнокод в части JdbcConnection со статическими полями

Ответы40681

280 3 фев, 12:26 280 1340681

>>1340677
Это же удобно, ты предлагаешь везде свои объявлять?

Ответы40693

281 3 фев, 12:50 281 1340693

>>1340681
Это, в первую очередь, не работает - у тебя разные (параллельные) запросы в разных потоках через это одно общее поле обрабатываются.

Ответы4069540702

282 3 фев, 12:56 282 1340695

>>1340693
Бля

283 3 фев, 12:57 283 1340696

>>1340651
>параметризованный интерфейс dao
Вот так хотел, но столкнулся с проблемой, что мне в findAll или других findХуяйнд надо вызывать namedQuery и туда передавать Client.class например. Так же NamedQuery имеют имена типа "Client.findAll".

>Как писали выше - копипаст кода
Вот за это и переживал, не знаю как выкрутиться. Про какие универсальные методы ты говоришь? Можешь дать пример? я знаю что такой лямбды, просто не совсем понял о чём ты конкретно

284 3 фев, 13:09 284 1340700

>>1332296 (OP)
>раби
Руби, а не раби, двоешник.

285 3 фев, 13:16 285 1340702

>>1340693
Тут нужен пул соединений да?

286 3 фев, 13:21 286 1340706

76 Кб, 728x684132 Кб, 1053x760

Или вот так ебануть и хватит?

Ответы4070840729

287 3 фев, 13:23 287 1340708

>>1340706
Нет не хватит

288 3 фев, 13:52 288 1340729

>>1340706
Ну и говнокода ты наворотил. Загружать драйвер можно 1 раз в статическом блоке, необязательно каждый раз это делать. Почему поля в JdbcConnection не приватные? Сделай статический метод run, который возвращал бы новый Connection, а close вообще убери, Connection и так AutoCloseable, закрывай в try. И в твоей ловле эксепшенов нет вообще никакого смысла, что толку, что ты их поймал, если вызывающий код не сможет дальше работать, поскольку к бд подключения нет? Лучше добавить throws или перевыкинуть RuntimeException. Короче, переделывай.

Ответы40833

356 Кб, 1280x1417
289 3 фев, 14:34 289 1340752

>>1340633

290 3 фев, 14:53 290 1340765

>>1332297
QA хотят раскидать между самими разработчиками и дев-опсами

291 3 фев, 14:56 291 1340767

>>1332297
обоснуй
мимовкатывальщик

5 Кб, 205x246
292 3 фев, 15:00 292 1340768

Где взять нормальный гайд по запуску моих хеллоуворлдов на винде двойным кликом по ярлыку? Везде какие-то многоходовые страдания и танцы с прописыванием чего-то там в консоли или установкой jarfix которая ничего не даёт. Не могут же люди так мучиться с каждой прогой, должен быть способ здорового человека?

Ответы40776

293 3 фев, 15:24 293 1340776

>>1340768
Берешь и запускаешь, в чем проблема?

63 Кб, 616x439
294 3 фев, 16:21 294 1340799

бля у

Ответы40801

295 3 фев, 16:25 295 1340801

>>1340799
ух бля, трасировку лучей делаешь?

Ответы40807

296 3 фев, 16:33 296 1340807

>>1340801
Да уже сделал по сути. Остались только преломления, но я не вижу смысла их делать без полупрозрачных объектов, а с ними я не очень разобрался. А потом кроме сфер сделать полигоны, и останется только интерфейс прикрутить.

Ответы40919

297 3 фев, 17:09 297 1340833

>>1340729
Ты бля нахуй не выёбывайся

Ответы40917

298 3 фев, 17:12 298 1340835

Сап двачеры. Работаю на C++ в местной недоконторе, получаю мало так как в моей мухосрани нет компаний, работающих на этих технологиях. Хочу свичнуться в джаву, этого дохуя.

Посоветуйте:
1. Курс/Книги/Чёт ещё по джаве, где бы не рассказывали что такое переменная, класс и прочую банальщину. Java rush говно.
2. Идею для петпроджекта. Сам я думаю написать себе кошелёк для криптовалюты, так как им бы я и сам с удовольствием пользовался, не дело в том, что там негде применить базы данных и elasticsearch какой-нибудь.
У меня с ними такой себе опыт работы, так как я в основном low level код пишу, с базами знаком очень слабо.
3. На каком уровне можно апплаиться на работу? Я уже второй год работаю программистом на C++, опыт в разработке есть. Понятно, что потребуется акклиматизация, но ведь я ж не совсём зелёный типа. Если у кого-то есть опыт свча - делитесь историями.

Ответы40838408424088540931

299 3 фев, 17:17 299 1340838

>>1340835
>Книги
Если с англицким не очень то java 8 полное руководство шилдта.

Ответы40841

300 3 фев, 17:20 300 1340841

>>1340838
С английским нормальна.

Ответы40848

301 3 фев, 17:23 301 1340842

>>1340835
Сперва чекай вакансии на ждунов и смотри что там нужно по технологиям, запили фейка на хх и проси тестовые задания, там поймёшь что нужно.
1) По яве видосики технотрека майловского, годнота!
2) Круды, круды, круды, начни с простых, без гибернатов
3) Иди на честного ждуниора, ты там самый бодрый будешь среди вкатальщиков после жидбрейнса

Ответы40857

302 3 фев, 17:25 302 1340848

>>1340841
Тогда поновее бери руководство

303 3 фев, 17:33 303 1340857

>>1340842
>2) Круды, круды, круды, начни с простых, без гибернатов

А можно поподробнее? CRUD -- это концепт, а не идея.

Ответы40860

304 3 фев, 17:35 304 1340860

>>1340857
Почитай выше по треду. Система учета сотрудников, библиотека, ветеринарная клиника, все что угодно с сущностями и базами данных.

Ответы40863

305 3 фев, 17:38 305 1340863

>>1340860
Хочется что-то полезное написать, а не очевидную laba1. Ну ладно, наверно полезное я сам обязан придумать. Спасибо.

Ответы40864

306 3 фев, 17:38 306 1340864

>>1340863
Все полезное уже написано.

307 3 фев, 17:52 307 1340885

>>1340835
А сколько на крестах зарабатываешь и какой стек?

308 3 фев, 18:58 308 1340917

>>1340833
Я ж тебе помочь хотел, дурашка. Ну не волнуйся, тебе обязательно ПЕРЕЗВОНЯТ.

Ответы42264

309 3 фев, 19:03 309 1340919

>>1340807
Всем похуй.

Ответы40923

310 3 фев, 19:04 310 1340923

>>1340919
>рряяяя

311 3 фев, 19:04 311 1340924

>>1340341
Переделал через лямбды-хуямбды, реквестирую ещё немного мочи на этот код. Спасибо за советы кстати, прошлым ораторам.

Ответы40964

312 3 фев, 19:12 312 1340931

>>1340835
Я тоже вкатывальщик, но попробую посоветовать.
Certification Guide от Mala Gupta - пролистать, чтобы понять, зачем в Java string pool, зачем при конкатенации использовать StringBuilder, что такое боксинг/анбоксинг, как Java хендлит overflow/underflow у примитивов и т.п. Это базовые вещи, без знания которых можно писать код, но лучше их всё-таки знать.

Далее, освежи свои знания по ООП. Можно навернуть Head First Design Patterns. Часть книги устарела (особенно где там про удаленные вызовы), но другая вполне себе актуальна и по сей день, так как основы ООП за прошедшие 20 лет не сильно изменились. Наверни статьи про Dependency Injection и Inversion of Control.

Набей руку в SQL по sql-ex.ru.

Ознакомься с основыми коллекциями: ArrayList, LinkedList, HashMap, TreeMap, и как они работают внутри (базово, естественно). Ты должен суметь объяснить, что для ArrayList получение элемента работает за константное время, а для LinkedList за линейное. Получи общее преставления о работе со Streams.

Далее всё зависит от того, как быстро ты хочешь вкатиться. Если время поджимает, то посмотри какою-нибудь серию видео по Spring на udemy или youtube. Какое-то конкретное посоветовать не могу - мне они все довольно быстро начали казаться говном. Но они хороши для получения общего представления, чтобы не смотреть как баран на новые ворота.

Проект естественно должен собираться через maven. Для получения базового проекта с зависимостями используй https://start.spring.io/
тыкаешь switch to full version и выбираешь Web, JPA, H2, MySQL.
Таким образом ты получаешь возможность легко и быстро приступить к созданию приложения на Spring MVC и Spring Data, используя встроенные Tomcat и ин-мемори базу H2. H2 для разработки: каждый раз при старте приложения создаётся схема и данные - схема создаётся автоматом по аннотациям Entity-классов, а данные грузишь через Spring Data репозитории (которые построены на базе Хибернейта). А MySQL - для прода.

Также можно где-нибудь спереть шаблон со стилями и картинками и красиво выводить данные через Thymeleaf при околонулевых знаниях html/css, но это сугубо по желанию.

Если есть время попердолиться с Java подольше, то можешь параллельно читать Effective Java и Modern Java in action. Я начал первую - могу сказать, что местами реально читается непросто, книжка для опытных программеров.

312 3 фев, 19:12 312 1340931

>>1340835
Я тоже вкатывальщик, но попробую посоветовать.
Certification Guide от Mala Gupta - пролистать, чтобы понять, зачем в Java string pool, зачем при конкатенации использовать StringBuilder, что такое боксинг/анбоксинг, как Java хендлит overflow/underflow у примитивов и т.п. Это базовые вещи, без знания которых можно писать код, но лучше их всё-таки знать.

Далее, освежи свои знания по ООП. Можно навернуть Head First Design Patterns. Часть книги устарела (особенно где там про удаленные вызовы), но другая вполне себе актуальна и по сей день, так как основы ООП за прошедшие 20 лет не сильно изменились. Наверни статьи про Dependency Injection и Inversion of Control.

Набей руку в SQL по sql-ex.ru.

Ознакомься с основыми коллекциями: ArrayList, LinkedList, HashMap, TreeMap, и как они работают внутри (базово, естественно). Ты должен суметь объяснить, что для ArrayList получение элемента работает за константное время, а для LinkedList за линейное. Получи общее преставления о работе со Streams.

Далее всё зависит от того, как быстро ты хочешь вкатиться. Если время поджимает, то посмотри какою-нибудь серию видео по Spring на udemy или youtube. Какое-то конкретное посоветовать не могу - мне они все довольно быстро начали казаться говном. Но они хороши для получения общего представления, чтобы не смотреть как баран на новые ворота.

Проект естественно должен собираться через maven. Для получения базового проекта с зависимостями используй https://start.spring.io/
тыкаешь switch to full version и выбираешь Web, JPA, H2, MySQL.
Таким образом ты получаешь возможность легко и быстро приступить к созданию приложения на Spring MVC и Spring Data, используя встроенные Tomcat и ин-мемори базу H2. H2 для разработки: каждый раз при старте приложения создаётся схема и данные - схема создаётся автоматом по аннотациям Entity-классов, а данные грузишь через Spring Data репозитории (которые построены на базе Хибернейта). А MySQL - для прода.

Также можно где-нибудь спереть шаблон со стилями и картинками и красиво выводить данные через Thymeleaf при околонулевых знаниях html/css, но это сугубо по желанию.

Если есть время попердолиться с Java подольше, то можешь параллельно читать Effective Java и Modern Java in action. Я начал первую - могу сказать, что местами реально читается непросто, книжка для опытных программеров.

Показать весь текст

313 3 фев, 19:41 313 1340964

>>1340924
Я конечно не авторитетный критик, но в глаза бросается следующее.
У тебя классы Transactional и, например, ClientDAOImpl, делают по сути разные вещи - один управляет транзакцией а другой достаёт данные. Но они почему-то в одной иерахии.
Может сделать класс Transactional обычным классом и включать его в ClientDAOImpl через конструктор?

Ответы40970

314 3 фев, 19:45 314 1340970

>>1340964
Да, нормальная идея. Скорее всего так и переделаю. А по реализации транзакций через лямбды и вот этот класс замечаний нет?

Ответы41051

315 3 фев, 20:42 315 1341051

>>1340970
У меня с JPA маловато опыта, но вот какие еще мысли: у тебя при каждом вызове transaction() вызывается initTransaction();

Смотрим что происходит в этом методе:
1) entityManagerFactory.createEntityManager(); - его действительно нужно каждый раз пересоздавать? У меня сомнения на этот счёт. Но даже если всё-таки требуется, то для него справедливо всё то же самое, что я опишу ниже для EntityTransaction.

2) this.entityTransaction = this.entityManager.getTransaction();
Не думаю, что это хорошая идея. Scope каждого объекта должен быть минимальным. Следовательно транзакция должна запрашиваться в методе transaction(), и ссылка на полученный экземпляр будет жить ровно столько, сколько выполняется метод.

После завершения работы метода ссылка на транзакцию автоматически улетает со стека, и GC сможет уничтожить объект транзакции, если entityManager тоже от него избавиться. Твой же код держит ссылку на транзакцию, хотя больше он её никогда не воспользуется - ведь всё равно вызовется getTransaction() и ссылка перезатрётся.

Метод closeTransaction() можно оставить как есть, просто передавать транзакцию внутрь метода параметром.

Еще один подводный камень - это потокобезопасность. Представим, что два потока одновременно выполняют this.entityManager.getTransaction() - если метод возвращает разные объекты, то первый будет потерян, второй обхект будет помещён в поле класса. В итоге оба потока продолжат работать с одной и той же транзакцией, и я хз, к чему это приведёт.

Ответы41145

316 3 фев, 22:25 316 1341145

>>1341051
> createEntityManager(); - его действительно нужно каждый раз пересоздавать?
Нужно

>В итоге оба потока продолжат работать с одной и той же транзакцией, и я хз, к чему это приведёт.
Все будет плохо

317 4 фев, 10:45 317 1341441

Кто как инициализирует данные в бд?
Вот есть например приложение на спринге, для его работы нужна база с заполненными справочниками. Схему генерит хибер, пес бы с ней, а вот данные откуда брать - хз.
Есть вариант использовать data.sql файл, но это не очень интересно для разработки, т.к. чтобы он работал, нужно при перезапуске все из базы вытирать. Запустил дебаг - потерял результаты работы с базой из предыдущего запуска.
На сервере-то, понятное дело, это не проблема, там хоть в скрипт деплоя можно делит-инсерты вкрутить, и никому не помешает.
Пока что решил вопрос слушателем contextReloadEvent, и ручками дозабиваю базу, сохраняя все некоторое дерьмо, которое там уже накоплено, но это костыль, да и чем больше справочников, тем больше этого, по сути, ненужного кода придется поддерживать.

Ответы41458415614179944307

318 4 фев, 10:58 318 1341458

>>1341441
Гугли фикстуры

319 4 фев, 13:14 319 1341561

>>1341441
Вроде бы liquibase такое умеет.

320 4 фев, 19:38 320 1341799

>>1341441
Вот они ебаные гибернеты нахуй!
С JDBC проблем бы не знал!

Ответы41830

321 4 фев, 20:17 321 1341830

>>1341799
Спринг и гибернейт придумали жидорептилоиды из майкрософта, чтобы сгубить родную Жабушку. И проклятые модули пришли от них же.
Надо все писать на сервлетах и JDBC, вручную запускать Tomcat и деплоить, вот это по-нашему, православному.

322 4 фев, 20:27 322 1341840

>>1332296 (OP)
https://github.com/lacuna/bifurcan
Дискас?

Ответы41863

323 4 фев, 20:49 323 1341863

>>1341840
И че дискасить? Есть гуава, на остальное похуй.

Ответы41986

324 4 фев, 23:18 324 1341986

>>1341863
Есть cactoos, на остальное похуй.

Мимо Егор Бугаенко

Ответы42753

325 5 фев, 14:32 325 1342264

>>1340917
Это был не я бро.
>Почему поля в JdbcConnection не приватные
Потому что я юзаю их в других классах.
> Сделай статический метод run, который возвращал бы новый Connection
А в чём смысл? Зачем везде создавать новые конекшоны и прочее если можно их прописать в jdbcConection и пользовать везде?

Ответы42353

326 5 фев, 16:38 326 1342327

Нужно ли ебаться вротэндом или никто на кээсэсы смотреть не будет?

Ответы4236842441

327 5 фев, 17:26 327 1342353

>>1342264
Смысл в том, что Connection у каждого потока должен быть свой

Ответы42511

328 5 фев, 17:52 328 1342368

>>1342327
Нужно, конечно. Как ты будешь свои апплеты на веб-странице размещать без ксс? А в JavaFX ксс повсеместно юзается вместо layout'ов и FXML.

449 Кб, 948x1080
329 5 фев, 19:28 329 1342433

>>1332296 (OP)
Аноны, помогайте, кто уже нашёл сервер лицензий/ключ на новый патч? Моя idea вырубилась :C

Ответы4275042759

330 5 фев, 19:44 330 1342441

>>1342327
Бери bootstrap и ебош как будто ты десигнер.

331 5 фев, 20:25 331 1342468

Поясняю как проводятся собесы на джава мидл+синера (был на днях)

– просыпаешься в 14.50 дня, берешь банку пива из холодильника чтобы опохмелиться
– в 3.00, собес (без камеры)
– поясняешь по ооп своими словами (выдал определение по Аристотелю через форму и материю)
– поясняешь по основным методам объекта (equals, hash-чето-там, что те, кто используют clone – люди не особо умные)
– неспешно поясняешь по спрингу, после рассказываешь пару историй из нелегкой жизни спринг девелопера, все все понимают, слышышь кивания и взгласы обобрения даже без камеры, 30 секунд молчания
– спрашивают про java concurrency, говоришь, что сам не сталкивался, но вот читал, что .... ответ всех устраивает, идем далее
– вопрос по БД – нормализация, индексы, транзакция – на расслабоне все поясняешь со всеми trade offs, дело двух минут, все сталкивались, все все понимают
– какой-от легкий вопрос про структуры, типа чем list отличается от likedlist (на деле посложнее), как-то на опыте выруливаешь, остальное договаривает интеврьюер, под твои возгласы, что эта хуйня нигде, по сути, не используется, "ага, это и хотели услышать"
– вопрос про хайповую джава технологию, отвечаю, что не успел выделить времени на ее изучение, но вот знаю того-то, кто сталкивался и все не так однозначно

Ну вот как-то так.

Разумеется, потом уже были более материальные вопросы про зарплату, легаси на проекте (и заверения, что я буду работать только на хипстерских с контейнерами и кубером), что чем именно я хочу заниматься.

удаленка офк

Ответы424754255643000

332 5 фев, 20:40 332 1342475

>>1342468
Что за камера, вебка? По телефону что ли собеседовался?

333 5 фев, 22:02 333 1342508

Парни, есть у кого задачи, советы, как потрениться после изучения статик методов, и ооп? хочу закрепить, а задач нормальных найти не могу.

Ответы42509

334 5 фев, 22:02 334 1342509

>>1342508
Смотри стандартные классы JDK и думай.

Ответы42521

335 5 фев, 22:07 335 1342511

>>1342353
Так он и есть свой, и всё остальное своё, везде создаётся новый jdbcConection со своими конекшонами и оттуда всё это пользуется. Посмотри скрины ещё раз.

Ответы42532

336 5 фев, 22:22 336 1342521

>>1342509
только я немного не понял как именно можно юзать классы, в какой задаче, я был на плюсах, потом пришлось изза универа на си перейти, и там подход к решению простых задач совсем не тот, там можно функций насоздавать навпример чтобы в массиве найти макс. элемент и переместить его вместо 1 элемента, это 2-3 функции, а с классом как работать, просто рандомный класс создать и туда методов напихать и в мейне заюзать?

337 5 фев, 22:39 337 1342532

>>1342511
У тебя в трех методах используется один и тот же Connection по одной только тебе известной причине. Зачем тебе вообще метод run, если он выполняет функцию конструктора, ммм? Зачем тебе prepared statement/result set внутри класса, если можно просто снаружи создать переменные? А их кстати тоже закрывать надо, ты в курсе, и делать это надо в finally, а не просто close писать.

338 5 фев, 23:31 338 1342556

>>1342468
Если не выёбываешься и не пиздишь - затащил, молодец. Что по условиям работы и кэшу?

339 6 фев, 03:51 339 1342615

>>1332296 (OP)
Аноны, я тут вот: https://sourceforge.net/p/jstego/code/HEAD/tree/
нашёл да-да, откопал какую-то недопиленную прогу.
Тут, по ссылке - исходник на JAVA, и jar-файл тоже доступен к закачке (Files -> Download -> jstego-0.3.jar).
Попытался запустить из под командной строки:
>java -jar jstego-0.3.jar

Вроде запускается, но не пашет нифига.

Помимо алгоритма f5 steganography,
который, кстати, на JavaScript'е имплементирован вот тут: https://github.com/username1565/js-jpeg-steg
В этом JAR-файле есть ещё какой-то интересный алгоритм jsteg.

Если кто из спецов, может допилить его, был бы благодарен.
Я также поискал здесь этот алго: https://github.com/search?q=jsteg
вижу пару исходников на Java, но ни одного рабочего jar-файла. Как компилировать - не помню уже...
Есть также исходники на C и на Go, уровень их "рабочести" - не проверял.

Если всю эту шнягу довести до ума, то нборода того же карасика - могла бы в и жипег.
Посему, просто запомните - f5 и jsteg

Ответы42616

340 6 фев, 03:52 340 1342616

>>1342615
>Помимо алгоритма f5 steganography,
>который, кстати, на JavaScript'е имплементирован вот тут: https://github.com/username1565/js-jpeg-steg
Там исходник, а демка - вот тут: https://username1565.github.io/js-jpeg-steg/

341 6 фев, 07:20 341 1342648

Кто-нибудь разбирается в liquibase?
Поясните пошагово или покажите настройки, как посредством hibernate/jpa и liquibase напихать данных в таблицы для тестирования.

342 6 фев, 11:31 342 1342750

>>1342433
Лицензию купи, жлобяра. Даже обоссанный джун может позволить себе тратить $500 в год на инструмент.

343 6 фев, 11:35 343 1342753

>>1341986
В голос.

344 6 фев, 11:41 344 1342759

>>1342433
Цепляешь няшу в близлижащей шараге.
Регаешь на неё студенческую лицензицию на продукцию Jet Brains - https://www.jetbrains.com/student/.
Получаешь кей.
Дропаешь няшу.

Цикл замкнулся.

Повторять 1 раз в год.

345 6 фев, 13:02 345 1342793

Дайте же уже пожалуйста не хитровыебанную идею для очердного круда и я пойду писать код.

Ответы42798

346 6 фев, 13:04 346 1342798

>>1342793
Тудушечка
Ишуетракер
Доскаобъявлений
Форум
Чат

Ответы42799

347 6 фев, 13:07 347 1342799

>>1342798
Спасибо.

Ответы42802

348 6 фев, 13:22 348 1342802

>>1342799
Ты только в гит выкладывай, будем тебе с анонами кодревью делать кек

84 Кб, 720x1280
349 6 фев, 13:37 349 1342808

>>1332296 (OP)
Аноны, подскажите, какого хуя в java запрещено множественное наследование от абстрактного класса(да и от любого иного), но не запрещена множественная имплементация от интерфейсов? В чём разница? Будет ли моветоном, если полностью откажусь от наследования в пользу имплементации? Удобно же. Прошу пояснений у знатаков

Ответы428194282342825

350 6 фев, 14:04 350 1342819

>>1342808
Наследование это наследование, имплементация это имплементация, при чём тут блять абстрактные классы?

Ответы4287342954

351 6 фев, 14:08 351 1342823

>>1342808
Дядя, учись гуглить.

352 6 фев, 14:10 352 1342825

>>1342808
Наследование в принципе - моветон. Редко, когда оно необходимо. Юзай интерфейсы смело.

Ответы4282942955

353 6 фев, 14:14 353 1342829

>>1342825
Wut? Более мемного вброса не видал в этом году. Эх, вот бы В ООП-ориентированном-ЯП называть имплементацию маветоном

Ответы42830428374283942927

354 6 фев, 14:15 354 1342830

>>1342829
имплементациюнаследование, пардон

355 6 фев, 14:23 355 1342836

Ебать конечно иногда ахуеваешь с этих ваших jparepository, это же интерфейс нахуй, как его методы вызываются вообще шо?

Ответы42988

356 6 фев, 14:26 356 1342837

>>1342829
Наследование и правда не нужно, это анти-паттерн и применять его надо лишь в крайнем случае.

Ответы43056

357 6 фев, 14:39 357 1342839

>>1342829
Наследование следует использовать только для незначительных изменений поведения + чтоб компилятор смог отловить ошибки. Например, у тебя есть класс Jopa, у которй есть свойство цвет. По какой-то причине у тебя есть методы bringMeRedJopa и bringMeBlackJopa. Наследуешь два класса: RedJopa и BlackJopa, и вуаля, компилятор тебя обругает, если что.

Во всех остальных случаях использования наследования получаешь хрупкую архитектуру.

Ответы42849

358 6 фев, 15:00 358 1342849

>>1342839
В твоём вбросе нет конкретных кейсов, почему наследование это плохо. Пример также ничего не иллюстрирует.

Знаю, про ромбовидную проблему наследования .

Окей, пойду спрошу у гугла, что там за проблемы есть у наследования. Интересно.

Ответы42875

359 6 фев, 16:18 359 1342872

Джава компилируемая или интерпретируемая?

360 6 фев, 16:19 360 1342873

>>1342819
Отсылка к стату КакАйПросто?

361 6 фев, 16:22 361 1342875

>>1342849
>В твоём вбросе нет конкретных кейсов, почему наследование это плохо
Почти любое использование наследования это плохо. Лень объяснять. Просто попробуй запилить с нуля какой-нибудь обобщенный сериализатор Object->Json/Yaml/Huiaml и обратно, с использованием различных источников/приемников - файл, память, сеть итд с возможностью побайтового/ленивого чтения, обработки ошибок итд, используя лишь наследование. Гарантирую, что соснёшь уже на этапе выстраивания иерархии наследования классов.

В наследовании нет ничего такого, ради чего его стоит повсеместно использовать. Наследование - это хитровыебанная замена копипасту. Разработчики пхп, кстати, это давно поняли и запилили traits.

>Пример также ничего не иллюстрирует.
Пример иллюстрирует один из немногочисленных случаев, когда наследование оправдано.

Ответы42889

362 6 фев, 16:41 362 1342889

>>1342875
Я и не агитирую выстраивать модули исключительно на наследовании. В большинстве случаев используется композиция. Но для конкретных кейсов - наследование отлично подходит, уменьшает кол-во бойлерплейт кода и улучшает читабельность.

В любом случае, спасибо за комментарии. Как-минимум прочту вечером пару статьй с компнями в огород наследования.

363 6 фев, 17:15 363 1342902

Какой даун посоветовал вкатываться в спринг на спринг буте?

Ответы4291643201

364 6 фев, 17:35 364 1342916

>>1342902
Многие статьи рекомендуют это. Why not?
Ноу дискасс, если хочешь понимать, что и как работает, нужно поднимать руками

Ответы42920

365 6 фев, 17:39 365 1342920

>>1342916
>что и как работает
Как не понимая этого можно писать работающий код?

Ответы42939

366 6 фев, 17:47 366 1342927

>>1342829
Нуфаг или тайм-тревелер из 90-ых детектед. Наследование - антипаттерн. Алсо, гугли expression problem.

367 6 фев, 18:01 367 1342939

>>1342920
Есть нисходящий и восходящий подходы к изучению.
Многие рекомендую сперва ознакомиться с основными концепциями, для этого как-раз и поможет Spring Boot. Когда уже каркас небольшого проекта есть, начинаешь углубляться в дебри и т.д.
Просто если сразу вдаваться в дебри, можно там и остаться.

Не вижу ничего плохого, чтобы поднять бут-проект, поиграть с ним пару деньков, парралельно изучая, что как работает и устроено.

368 6 фев, 18:24 368 1342954

>>1342819
Иди смотреть стримы унтерменшей, если можешь лишь просраться, даже вопрос не прочитав

369 6 фев, 18:30 369 1342955

>>1342825
Спасибо. Прочёл всю цепочку срача с аноном, растолковал

370 6 фев, 19:10 370 1342964

>>1332296 (OP)
Есть книга типа краткий курс джавы для плюсовиков?

Ответы4296543067

371 6 фев, 19:14 371 1342965

>>1342964
Алсо что помимо кор знать нужно? Хочу перекатиться в джависты, заебало байтоёбствовать.

372 6 фев, 20:03 372 1342988

>>1342836
Магия спринга генерит тебе сыкуль и всякие штуки по названию метода интерфейса, таким образом импементируя твой интерфейс

373 6 фев, 20:25 373 1342995

Придумайте мне предметную область чтобы я запилил круд с какой-то логикой.

Ответы4300443076

374 6 фев, 20:35 374 1343000

>>1342468
джуном сходу ответил бы на все это

375 6 фев, 20:38 375 1343004

>>1342995

Магазин дилдо

Ответы43005

376 6 фев, 20:38 376 1343005

>>1343004
А логика какая?

Ответы4300943011

377 6 фев, 20:45 377 1343009

>>1343005
Смысл в том, чтобы продовать несуществующий товар. Слушай сюда. Открываеешь компанию "Пидрильный клуб любителей пощекотать очко". Даешь рекламу в пидрильный журнал: мол, у тебя такой инструмент для внедрения в очко. Ну, дескать, делает то, что не может ни одно другое устройство, последний прорыв в сексуальных технологиях, удовлетворение гарантированно. Иначе возвращаешь деньги, ну и всё такое. Эти приблуды продаются по двадцать пять фунтов за штуку. Для клиента это херня, за такую кучу удовольствия. Но чеки они шлют в адрес другой компании, с приличным названием, типа, "Мелочевка Бобби" или что-то в этом роде. По двадцать пять фунтов каждый. А ты в банке обналичиваешь и получаешь деньги. А запутка вот в чем: ты отправляешь чек назад, от компании "Пидрильный клуб любителей пощекотать очко", со словами "Извините, товар из Америки не поступил, у них закончились запасы". И тогда посмотришь, сколько человек обналичат такие чеки – ни единая душа, кому охота, чтобы менеджер их банка знал, что в свободное от получения чеков время они щекочут свое очко.

378 6 фев, 20:45 378 1343011

>>1343005
Уловил архитектуру проекта?

Ответы43013

379 6 фев, 20:46 379 1343013

>>1343011
Хуевую?

Ответы43015

380 6 фев, 20:49 380 1343015

>>1343013
Перечитай sql распечатку, которую я скинул выше, потом отчитайся перед тимлидом. Если ничего не поймёшь, то завтра на планёрку.

381 6 фев, 20:58 381 1343024

Столько времени прошло и только сейчас я задался вопросом: А что будет если ГС очистит наш синглтон? Данные которые хранились в нем сбросятся. Это что за пиздец получается.

Ответы43025430264302843039

886 Кб, 1366x768
382 6 фев, 20:59 382 1343025

>>1343024
>2020
>синглтоны

383 6 фев, 21:01 383 1343026

>>1343024
Читай про WeakReference и всю хуйню.

384 6 фев, 21:03 384 1343028

>>1343024
НЕ БУ-ДЕТ! ТВЁРДО И ЧЁТКО!
Статик поля (у тебя же инстанс синглтона статик?) не очищаются коллектором.

385 6 фев, 21:15 385 1343039

>>1343024
А с чего он должен его очистить? Статик ссылка на объект ведь никуда не девается

386 6 фев, 21:16 386 1343041

Как лучше всего инициализировать пустые поля объектов с типом коллекций? В конструкторе, или сразу писать private Set<T> set = new HashSet<>();?

Ответы4308943106

387 6 фев, 21:53 387 1343056

>>1342837
>Наследование и правда не нужно, это анти-паттерн
Если прям уж моветон и антипаттерн, почему всякие спринги, хибернейты и гуавы состоят из наследования чуть менее, чем наполовину? Это все говнокод?

Ответы43084

388 6 фев, 21:59 388 1343067

>>1342964
Java за 21 день.

389 6 фев, 22:09 389 1343076

>>1342995
Ну короче я придумал, теперь придумайте мне стек технологий.

Ответы44265

390 6 фев, 22:28 390 1343084

>>1343056
Так исторически сложилось.

391 6 фев, 22:34 391 1343089

>>1343041
Как тебе удобнее. Если он всегда точно будет пустой, то вообще похуй. Я обычно делаю в конструкторе.
Но тут от задачи зависит. Иногда может и так, и так неправильно, а надо вообще через параметры конструктора или через билдер, а то вдруг там будут какие-то изначальные значения?

Ответы43090

392 6 фев, 22:36 392 1343090

>>1343089
Нет, изначально он 100% пустой. Просто я использую ломбок, а так бы пихнул без задней мысли в конструктор.

Ответы43102

393 6 фев, 22:47 393 1343102

>>1343090
Прочитал про ломбок, там типа аннотацией можно указать дефолтное значение?
Хз, в конструкторе всё равно лучше. Да, если будет много конструкторов, то придётся в каждом указывать. Зато, когда ты определяешь в конструкторе, ты как бы говоришь своим кодом - я определяю мапу как пустой хэшмап, находясь в добром здравии и уме, это моё сознательное решение, принимайте его во внимание, когда захотите рефакторить.

Ответы43105

394 6 фев, 22:50 394 1343105

>>1343102
В ломбоке автоматически генерируется пустой конструктор, поэтому нет возможности там что-то задать. Можно написать конструкторы руками, конечно, но будет не стильно.

Ответы43107

395 6 фев, 22:51 395 1343106

А еще вопрос, в какой момент будут проинициализированы поля в таком >>1343041 варианте, до или после вызова конструктора?

Ответы4311343115

62 Кб, 1000x1000
396 6 фев, 22:55 396 1343107

>>1343105
>В ломбоке автоматически генерируется пустой конструктор
Он же в джаве и так генерируется автоматически.

Ответы43256

397 6 фев, 23:09 397 1343113

>>1343106
До

Ответы43115

398 6 фев, 23:13 398 1343115

>>1343106
>>1343113
Вообще я проебался немного, до тела констуктора, но после super(...)

399 7 фев, 09:18 399 1343201

>>1342902
3 анотации, 2 класса и у тебя готовая приложуха которая обрабатывает запрос с ебучей веб формы.
Что ещё надо для быстрого вката в технологию?
Бинами обмазываться? Иксэмэли править?

Ответы4320343210

400 7 фев, 09:20 400 1343203

>>1343201
>3 анотации, 2 класса
Надо тогда вообще в джаву вкатываться со спринг бута, хуякс хуякс и уже веб приложиуха. Что ещё надо для быстрого вката?
Циклами обмазываться? Эксэпшоны прописывать?

47 Кб, 1519x159
401 7 фев, 09:49 401 1343206

хули он с тегами выводит?

Ответы43390

402 7 фев, 10:09 402 1343210

>>1343201
Спринг секьюрити из коробки например там вообще хуйня ебаная, в любом случае придётся ебаться с конфигами.

Ответы43391

403 7 фев, 11:46 403 1343256

>>1343107
Ебан просто сути ломбока не понимает. Там аннотаций у него до жопы. Можно прописать для пустого конструктора@NoArgsConstructor, нужен, если есть не пустой, по сути как и в простой джаве, но ты пишешь это всё не в ручную, а аннотацией указываешь, и она закулисами автоматом хуярит конструктор без аргументов., для конструктора со всеми аргументами, кастомный конструктор, геттеры/сеттеры и тп.

404 7 фев, 13:05 404 1343321

Привет всем в этом солнечном треде
Считаю, что имею некоторый опыт в пагромеровании, mysql, nginx, все такое, баловался питоном, настроил бота постить что-то абстрактное в Инстаграмме и подписываться по тегам мрази банят аккаунты по первому же подозрению, но заниматься сборкой Лего по чужим апи достало, неужели вся суть программирования сводится к этому?

За месяц лениво пролистал джаву от орейли, узнал что-то новое для себя, упорядочил знания о наследовании и тд, в целом понравилось.

Хочется ЗДЕЛОТЬ С НУЛЯ что-то свое, но не пойму с чего начинать. Подсмотрел у одного индуса ГуглДрайвФтпАдаптер, хочу сделать такой же, у него говнокод какой-то. Или свой сайт с встроенными другими программами, но мне кажется тут уже не джава начинается, а JS/Django.

Как вообще проектируется проект, если нет дяди который тебе спустит ТЗ

Ответы43346

405 7 фев, 13:38 405 1343346

>>1343321
>Или свой сайт с встроенными другими программами, но мне кажется тут уже не джава начинается
Почему? Апплеты.

Ответы43372

406 7 фев, 14:23 406 1343372

>>1343346
>2к19
>Апплеты
Хороший траленг

По теме: ебани rest сервис на спринге. По ходу дополняй его всякими штуками-дрюками

Ответы44837

407 7 фев, 14:41 407 1343390

>>1343206
Ну так что дали то и выводит!
Это тебе консоль а не браузер!

Ответы43413

408 7 фев, 14:42 408 1343391

>>1343210
>Спринг секьюрити из коробки
Там в катальщику сперва круд запилить бы!

Ответы43393

409 7 фев, 14:44 409 1343393

>>1343391
Да ето изи.

410 7 фев, 15:07 410 1343404

>>1332296 (OP)
Как выучить Hibernate? Требуют в каждой вакансии. А я только с Spring Data работал.

Ответы43757

411 7 фев, 15:17 411 1343413

>>1343390
Тупое гавно тупого говна. ПХП автоматически от тегов выхлоп чистит.

Ответы434194343943719

sage 412 7 фев, 15:35 412 1343419

>>1343413
ПХП — ненужное говно без задач. Так и запиши.

Ответы43432

413 7 фев, 15:56 413 1343432

>>1343419
на самом деле это второй выбор кровавого тырпрайза после жабы

414 7 фев, 16:22 414 1343439

>>1343413
С хуяли функция принта в консоль должна интерпретировать html-теги? Для него это просто строка.

415 7 фев, 19:41 415 1343550

https://kontur.ru/Files/userfiles/file/edu/CAPTCHA-сервис v2.pdf Это тз ебанутое или я ебанутый?

Ответы43602436874375843848

416 7 фев, 21:11 416 1343602

>>1343550
Это на джуна? Выглядит интересно на самом деле, хотя, как мне кажется, многовато требований для тестового. Можно не торопясь написать самому, потом на собесах показывать.

Ответы43611

417 7 фев, 21:17 417 1343611

>>1343602
Это тестовое для стажировки в какой-то шараге за 30к

Ответы4363843797

418 7 фев, 21:45 418 1343638

>>1343611
Стажировки??? Да пошли они нахуй с такими тестовыми тогда.

419 7 фев, 23:14 419 1343687

>>1343550
Это просто бесплатная работа, которую они интегрируют в свой высер, а лоху перезвонят.

Ответы43707

420 8 фев, 00:03 420 1343707

>>1343687
Не, не думаю.
https://kontur.ru/education/programs
https://kontur.ru/education/programs/intern

421 8 фев, 00:23 421 1343719

>>1343413
это ты тупое говно тупого говна, если не понимаешь что консоль и браузер это разные вещи.

422 8 фев, 04:41 422 1343757

>>1343404
BUMP

423 8 фев, 04:43 423 1343758

>>1343550
Лол. А я собирался подаваться в эту контору. Это же СКБ Контур? Пиздец говнище.

424 8 фев, 09:52 424 1343797

>>1343611
Шараги не входят в топ20 ит компаний по рф.

Ответы43815

425 8 фев, 10:46 425 1343815

>>1343797
Что за рейтинг компаний? Сейчас загуглил, нашёл какую-то хуйню, в которой нет ни яндекса, ни мистера мэйлеца, только галеры разные.

Ответы43823

426 8 фев, 11:03 426 1343823

>>1343815
Много мейлру и яндекс поставляет ПО, автоматизированных систем банкам и прочему интерпрайзу? Похоже ты понятия не имеешь, о чем говоришь.

http://www.cnews.ru/reviews/rynok_it_itogi_2017/review_table/5ea292822e4f02a7c71a3495f1e456e5b320f86a

Ответы4383143846

427 8 фев, 11:15 427 1343831

>>1343823
То есть, ИТ-уровень компании определяется количеством аутсорса? По моему, это ты не понимаешь, о чём говоришь. А то сейчас окажется, что гугл и эппл тоже не айти-компании, как же, они же БАНКАМ программы не пишут!

428 8 фев, 11:53 428 1343840

Статья на Хабре "Как стать Java разработчиком за 1,5 года":
https://habr.com/ru/post/439432/

Ничего не понимаю. Где эти вакансии, на которые берут без знания спринга, гибернейта и кучи других фреймворков? Или его взяли из-за прохождения сертификации Oracle?

Ответы44092

429 8 фев, 12:05 429 1343846

>>1343823
>люкофт
>Епам

Топ уровня УКРАИНА. Ахахаха.

430 8 фев, 12:10 430 1343848

>>1343550

Выглядит как тестовое на миддла, которое дают после прохождения собеседований, чтобы подтвердить наличие опыта и знание технологий.

Ответы4386243960

431 8 фев, 12:30 431 1343862

>>1343848
Выглядит как наебалово.

432 8 фев, 14:38 432 1343960

>>1343848
Я как ждун вкатальщик иногда охуеваю от таких тестовых!
Так то реально всё, гуглить всякие бестпрактисы, две недели хуярить код!

Ответы43988

433 8 фев, 15:15 433 1343988

>>1343960
А разгадка проста.
Рыночек программистешек то уже все.
Еще хуже чем с юристами и бухгалтерами.
Выполняешь такой тикет на мидла, бесплатно, даже как ждуну не платят.

Ответы44044

434 8 фев, 16:29 434 1344044

>>1343988
1) Рынок программистов все
2) Заводов нет
3) В питорочках тоже

Куда работать-то? Стоматологом что ли

Ответы44091

435 8 фев, 17:28 435 1344091

>>1344044
Работать вебшлюхой. Но сначала придется пришить себе пизду

Ответы44093

436 8 фев, 17:29 436 1344092

>>1343840
Мылыш, если ты предоставишь 2 этих сертификата при устройстве на позицию джуна, будет ОЧЕНЬ большой глупостью не взять тебя

Ответы44095

437 8 фев, 17:29 437 1344093

>>1344091
Пизда не актуально же, айтипедия сказал.

438 8 фев, 17:31 438 1344095

>>1344092
Если ко мне придут 2 кандида на одно место, у одного в CV будут эти 2 сертификата, у второго кровавый-стек(Спринг, Хайбернейт, etc). Я с долей 80% возьму первого.

мимо-мидл

439 8 фев, 17:42 439 1344107

Вставлю свою 5 копеек.
Вот я дохуя времени потратил на сертификат и могу сказать, что OCA - это повод позвать на собеседование. Но на самом собеседовании у тебя начнут спрашивать за ООП, паттерны, архитектурку простенькую попросят нарисовать. Если на этом поплывёшь, то ничего не светит. Я вообще охуел, когда меня на одном собеседовании спросили, как return значения внутри JVM на стеке работает и понял, что пока искать работу мне еще рановато.

Ответы4419144279

440 8 фев, 20:22 440 1344191

>>1344107

Конечно рановато, ведь на работе ты будешь писать компиляторы, хули ее искать, пока не напишешь свой компилятор.

441 8 фев, 22:03 441 1344265

>>1343076
Ну короче я придумал и чет как-то дохуя всего. Лень.

442 8 фев, 22:14 442 1344279

>>1344107
> как return значения внутри JVM на стеке работает и понял, что пока искать работу мне еще рановато.
лол, попался тебе даун который решил поумничать скорее всего, таких надо самих гнать из компании. Нахуя тебе это знать если ты джун и твоя задача будет клепать REST API на спринге?

Ответы4428544303

443 8 фев, 22:33 443 1344285

>>1344279
Ну да, зачем понимать, как освобождается память и другие ресурсы, для клепания крудов это совершенно лишняя информация.
В очередной раз убеждаюсь, что мелкобуквенность - стопроцентный индикатор двузначного IQ.

Ответы4428944292

444 8 фев, 22:41 444 1344289

>>1344285
Лол, вот типичный пример - вот таких как ты и надо гнать из компании как можно быстрее, или как минимум не давать им проводить интервью (хотя скорее всего ты школьник). Совершенно верно - для клепания крудов не нужно знать как освобождается память, нет, это не лишняя информация - но и не настолько необходимая, чтобы реджектить кандидата который этого не знает.

sage 445 8 фев, 22:44 445 1344292

>>1344285
Объясни мне, нахуя мне знать, как освобождается память, если в Java у меня попросту нет даже средств для того, чтобы ею управлять (кроме Unsafe)? И это одна из ключевых фишек Джавы: разработчику вообще нахуй не надо задумываться о такой низкоуровневой хуйне и он может сосредоточиться на программировании, а не на ебле с указателями на указатели и на отлавливании утечек памяти. Поэтому данные знания действительно нахуй не нужны, если ты конечно не собираешься писать собственную JVM.

Ответы4429444303

446 8 фев, 22:45 446 1344294

>>1344292
Удачи без знания soft/weak reference и принципов работы gc.

Ответы44295

sage 447 8 фев, 22:48 447 1344295

>>1344294
Нужно очень сильно постараться, чтобы выстрелить себе в ногу этим :)

448 8 фев, 23:06 448 1344303

>>1344279
А мне наоборот понравилось, это был хороший вопрос. Особенно если он задаётся не из воздуха, а по ходу беседы, как было в моём случае. Ты ходел бы работать с людьми, которые хорошо понимают устройство языка, или с даунами, которые только вчера хеллоу ворлд освоили, и считают, что этого достаточно?

>>1344292
Ну как минимум с вышеупомянутыми слабыми ссылками ты уже обосрался, средства есть. Но ты прав, в большинстве случаев достаточно просто позволить ссылке на объект вывалиться из скоупа и не морочить себе голову. Но если пишешь свой хитрожопый кэш, коллекцию, да или просто любой другой класс, который управляет своей памятью (хранит ссылки на другие объекты), то понимать это надо.

Ответы4431044363

449 8 фев, 23:14 449 1344307

>>1341441
>генерить базу хибером
Убил бы нахуй.

Ответы44314

450 8 фев, 23:21 450 1344310

>>1344303
>Ты ходел бы работать с людьми, которые хорошо понимают устройство языка, или с даунами, которые только вчера хеллоу ворлд освоили, и считают, что этого достаточно?

Да, я хотел бы - но реальность такова что хороших работников не найти, поэтому на такие вещи можно закрыть глаза, если на позиции где будет работать интервьюируемый нет явной необходимости это знать. Я провел много собеседований в большую финтех компанию, и когда только начинал тоже был как ОП, спрашивал всякие "сложные" вопросы, где я хорошо разбирался (про алгоритмы например), но потом понял, что это не нужно, компании всего лишь нужно найти "приемлимого" работника на данную позицию, а не идеального.

451 8 фев, 23:34 451 1344314

>>1344307
А как прально? В import.sql? Чем плоха автогенерация?

452 9 фев, 00:27 452 1344326

Начал вкатываться в джаву, написал простенькое приложение с интерфейсом через SceneBuilder. Имеется 3 файла: Main.java, Controller.java, sample.fxml. Собственно вопросы:
1) Через IDE это запускается, но как мне запустить это все через консоль? При попытке запустить через "java Main", появляется ошибка "Could not find or load main class Main.class". Пробовал различные варианты из гугла в стиле "-classpath . ", "-cp", но мне кажется, что проблема в чем-то другом.
2) Как правильно писать маленькие, прикладные программы? Уточню: есть у меня .java файл, я компилю его в .class файл. А дальше что? Каждый раз через консоль "java main.class"? Писать скрипт? Есть ли способ сделать джава код исполняемым файлом?

Ответы4433444554

453 9 фев, 00:54 453 1344334

>>1344326
Could not find or load main class Main.class
Надо запускать класс в котором, есть метод
"public static void main(String[] args)"

javac Class.java

java Class

11 Кб, 621x198
454 9 фев, 00:59 454 1344335

Почему во втором случае java забывает про тип?

455 9 фев, 01:05 455 1344336

Анончики! Надоело быдлокодить! Хочу создавать приложухи и возвращаясь через год не ломать себе ноги, об свой же код. Есть годные книги о том, как правильно сделать слои приложения и как правильно писать чистый, понятный и хороший код?

Такой вопрос. Есть 3 класса, с почти одинаковыми методами. Не хочу повторять один и тот же код в 3 классах. Интерфейс не вариант использовать, так как в этих 3 классах могут потом методы отличаться.

Я сделал абстрактный класс в нём реализовал все методы, которые похожи между 3 классами. А методы которые отличаются реализовал в каждом из этих 3 классов отдельно. (Воспользовался перегрузкой методов).

Получилось следующее: Есть 4 класса. 1 класс является абстрактным и в нём по умолчанию реализованы методы, которые используются в 3 классах. В каждом из 3 классов есть по одному методу, которые реализуются по разному в каждом классе.

Это быдлокод или нормально? Просто смущает, что я создаю класс, ради одного метода.

Ответы4434644440

243 Кб, 400x400
456 9 фев, 01:33 456 1344346

>>1344336
>Просто смущает, что я создаю класс, ради одного метода.

Ответы44349

457 9 фев, 01:35 457 1344349

>>1344346
АХАХХАХАХАХА в голосину проорал) Это этот Егорка) Который призывал отказаться от сущностей? Мол зачем создавать класс, если он ничего не умеет.

458 9 фев, 02:45 458 1344363

>>1344303

>Ты ходел бы работать с людьми, которые хорошо понимают устройство языка, или с даунами, которые только вчера хеллоу ворлд освоили, и считают, что этого достаточно?

>Раздает советы насчёт работы

> Завалил собес

>Считает даунами тех, кто знает технологию хуже, чем он

>Определяет айсикью по орфографии

>Сам пишет с ошибками

Диагноз: чсвшный безработный школьник

Рекомендованное лечение: качать софт-скилы, убавить токсичность

>

459 9 фев, 12:52 459 1344440

>>1344336
> Есть годные книги о том, как правильно сделать слои приложения и как правильно писать чистый, понятный и хороший код?
Очевидная Elegant Objects. Еще прочитай какую-нибудь книжку по скале\хаскелю\окамлу.

460 9 фев, 15:08 460 1344512

Решил пройти курс на степике по джава. Не могу написать в одном из заданий чё то типо привет мир.
class It's alive! It's alive! {
public static void main(String[] args) {
System.out.println("It's alive! It's alive!");
}
}
Выдает ошибку
Main.java:1: error: unclosed character literal
public class It's alive! It's alive!
^
Main.java:8: error: reached end of file while parsing
}
^
Может удастся мне помочь?

Ответы445334453744539

461 9 фев, 15:44 461 1344533

>>1344512
Название класса должно быть одним словом

462 9 фев, 15:49 462 1344536

https://github.com/Weydile/callboard ну вы поняли.

Ответы445434455044564

463 9 фев, 15:49 463 1344537

>>1344512
В имени класса могут быть только буквы, цифры, _ и $ (эти 2 не используй), причем имя должно начинаться с буквы.

464 9 фев, 15:50 464 1344539

>>1344512
>class It's alive!It's alive!
Думай голова, думай. Что-то в этой строке не так, только что?

465 9 фев, 15:55 465 1344543

>>1344536
Нет readme.md - не смотрел.

Ответы44568

466 9 фев, 16:03 466 1344550

>>1344536
https://docs.spring.io/spring-security/site/docs/4.2.11.BUILD-SNAPSHOT/apidocs/org/springframework/security/core/userdetails/UserDetailsService.html
Прочитай описание метода внимательно.

Ответы44563

467 9 фев, 16:07 467 1344554

>>1344326
Загугли бля, там статей про это море, про манифест узнаешь еще!

468 9 фев, 16:14 468 1344563

>>1344550
Ты о том что добавление пользователя нужно туда перенести?

Ответы4456944574

469 9 фев, 16:14 469 1344564

>>1344536
callboard/src/main/resources/templates/registration.html

27-я строчка

Уже зарегестрированы?

Ах ты пидор безграмотный! Пиздуй в макдональдс!

Ответы4456644568

470 9 фев, 16:15 470 1344566

>>1344564
>callboard/src/main/resources/templates/registration.html
>27-я строчка
https://github.com/Weydile/callboard/blob/master/src/main/resources/templates/registration.html#L27
тебе туда же.

471 9 фев, 16:16 471 1344568

>>1344543
И что мне там для тебя написать? Как джарник в мавене собрать?
>>1344564
Ыыы блять, очевидно же что это опечатка, в остальных местах написано через и.

Ответы44571

472 9 фев, 16:17 472 1344569

>>1344563
Там же авторизация и прочая хуита из коробки есть!
Глянь хелоу ворд на оф сайте про спринг секурити!

Ответы4457044577

473 9 фев, 16:18 473 1344570

>>1344569
Из коробки прям к бд подключается сама и авторизует?

474 9 фев, 16:19 474 1344571

>>1344568
> Как джарник в мавене собрать
Ага!

А ещё какие требования к бд, где смотреть и менять её конфиги (логин пароль)

Ответы44575

475 9 фев, 16:20 475 1344574

>>1344563
Ну перенести в сервис добавление пользователя и использовать сервис в контроллере вполне можно (а может даже и нужно). Но я говорил про Throws в доках, которые ты так и не прочитал, хотя я тебе сказал это сделать.

Ответы44583

476 9 фев, 16:20 476 1344575

>>1344571
Ок

477 9 фев, 16:21 477 1344577

>>1344569
Регистрации юзеров в security нет.

478 9 фев, 16:29 478 1344583

>>1344574
Сложно

479 9 фев, 16:54 479 1344593

114 Кб, 300x231212 Кб, 670x503

я сосал меня ебали

480 9 фев, 17:48 480 1344639

Ну я сделал readme кста.

481 9 фев, 17:49 481 1344641

Можете зайти, поржать.

482 9 фев, 18:17 482 1344657

https://github.com/Weydile/callboard/commits/master
Классные названия коммитов.

Ответы44689

483 9 фев, 18:50 483 1344689

>>1344657
*8828_!==

484 9 фев, 19:50 484 1344725

Нужно было сделать блядскую пагинацию на всякое говно. Ну и справлялся я нормально, обычный GET и всё, пока не дополз до одной хуйни.
Эта хуйня - два инпут поля. Юзер может вводить туда цифры либо оставить пустим, но пагинация должна быть доступна всегда. В итоге я застрял на том, чтобы передавать эти два Integer-a в контроллер. Пробовал вставлять как @RequestParam да только в любом из раскладов у меня всегда null, наверно я не правильно передаю или ещё что.
Плодить контроллеры я не хочу, а потому не юзаю @PathVariable. По мне так это по говнокодски делать:
@GetMapping(value = "/hui/{input1}"
@GetMapping(value = "/hui/{input2}"
@GetMapping(value = "/hui/{input1}/{input2}"

Как можно нормально передавать три и более параметров в контроллер? Вот кусок кода пагинации в JSP
<form method="get" class="row" >
<select name="pageSize" class="pull-right page-selector" onchange="this.form.submit()">

Понятное дело, что я передаю один параметр - pageSize при помощи "this.form.submit()", но а как мне передать два других параметра, не плодя контроллеры на каждый пук?

Ответы4473044879

485 9 фев, 20:02 485 1344730

>>1344725
на форму добавь еще сколько надо параметров
типа <input name="hui" />

тогда этот hui передастся как RequestParam (..&hui=value)

Ответы44735

486 9 фев, 20:24 486 1344735

>>1344730
У меня за этими двумя инпутами уже закреплён POST да и добавить нельзя, ибо тогда фронт будет очень кривым.
Я бы хотел что-то вроде <var="input1" value=${input1}/> Так нельзя но мысль понятна.

Ответы44757

487 9 фев, 20:55 487 1344757

>>1344735
Не очень понял, но может просто добавь инпуты как hidden?

Ответы4478846239

151 Кб, 400x400
488 9 фев, 21:29 488 1344788

>>1344757
А это может быть. Надо попробовать. Отпишу в понедельник как успехи, спасибо.

Ответы44838

489 9 фев, 22:36 489 1344837

>>1343372
Лучше JSP ебануть.

490 9 фев, 22:37 490 1344838

>>1344788
А в воскресенье посмотри фильм "2001 год Космичесская Одиссея"

491 9 фев, 23:58 491 1344879

>>1344725
>а как мне передать два других параметра, не плодя контроллеры на каждый пук?
@RequestParam Map<String, String> requestParams

Ответы46239

492 10 фев, 07:10 492 1344925

>>1332296 (OP)
Статичный абстрактный метод вообще невозможно сделать?
Есть абстрактный класс. Хочу, чтобы в каждом классе потомке обязательно был объявлен и определён некий статичный метод.

Ответы44998

493 10 фев, 11:47 493 1344989

А есть какой-нибудь фреймворк, чтобы в связке html+css+js использовать джаву вместо js? Для гуя или для сайтов.

Ответы4499945025

494 10 фев, 12:38 494 1344998

>>1344925
Нет, переопределять можно только не статик методы.

495 10 фев, 12:41 495 1344999

>>1344989
>чтобы в связке html+css+js использовать джаву вместо js
Как это? Знаю Vaadin, где можно писать только на Java, а на выходе у тебя будут формочки в браузере. Но хз, это ли ты имел в виду.

496 10 фев, 13:38 496 1345025

>>1344989
JSF + PrimeFaces.

Ответы45335

140 Кб, 818x561
497 10 фев, 13:40 497 1345026

Аноны, вы же на линухах сидите? Какую себе "убунтомашину" собирали?
Собрал себе, но понимаю что для убунты оверпрайс. Естественно раздел не тот, но мне интересно именно у местных анонов спросить, у которых линух + idea + веб и сериальчики. В общем на каких машинах сидите аноны?

Ответы450434519845234

294 Кб, 1920x1080
498 10 фев, 14:02 498 1345043

>>1345026
Купи с рук любой ноут где стоит что то уровня i3 на авито.

Вот тебе и машина на которой можно Linux mint ставить
Разве что может ССД придется поставить.

Ответы45045

499 10 фев, 14:03 499 1345045

>>1345043
И на i3 можно комфортно с идеей работать?

Ответы45096

500 10 фев, 15:19 500 1345088

Дали задание для собеседования:
Клиент-Серверное (под tomcat) приложение.

Разработать страницу, отображающую в браузере древовидную структуру.

Функциональность:
∙ выделенный элемент должен быть отмечен отличной от других папок цветом иконки;
∙ реализовать «ленивую» загрузку папок, искусственно добавить задержку в 2 секунды при раскрытии папки, задав такой папке иконку загрузки, при этом должна быть возможность производить различные операции и навигацию по дереву;
∙ возможность добавления/изменения/удаления узлов дерева.
∙ перенос папки, включая вложенные под-папки в выбранную папку;
∙ опционально - организовать хранение данных в БД .
Задание будет оцениваться по следующим критериям:
∙ приятный и интуитивно понятный интерфейс приложения;
∙ краткий и понятный исходный код;
∙ использование паттернов.
Что использовать для решения задачи? Я вижу только вариант с html+css+javascript на фронте и java на беке.

Ответы45199

1,4 Мб, 1479x900
501 10 фев, 15:27 501 1345096

>>1345045
Да, вполне.

502 10 фев, 17:20 502 1345194

АААА БЛЯДЬ ЕБАНЫЙ ДЖАВАФХ

503 10 фев, 17:40 503 1345198

>>1345026
Я в 2014 году (по старому курсу ещё) купил системник примерно за 30к (i7-3770, GeForce GT640, SATA-500, 16GB)
Оперативу Android Studio жрёт как не в себя и хром (когда много вкладок открыто).
Сейчас поди уже 32гб нужно брать на хоум тачку.

504 10 фев, 17:41 504 1345199

>>1345088
Это фулстак мидл?

Ответы45222

может всё таки фриланс? 505 10 фев, 18:08 505 1345215

Господа, как думаете стоит перекатываться с галеры на UpWork на Java бэкэнд, мидл, 100к в областном центре? Есть у кого подобный опыт?

Ответы45259

506 10 фев, 18:18 506 1345222

>>1345199
Нет, на на вакансию Intern Java Developer/Стажер. Я сейчас работаю на php и подозреваю, что у меня подход не правильный

507 10 фев, 18:20 507 1345226

Сап пацаны дали сегодня тестовое задание вывести текст в консоль, ну я их сразу нахуй послал, я блять пришёл на джуниора устраиваться а мне тут блять как с синьйора спрашивают, совсем ахуели бля.

508 10 фев, 18:32 508 1345234

>>1345026
>сериальчики
Сериалобыдло, плиз. Смотри серьезный полнометражный кинематограф.

Ответы45235

509 10 фев, 18:34 509 1345235

>>1345234
Смотрю 1-2 серии доктора кто перед сном, ссу тебе в рот.

Ответы45244

510 10 фев, 18:43 510 1345244

>>1345235
>ссу себе в рот
Починил. мимо

Ответы45245

511 10 фев, 18:45 511 1345245

>>1345244
Не рвись манька, не в сем дано вникать в длинные истории, может когда-нибудь твой мозг сможет удерживать в памяти сюжеты длиньше пары часов, но пока что книги и сериалы не для тебя.

Ответы45251

512 10 фев, 18:48 512 1345250

в сем

513 10 фев, 18:49 513 1345251

>>1345245
Книги и кинематограф - для меня, сериалы - для тебя. Что тебе еще непонятно?

Ответы45252

514 10 фев, 18:50 514 1345252

>>1345251
>Книги
Донцова? Оруэл?

515 10 фев, 19:00 515 1345259

>>1345215
Перекотился из офиса (3к евро на руки было) в апворк и топтал - стало 10к на руки, олсо можно перерабатывать если деньги нужны позарез, доходило и до 20к в месяц (по 80-100 часов в неделю сидел), но долго конечно так не проработаешь.

Ответы4527445288452944552254930

516 10 фев, 19:36 516 1345274

>>1345259
На джава зарабатываешь или скала? Сколько опыт работы? Знания английского какие?

Ответы45285

517 10 фев, 20:06 517 1345285

>>1345274
Джава-реакт фулл стек. Ничего сверх естественного не делаю, всякие веб аппы с рест апи. Английский upper-intermediate я бы сказал, проблем с общением не было, кроме тех случаев когда попадались клиенты-бриты, вот там порой пиздец было ничего не понять.

Кстати ты правильно что это упомянул, это очень важно в процессе поиска клиентов, помню как то не выспался, а интервью было в 2:00 AM, так вот там я инглиш зафейлил полностью, естественно клиент решил со мной не работать (и это не смотря на длительную историю на апворке с 100% success rate все ревью хорошие и тд).

Ответы4529345303

518 10 фев, 20:07 518 1345288

>>1345259
Какой стек сейчас основной у тебя? только джава бэкэнды или что то еще?

Ответы45296

519 10 фев, 20:10 519 1345293

>>1345285
Реакт это который JS фрэймворк? или RxJava интерфейсы пользовательские тоже делаешь? я просто фронт очень плохо знаю в части вёрстки например

Ответы45296

520 10 фев, 20:11 520 1345294

>>1345259
Ты из россиюшки? ИП оформлял? как с налогами?

521 10 фев, 20:13 521 1345296

>>1345288
react-spring-mongodb/mysql (но последнее время почему то клиенты полюбили монго)

>>1345293
>Реакт это который JS фрэймворк? или RxJava интерфейсы пользовательские тоже делаешь?
Да, нет.

Кстати если еще знаешь React Native то в топтале жуткая нехватка кадров с таким скиллом, велком (можно поделить $500 referral bonus лол).

Ответы45314

522 10 фев, 20:27 522 1345303

>>1345285
Обязательно иметь скилл разговаринания на английском? общения текстом не хватит?

Ответы45330

523 10 фев, 20:46 523 1345314

>>1345296
Охуеть успешный в треде.
Дай совет вкатывальщику, куда двигаться сейчас: в активе джава, спринг, пару курсов по хибернейту, андройд бэйсик. Привлекает больше андройд, но вакансий в моем 400к мухосранске практически нет. Но я так понимаю, что даже думая про мобайл, спринг пригодится для написания тех же рест сервисов. Короче как-то я в растерянности.

Ответы4533045377

524 10 фев, 21:17 524 1345330

>>1345303
Обязательно, ну скажем процентов 20 клиентов не любят разговаривать и берут тебя просто на основании фидбека, даже без интервью, потом просто в слаке с ними общаешься. Но это скорее исключение, большинство любят делать видео чаты, еще и каждую неделю, а то и чаще.

>>1345314
уже писал выше - React, React Native, вакансий тысячи, рейт обычно $50 и больше, но как вкатывальщик начни например с $30/h проблем найти не должно быть.

Ответы45339

525 10 фев, 21:27 525 1345335

>>1345025
фее

526 10 фев, 21:42 526 1345339

>>1345330
Подожди, я правильно понимаю, что для полноценной работы с React Native все равно нужно знать Java/Object-C и Android/iOS SDK?

Ответы45351

527 10 фев, 22:09 527 1345351

>>1345339
Не знаю, я работаю только с React, просто упомянул что на топтале много вакансий на React-Native, даже дают реферал бонус в $500 если приведешь годного девелопера.

Ответы45359

528 10 фев, 22:32 528 1345359

>>1345351
Еще раз для тех кто в танке: можно ли с нуля не зная Java/Object-C и Android/iOS SDK выучить один лишь React Native за полгода и пиздовать во фриланс?

Ответы45364

529 10 фев, 22:38 529 1345364

>>1345359
React очень прост, думаю можно выучить гораздо быстрее. Еще раз - я работаю только с React (тот который для веб-аппов), с React Native пока не работал, поэтому точно не берусь сказать нужно ли там знать iOS/Android, но полагаю что вряд ли это необходимо.

Ответы453684552345838

530 10 фев, 22:42 530 1345368

>>1345364
Я понял, спасибо. Добра.

531 10 фев, 23:00 531 1345377

>>1345314
>Охуеть успешный в треде.
я тоже успешный, верь мне, я же сказал что я успешный.

Ответы45392

532 10 фев, 23:23 532 1345392

>>1345377
Ок, верю.

533 11 фев, 00:03 533 1345407

Есть хуло ворд на спринг буте.
Есть в нем кастомный ексепшен, который кидается если не найдена ентети.
Я хочу этот эксепшен поймать в контролер эдвайсе и дальше отправить статус NOT_FOUND - получить редирект на страницу 404.
Контролер для /ерорр наследован от ErrorController.
spring.mvc.throw-exception-if-no-handler-found=true - указано
Что еще надо то блять?
Перерыл гугол и уже немного заебался.
Один из вариантов / попыток :
@ExceptionHandler(NotFoundException.class)
public ResponseEntity<Object> handleUserNotFoundException(RuntimeException exc, WebRequest request){
String message = exc.getMessage();
log.error(message, exc);
return ResponseEntity.notFound().build();

Ответы45409

534 11 фев, 00:09 534 1345409

>>1345407
У меня так, например (точно работает)

@ControllerAdvice
@Slf4j
public class RESTExceptionHandler {

@ExceptionHandler(RuntimeException.class)
@ResponseBody
@ResponseStatus(code = HttpStatus.INTERNAL_SERVER_ERROR)
public ApiError handleRuntimeException(RuntimeException e) {

Ответы4541145413

535 11 фев, 00:16 535 1345411

>>1345409
Это не рест, в это весь цемес. Смутно подозреваю что надо екстендить что то другое например ResponseErrorHandler.
РЕСТ кстати работает нормльно.
Кароче, я решил это так.
Просто добавил респонс статус сверху и вернул тупо шаблон.
Я понимаю что это хуевое решение, но оно сука работает. И по тестам и если так потыкать.
@ExceptionHandler(NotFoundException.class)
@ResponseStatus(HttpStatus.NOT_FOUND)
public String handleUserNotFoundException(RuntimeException exc, WebRequest request){
String message = exc.getMessage();
log.error(message, exc);
return "404";
}

536 11 фев, 00:24 536 1345413

>>1345409
Чому свой апиЕрар не обернул в респонсЕнтитии не вернул его?

Ответы45416

537 11 фев, 00:49 537 1345416

>>1345413
Зочем? Если есть @ResponseBody то спринг обернет автоматически

538 11 фев, 11:02 538 1345522

>>1345259
На джаве фриланса нет!

Ответы45574

539 11 фев, 11:03 539 1345523

>>1345364
Слушай, а у тебя есть высшее образование? Какой специальности диплом?

82 Кб, 1234x488
540 11 фев, 12:01 540 1345553

Мне приходит объект, я просто проверяю - если есть - то добавь еще + 400.

У меня ситуация - добавился объект, с коунтером 100.
Потом я добавляю 400 - становится 500. - но сука объект не сохраняет это состояние. ЧТО ЗА ПИЗДЕЦ?

У меня вечно 500, сколько бы я объектов туда не отправил. В каком месте жабы я оподвилился?

Ответы455544557045614

541 11 фев, 12:02 541 1345554

>>1345553
Ну barcodeList.set там не нужен, это лишняя строчка ( я экспереминтировал другие пути), все равно не работает без этого.

542 11 фев, 12:24 542 1345570

>>1345553
А у тебя equals/hashcode переопределены? А то может он просто новый элемент добавляет.

Ответы45614

543 11 фев, 12:39 543 1345574

>>1345522
Ты еще скажи, что и деда мороза тоже.

544 11 фев, 14:00 544 1345614

>>1345553

Поставь breakpoint на последнюю строчку и запусти дебаггер. Если сразу идет в else, то скорее всего вот >>1345570-анон прав

545 11 фев, 15:17 545 1345645

Посоны, есть потребность сделать проект со Spring.Boot, MongoDB и Gradle (я обычно работаю с Maven).
Решил использовать embed MongoDB.

Прописал зависимости так:

dependencies {
implementation 'org.springframework.boot:spring-boot-starter-web'
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
implementation 'org.springframework.boot:spring-boot-starter-data-mongodb'
implementation 'de.flapdoodle.embed:de.flapdoodle.embed.mongo'
implementation 'org.thymelea:thymeleaf'
compile group: 'cz.jirutka.spring', name: 'embedmongo-spring', version: '1.1'
}

Прописал кофигурацию:

@Configuration
public class MongoConfig {

@Bean
public MongoTemplate mongoTemplate() throws IOException {
EmbeddedMongoFactoryBean mongo = new EmbeddedMongoFactoryBean();
mongo.setBindIp("localhost");
MongoClient mongoClient = (MongoClient) mongo.getObject();
MongoTemplate mongoTemplate = new MongoTemplate(mongoClient, "embeded_db");
return mongoTemplate;
}
}

Получаю ошибку:
Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.

Reason: Failed to determine a suitable driver class

ЧЯДНТ?

545 11 фев, 15:17 545 1345645

Посоны, есть потребность сделать проект со Spring.Boot, MongoDB и Gradle (я обычно работаю с Maven).
Решил использовать embed MongoDB.

Прописал зависимости так:

dependencies {
implementation 'org.springframework.boot:spring-boot-starter-web'
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
implementation 'org.springframework.boot:spring-boot-starter-data-mongodb'
implementation 'de.flapdoodle.embed:de.flapdoodle.embed.mongo'
implementation 'org.thymelea:thymeleaf'
compile group: 'cz.jirutka.spring', name: 'embedmongo-spring', version: '1.1'
}

Прописал кофигурацию:

@Configuration
public class MongoConfig {

@Bean
public MongoTemplate mongoTemplate() throws IOException {
EmbeddedMongoFactoryBean mongo = new EmbeddedMongoFactoryBean();
mongo.setBindIp("localhost");
MongoClient mongoClient = (MongoClient) mongo.getObject();
MongoTemplate mongoTemplate = new MongoTemplate(mongoClient, "embeded_db");
return mongoTemplate;
}
}

Получаю ошибку:
Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.

Reason: Failed to determine a suitable driver class

ЧЯДНТ?

Показать весь текст
Ответы4583745863

546 11 фев, 19:03 546 1345837

>>1345645
Мож надо в application.properties что то добавить?
Путь до БД например.

547 11 фев, 19:05 547 1345838

>>1345364
Почему реакт а не ангуляр?
Ангуляр + спринг намного популярней же.

Тестирование 548 11 фев, 19:19 548 1345850

Недавно вкатился в спринг, пишу довольно простую рест хуйню, один контроллер, у которого есть зависимость от сервиса через @Autowired, нужно написать тесты для контроллера, но для этого нужно сделать mock копию этого сервиса, с этим проблемы, ибо я встретил довольно много способов это сделать, пытался вникнуть, читая документацию и гайды с сайта спринга, но как-то не вышло. Есть ли какие-то ресурсы, которые помогли бы понять что происходит при мокинге, когда стоит использовать @WebMvcTest, а когда @SpringBootTest? @Mock, @MockBean или подключать MockMvc через @Autowired. Как этот MockMvc вообще подключается и почему не всегда при его подключении прописывается @AutoConfigureMockMvc? Вопросы, возможно и глупые, но хотелось бы достичь понимания.

Ответы45857

549 11 фев, 19:22 549 1345857

>>1345850
Не делай через @Autowired. Делай через конструктор с final полями.
https://dzone.com/articles/spring-di-patterns-the-good-the-bad-and-the-ugly
Еще у баедулга есть подробно на эту тему.

Ответы45892

550 11 фев, 19:28 550 1345863

>>1345645

http://bfy.tw/MFFy

551 11 фев, 20:05 551 1345892

>>1345857
Спасибо за статью, поправил, пытаюсь сделать что-то такое:

@RunWith(MockitoJUnitRunner.class)
public class MockitoControllerTest {
private PartiesRepository repository = Mockito.mock(PartiesRepository.class);
private PartyService service = Mockito.mock(PartyService.class);
private PartiesController controller = new PartiesController(service);

@Test
public void testCreation() {
assertThat(this.service).isNotNull();
}
}

Но вылетает мокитоэксепшн, который говорит, что мокнуть сервис не может. У сервиса есть зависимость от репозитория, я так понимаю, что мокнуть надо сначала его, потом сервис, а потом уже всю эту красоту к контроллеру подключать, да?

Ответы45911

552 11 фев, 20:07 552 1345894

А как вы делаете пффф ну например полиморфизм в галерных реалиях?

Ответы45901

553 11 фев, 20:14 553 1345901

>>1345894
List<Entity> entities = new ArrayList<>();

Ответы45902

554 11 фев, 20:16 554 1345902

>>1345901
А почему не ArrayList<Entity> entities = new ArrayList<>();

Ответы45903

555 11 фев, 20:16 555 1345903

>>1345902
Потому что.

Ответы45905

556 11 фев, 20:18 556 1345905

>>1345903
Строгая типизация.

557 11 фев, 20:26 557 1345911

>>1345892
Ты определеись ЧТО ты хочешь потестить, а потом уже пиши тест. Выбери только одно. Каждый метод - один случай.
Какое поведение ты исследуешь.
Я дооолго ебался с тестами по началу кстати, так что понимаю твое замешательство.
Рекомендую искать статьи про тесты только старше 2018 года и только 5й спринг ( или какая там у тебя версия), потому что сейчас тесты пишутся сильно по другому.
-------------------
У тебя нет сетапа, у тебя до теста нужно сперва сделать предварительно все.
https://dzone.com/articles/spring-boot-unit-testing-and-mocking-with-mockito
https://www.baeldung.com/spring-boot-testing
Для общего развития.

Ответы45926

558 11 фев, 20:38 558 1345926

>>1345911
Спасибо за помощь, обязательно почитаю

559 11 фев, 21:18 559 1345962

Нормально ли юзать Launch4j или придумали что-то более крутое?

560 11 фев, 22:04 560 1345984

Продублирую из прошлого треда.
На собеседовании дали задание:
Клиент-Серверное (под tomcat) приложение.

Разработать страницу, отображающую в браузере древовидную структуру.

Функциональность:

∙ выделенный элемент должен быть отмечен отличной от других папок цветом иконки;

∙ реализовать «ленивую» загрузку папок, искусственно добавить задержку в 2 секунды при раскрытии папки, задав такой папке иконку загрузки, при этом должна быть возможность производить различные операции и навигацию по дереву;

∙ возможность добавления/изменения/удаления узлов дерева.

∙ перенос папки, включая вложенные под-папки в выбранную папку;

∙ опционально - организовать хранение данных в БД .
Я как перекатывающийся из php вижу решение этой задачи как java servlet на бекенде, но в качестве фронта я вижу только html+css+js.

Причем большая часть задачи, как перенос папки, включая вложенные под-папки в выбранную папку, решается исключительно на js.

Или я не правильно думаю и есть какой-нибудь swing в браузере?

Ответы459874601846047

561 11 фев, 22:05 561 1345987

>>1345984
JSF, JSP.

562 11 фев, 22:31 562 1346018

>>1345984
Это точно для жавы а не ЖС задание?

Ответы4604746068

563 11 фев, 22:40 563 1346025

Учу JDBC, скоро пойду в тырпрайз!

564 11 фев, 22:41 564 1346028

Есть ли смысл писать приложение на спринге без спринг бута? Web.xml придется создавать, или его можно настроить в коде?

Ответы47232

565 11 фев, 22:56 565 1346047

>>1345984
Двачую этого >>1346018. Задание вообще на фронтендерское смахивает, непонятно зачем джава разрабу эти анимации делать и т.п. Хотя, наверное, как обычно нужен и швец, и жнец, и на дуде игрец, желательно еще и за мрот.

Ответы460684607746083

566 11 фев, 23:14 566 1346068

>>1346018
>>1346047
Глянул другие вакансии компании, им действительно требуется web разраб со знание java se и javascript

567 11 фев, 23:25 567 1346077

>>1346047
Ты очевидно хотел сказать "за хуй в рот"

568 11 фев, 23:30 568 1346083

>>1346047
Сделать задание и просить хотя бы 150к, даже если опыта на джаве нет. Но ждать что будут ебать 24/7 и делать будешь видимо ВСЕ.

569 12 фев, 01:20 569 1346123

Поясните за связку спринг + фронт на реакт/ангуляре.
Как оно ИРЛ?
Хуярят 2 отдельных сервака. 1 со сприрнгом, который раздает РЕСТ апи + еще 1 на ноде(?) где уже работает реакт или ангуляр апп.
Или примерно как здесь.
https://habr.com/ru/company/alfa/blog/340776/
Сливают воедино все в экстазе и единственным бэком будет собственно спринг?

Ответы4613647234

570 12 фев, 02:40 570 1346136

>>1346123
градлом/мевеном билдят фронт, бек, минифицированную версию фронта кладут в /static и вуаля.

Ответы46252

80 Кб, 225x227
571 12 фев, 11:30 571 1346239

>>1344757
Благодарю, как раз то, что мне нужно было.

>>1344879
Я не знал как закинуть их, а не как реквестить.

572 12 фев, 11:51 572 1346252

>>1346136
В статике лежит нода, на которой крутится фронт?
Доступ у фронта к {жава-объектам}, как у тимлифа есть?

Ответы46284

573 12 фев, 13:11 573 1346284

>>1346252
Ноды нет. Фронт билдится один раз, во время релиза и в итоге получается папка с минифицированными ресурсами и index.html, которую копируют в статик.

Ответы46295

574 12 фев, 13:37 574 1346295

>>1346284
Это видимо другое в твоем варианте.
Когда просто импортируются скрипты в шапке хтмл.
Я про полноценный апп на фронте.

78 Кб, 600x800
575 12 фев, 18:30 575 1346424

>>1332296 (OP)
Посоны есть ли какой-то смысл покупать в 2к19 эту книгу для самообучения ? Знаю только основы и то ...

Ответы46431

576 12 фев, 18:59 576 1346431

>>1346424
Государство Платона лучше читни, там реальная философия.

577 12 фев, 20:12 577 1346466

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

Ответы46485

578 12 фев, 20:40 578 1346483

Не пора ли перекат?

579 12 фев, 20:47 579 1346485

>>1346466
Можно поймать исключения в try/catch, засунуть их все в список List<MyException>, а после выполнения метода, если список не пуст, выкинуть свой эксепшн, который в конструкторе будет принимать этот список и извлечет все сообщения сразу.

Ответы46487

580 12 фев, 20:49 580 1346487

>>1346485
>Можно поймать исключения
Можно поймать одно исключения. Я как раз и спрашиваю, как после этого продолжить с того места, на котором мы остановились. В случае построчной обработки докуента все просто, а если там что-то с вложенностью, то уже не очень.

Ответы46488

581 12 фев, 20:54 581 1346488

>>1346487
Я же сказал, поймай одно и засунь в список, выполнение продолжится после catch. Если это не подходит, то кидай код, я же не экстрасенс.

Ответы46489

582 12 фев, 20:55 582 1346489

>>1346488
Разные элементы документа обрабатываются разными классами, не копипастить же везде try/catch и списки ошибок.

Ответы46490

583 12 фев, 20:58 583 1346490

>>1346489
Ты спросил как выкинуть несколько, я тебе ответил. Больше никак.

584 12 фев, 21:20 584 1346501

Какие недостатки есть у JavaFX?

Ответы46504

585 12 фев, 21:23 585 1346504

>>1346501
Ненужность.

Ответы476874888348945

586 12 фев, 22:54 586 1346543

Привет, анон. Осваиваю сокеты, пытаюсь для начала запилить клиент для эхо-сервера, ничего экстраординарного. Код сервера - с оракловского сайта https://docs.oracle.com/javase/tutorial/networking/sockets/examples/EchoServer.java - c небольшой модификацией, возвращает принятую строку не как она была принята, а в верхнем регистре.
Класс клиента - https://ideone.com/v27XKw
main - https://ideone.com/xUwc87

Ожидание: клиент отправляет серверу две строки, принимает их, выводит в консоль и закрывает соединение, после чего программа завершается.
Реальность: зацикливание в методе receiveAll().

Пробовал прогонять в IntelliJ дебагом, выставив брейкпоинт на начале цикла. После приема двух строк оно перестает показывать состояние каких-либо переменных вообще.

Что я делаю не так?

Ответы4654547235

587 12 фев, 22:55 587 1346545

>>1346543
Добавлю, println внутри receiveAll() строки выводит, т.е. от сервера ответ все-таки есть.

37 Кб, 637x39
588 12 фев, 23:09 588 1346551

Парни, я долбоеб, как передавать аргументы командной строки в метод в виде double? Я какую-то срань написал, не заводится.

Ответы46554

589 12 фев, 23:16 589 1346554

>>1346551
double zalupa = Double.parseDouble(args[0]);

Ответы46556

590 12 фев, 23:19 590 1346556

>>1346554
Спасибо, анон.

75 Кб, 1062x612
591 13 фев, 17:34 591 1346950

Как понизить версию джавы для конкретного проекта в Идее?
Пикрелейтед аналогичная настройка в лучшей иде.

Ответы47033

592 13 фев, 19:17 592 1347033

>>1346950
File -> Project structure -> Language level

Ответы47042

593 13 фев, 19:27 593 1347042

>>1347033
Эту настройку я открывал. Но у меня на компе кроме 1.8 jdk никакого нет, он сам как бы должен понизить с обратной совместимостью, а не выбрать другой.

Ответы47049

594 13 фев, 19:36 594 1347049

>>1347042
Попробуй там же в Project structure в пункте Modules изменить версию.

Ответы47067

595 13 фев, 19:57 595 1347067

>>1347049
Блин, я поспешил. Там есть такое. Оу щит айм сорри.

160 Кб, 1280x720
596 13 фев, 23:25 596 1347174

>>1332296 (OP)
Аноны, что почитать/посмотреть по теме spring'a стоит начинающему разработчику? В моём городе в большинстве контор требуют его на позицию стажёра

Ответы47187

597 13 фев, 23:41 597 1347187

>>1347174
Spring in action 4, официальные мануалы с сайта спринга, а также баелдунг

Ответы48890

598 14 фев, 02:46 598 1347232

>>1346028
Нет никакого смысла, web.xml не нужен, но желателен, ибо апликейшен-сервер его мониторит для обновлений, а класс «в коде» - нет

599 14 фев, 02:48 599 1347234

>>1346123
Приложения на реакте и ангуляре это статика, которая работает в браузере клиента. Нода используется только для сборки проекта

Ответы47239

600 14 фев, 02:53 600 1347235

>>1346543
> Что я делаю не так?
Осваиваешь сокеты в 2019. Кроме http давно ничего не нужно

Ответы47580

601 14 фев, 04:49 601 1347239

>>1347234
Попизди мне тут. Если нужен SSR, то надо поднимать отдельный сервак на Ноде для клиентского приложения.

Ответы47494

602 14 фев, 15:25 602 1347494

>>1347239
Oчевидно что задающий вопрос вообще не ебет что такое SSR

603 14 фев, 15:31 603 1347497

241 Кб, 430x600519 Кб, 476x700

Сап. Книга по сетям для общего развития и чтения на парах/дома профитна? Прочёл половину архитектуры компьютера, как то слишком углубленно, читать трудновато, общая картина не слишком сложилась, да и не применю эти знания углубленные нигде. Осталась книга по сетям, после прочтения сложится понимание работы сетей, или там тоже всё глубоко уходит в цифры и номенклатуру?

Ответы47579

604 14 фев, 15:34 604 1347499

>>1332296 (OP)
Двач, посоветуй, что бы такого можно было написать, чтобы на этом проекте научиться и показать потенциальному работодателю свои возможности?
Какой проект подходит для уровня middle java developer? junior не беру, т.к. там может повести и возьмут с минимальными умениями. А надо наверняка

Ответы4795148545

605 14 фев, 17:21 605 1347553

Народ хелп. Я джун.
Есть 2 направления куда зовут. Hybris и ATG от Оракла. И там и там с обучением.
На какой стул сесть?

606 14 фев, 18:38 606 1347579

>>1347497
имхо лучше читать православного Олифера. В сетях тоже будет глубоко, точнее от самой истории и древних архитектур до новых всяких хуинь

Ответы47602

607 14 фев, 18:42 607 1347580

>>1347235
- сап, народ, хочу засунуть себе в жопу кактус, знаю, что будет больно и опасно. Совал вот так и вот так (скриншоты прилагаются), не лезет. Как правильно засунуть себе в жопу кактус?
- вот ты лалка, в 2019 в жопу кактусы совать, все православные посоны давно уже сосут хуй!

Сука, как я вас таких ненавижу.

608 14 фев, 18:50 608 1347582

JSP используется в реальной работе или все уже используют жс фрейворки / тимлиф?
Стоит учить или можно забить?

Ответы4764147710

609 14 фев, 19:22 609 1347602

>>1347579
Ну олифер подойдёт шоб иметь общее представление о работе, мб какие нюансы полезные, но не лезть в жёсткую прикладную хуйню которая будет усваиваться через 20 перечитываний и мне никогда не пригодится?

Ответы47721

610 14 фев, 20:30 610 1347641

>>1347582
Еще пока стоит.

611 14 фев, 20:35 611 1347643

Я так понимаю ораклы забили на GUI для джавы и больше не будут развиваться в этом направлени? Неужели все приложухи будут консольными?

Ответы4770247703

612 14 фев, 21:24 612 1347687

>>1346504
А еще?

613 14 фев, 21:45 613 1347702

>>1347643
Все приложения будут в вэб. Десктоп ненужен.

Ответы47935

614 14 фев, 21:48 614 1347703

>>1347643
Только спринг и мобилки. Остальное нинужно.

615 14 фев, 21:54 615 1347707

Нет случайно в мире долбоебов занимающихся прокачкой начинающих мартышек за бесплатно? Я понимаю, что есть всякие онлайн курсы и т.д., но пока с деньгами не понятно что(возможно появятся относительно большие расходы скоро), а сам не тяну самообучение - нужно, чтобы был кто-то, кто заинтересован в моем результате, не в смысле уговаривать меня как корзиночку, а просто чтобы была ответственность перед кем-то. Вкатываться джуном пока тоже не могу, здоровье не позволяет. Опыт есть небольшой на уровне операций с коллекциями\объектами\структурками, немного sql, веба.

Ответы47756479544842349957

616 14 фев, 21:57 616 1347710

>>1347582
>JSP используется в реальной работе или все уже используют жс фрейворки / тимлиф?
Во всяком легаси-говне только JSP и используется, а легаси-говно - половина вакансий Джавы.

617 14 фев, 22:13 617 1347721

>>1347602
Да, вполне подойдет, где то читал что дело вкуса мол читай что хочешь. В любом случае если зайдет одна книга, то можешь читануть другую и она будет как по маслу лететь

Ответы47929

618 14 фев, 23:07 618 1347756

>>1347707
Может лучше скооперироваться и вместе что-нибудь писать?

Ответы47770

619 14 фев, 23:39 619 1347763

Сделал рест апи на спринге. Работает нормально.
Поставил спринг секьюрити. Посадил апи за него.
Теперь если сделать запрос к апи без пароля редиректит на страницу логина.
Как отправить 403 вместо 302 на лоигн пейдж?
Спринг не выкидывает никаких ексепшенов в консоль.
Ответ мок теста:
MockHttpServletResponse:
Status = 302
Error message = null
Headers = {X-Content-Type-Options=[nosniff], X-XSS-Protection=[1; mode=block], Cache-Control=[no-cache, no-store, max-age=0, must-revalidate], Pragma=[no-cache], Expires=[0], X-Frame-Options=[DENY], Location=[http://localhost/login]}
Content type = null
Body =
Forwarded URL = null
Redirected URL = http://localhost/login

620 14 фев, 23:46 620 1347770

>>1347756
Неплохая идея, кстати чет я не подумал, вопрос только с кем. Писал одно время с одним немцем модик к 3 арме довольно неплохо получалось именно с точки зрения мотивации.

Ответы48033

621 15 фев, 10:40 621 1347929

>>1347721
Спасибо)

622 15 фев, 10:51 622 1347935

>>1347702
Но апплеты и вебстарт никто не юзает.

623 15 фев, 11:05 623 1347951

>>1347499
Ты на одном проекте не научишься!
Загуглишь хуиту и потом сразу забудешь.
Нужно несколько крудов запилить.
Каждый сложнее предыдущего!

624 15 фев, 11:06 624 1347954

>>1347707
>кто заинтересован в моем результате
Всем похуй!
Ещё переживать за тебя что ты обосрёшься!

625 15 фев, 12:08 625 1347999

Как сделать так, чтобы спринг-сервер использовал vpn либо tor (словил 429)?

626 15 фев, 13:05 626 1348033

>>1347770
Оставь какие-нибудь контакты, можно попробовать

100 Кб, 293x798
627 15 фев, 16:18 627 1348222

>>1332296 (OP)
Аноны, нид хелп! настраиваю спринг сикьюрити и тут понеслось.
В матчерах прописываю директории как в доках спринга, а именно:
"/static/ и /partials/". по факту ничего из этого не работает. с статиком решил так: "//*.css", прошло, а вот как с теймплейтами быть?Спринг не хочет видеть, что лежит в партишелах, но видит, что лежит в корне темплейтов. Структуру папок прилагаю. префикс шаблонизатора на "/templates/".

Ответы48345

628 15 фев, 18:42 628 1348335

Анонсы. Работаю год в Андроиде. Устал от верстания экранов и прочей ебатни, думаю перекатиться в бекенд так как в Андроиде больше всего нравится фиксить баги в бизнес логике. Как думаете стоит ли это делать и даст ли мой опыт в Андроиде какой-то плюс при поиске работы в spring/ee?

629 15 фев, 18:52 629 1348345

>>1348222
Хуйни хочу. Сори, уже понял, в чем проблема.

в лишней хромосоме

630 15 фев, 20:51 630 1348423

>>1347707
Нахуй ты такой нужен джуном если самообучение не тянешь? Думаешь на галерах кому то будет интересно тебя обучать?

631 16 фев, 00:05 631 1348545

>>1347499
Значит так. 3 этапа.
1.
Пишешь крад сервлетами. Авторизацию/аутентификацию/ фильтрами. Без жпа. Только сессии, только конекшн, только нативный скл. Минимальные стили . Пушишь в репу.
Важно понимать, как это работает на низком уровне. Только jsp эта вот хуииа тебе ещё понадобится в жизни. Обязательно миграции бд - самое лёгкое - флайвей. Реализовать минимальные релейшены между таблицами.

2. Крад на том же спринг буте, но уже с жпа, нормальными стилями, с бутстрапом, с нормальной спринг секьюой. Таймлиф или фримаркер. Миграция - ликвбейс. Реализовать все виды релейшенов между таблицами.

3. Фул рест крады, с джаваскриптом и норм стилями. С рассылкой почты, с рекапчами, с полным логированием, миграция на выбор.

Ответы4870348704

632 16 фев, 12:38 632 1348703

>>1348545
Схоронил!
Мимо другой анон

633 16 фев, 12:39 633 1348704

>>1348545
Что по софту нужно знать?
Tomcat, Docker?

Ответы48793

634 16 фев, 15:28 634 1348793

>>1348704
Спринг бут сам тебе настроит томкат или андертоу, остальное зависит, насколько у вас сильно развит ci и devops. Докер, линуксовые команды, монго/постгрес/оракл.

Ответы48859

635 16 фев, 16:35 635 1348859

>>1348793
Со спринг бутом понятно, но там анон советовал по хардкору с сервлетами поебаться, вот и спрашиваю, а то там помимо томката ещё и джетти есть, вилдфлай и глассфиш!
И хз что из этого нужно ждуну вкатальщику трогать

Ответы4886048983

636 16 фев, 16:36 636 1348860

>>1348859
Что угодно, кроме глассфиша.

Ответы48874

637 16 фев, 16:48 637 1348874

>>1348860
Пачиму??

638 16 фев, 17:10 638 1348883

>>1346504
А на чем тогда десктопные приложения пилят?

Ответы48886

639 16 фев, 17:13 639 1348886

>>1348883
На джаве? Зачем?

Ответы4889348945

640 16 фев, 17:22 640 1348890

>>1347187
Почему 4, если уже 5 есть?

Ответы48918

641 16 фев, 17:27 641 1348893

>>1348886
Сам не знаю, но вот идея же написана

642 16 фев, 18:27 642 1348918

>>1348890
я слышал в пятом ошибочки есть или около того. Тем более в 4 показывают xml конфиги, это тоже полезно я думаю

Ответы48948

643 16 фев, 19:00 643 1348945

>>1348886
На неделе хрюша звала на вакансию с десктопом на джаве (Swing/SWT). Отказался, конечно же. Так что бывает и пишут, но устраиваться в такие места и учить UI-фреймворки не нужно энивей - вакансий мало, и после увольнения этот опыт будет бесполезен.
>>1346504-кун

644 16 фев, 19:03 644 1348948

>>1348918
>в 4 показывают xml конфиги, это тоже полезно
Только если собираешься месить легаси-говно. Не видел ещё ни одного проекта, где Спринг настраивался через xml - когда такое было модно, в России все пилили проекты на JavaEE, но даже там старались угорать по аннотациям.

Ответы4896149903

645 16 фев, 19:18 645 1348961

>>1348948
Ну да, я понимаю, что большинство предпочитает аннотации, но по хорошему же стоит понимать откуда все начиналось

646 16 фев, 20:19 646 1348983

>>1348859
Да нахуй тебе ничего не надо. плагин томката для мейвена накати для сервлетов, на нем и делай.

Докер по желанию, но лучше знать. если не линкус тачка, то жопоболи наберешься.

Мимо тот анон.

647 16 фев, 20:22 647 1348987

Как клонировать коллекцию? Мне нужна копия с точно такими же значениями элементов. Я так понимаю, просто клон не сработает. Создаст новую ссылку на ту же область данных, и изменив через одну ссылку, данные изменятся для всех. Блед, как же сложно всё.

Ответы49005

648 16 фев, 20:40 648 1349005

>>1348987
new ArrayList<>(previousList)

Ответы49009

649 16 фев, 20:46 649 1349009

>>1349005
Это копия ссылок элементов. Поверхностное копирование.

Ответы49018

650 16 фев, 20:58 650 1349018

>>1349009
делай copy-конструктор и клонируй сам.

Ответы49023

651 16 фев, 21:05 651 1349023

>>1349018
Я уже по байтам копирую.

Ответы49136

652 16 фев, 23:13 652 1349136

>>1349023
Молодца, Бугаенко бы оценил.

29 Кб, 340x604
653 17 фев, 00:51 653 1349179

>>1332296 (OP)
Дайте какую-то книгу или рессурс или видео, которое обьясняет, как работает спринг под капотом, на самом низком уровне.

Ответы49545

654 17 фев, 14:28 654 1349545

>>1349179
Общего сборника, к сожалению, нет.
Что-то можно почерпнуть из Spring in Action. его нужно читать в первую очередь, там получишь объяснение довольно многих вещей.
Затем (или параллельно) рекомендую посмотреть видосы Spring-потрошитель от Борисова на ютубе.
Какие-то вещи я почерпывал в процессе изучения конкретного модуля. Например, на канале https://www.youtube.com/channel/UCLMPXsvSrhNPN3i9h-u8PYg
есть много записей докладов от самих разработчиков, где они расказывают подкапотные вещи.

Ответы49928

655 17 фев, 14:31 655 1349551

Какую ide поставить на старенький комп? Идея слишком много памяти ест, а у меня всего 8 гигов и довольно долго все запускается, если проект более-менее серьезный. Хотелось бы че-нить менее требовательное к ресурсам.

Ответы496134965751388

98 Кб, 1004x672
656 17 фев, 15:32 656 1349613

>>1349551
netbeans,
только надо настроить как на скрине.

.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_1234567890

657 17 фев, 16:30 657 1349657

>>1349551
Sublime Text

Ответы49740

658 17 фев, 16:35 658 1349664

Посоны, а есть че по спрингу на русском почитать? Чот Spring in Action сложновато читается пока в плане английского.

Ответы4974149883

659 17 фев, 17:47 659 1349740

>>1349657
Саблайм это текстовый редактор, а не IDE

660 17 фев, 17:51 660 1349741

>>1349664
Spring in Action на русском

172 Кб, 2000x2000
661 17 фев, 19:24 661 1349866

Почему во всех примерах по рефакторингу здорового swtch/case блока после рефакторинга этот блок остается на месте?

662 17 фев, 19:34 662 1349883

>>1349664
Да ты че, читаю спринг ин экшн 4, английский элементарный.

Ответы49893

663 17 фев, 19:39 663 1349893

>>1349883
Что в книгах пишут такого (seriously asking)? все что нужно в туториалах имхо, которые гораздо быстрее просканить можно.

Ответы499204995050076

664 17 фев, 19:49 664 1349903

>>1348948
Тоже предпочитаю аннотации, но в xml конфигах есть свои плюсы, например посмотри конфиг сокет коннекшина со spring-integration [1], весь конфиг в паре строчек, на аннотациях это было бы разбросано по многим классам.

1. https://github.com/spring-projects/spring-integration-samples/blob/master/basic/tcp-client-server/src/main/resources/META-INF/spring/integration/tcpClientServerDemo-context.xml

665 17 фев, 20:02 665 1349920

>>1349893
Я по туториалу с spring.io почти запилил свой таск манагер, но ощущение, что я тупо копипащу без нормального понимания кто что делает. В гайдах есть небольшие пояснения но хз.

666 17 фев, 20:08 666 1349928

>>1349545
О спасибо за канал. Я прям тем же самым занимаюсь. Спринг в действии читаю и Борисова смотрю.

667 17 фев, 20:10 667 1349930

>>1332296 (OP)
Я тут прочел, что начиная с java 11 больше стандартной jre у джавы не будет, и предполагается, что для каждого приложения будет генерироваться свой рантайм, в котором будут только необходимое для приложения модули, и этот рантайм надо распространять вместе с приложением. Вроде бы идея не плохая, но как же быть если у пользователя будет много джава-приложений, неужели для каждого приложения будет свой рантайм?

Ответы499324994350785

668 17 фев, 20:10 668 1349932

>>1349930
Придумают что-нибудь типа докера.

669 17 фев, 20:24 669 1349943

>>1349930
Для десктопных и сейчас многие инклюдят JRE в дистр, на случай если у пользователя нет джавы например.

Ответы50035

670 17 фев, 20:28 670 1349950

>>1349893
Я уже написал пару приложух на спрингбуте по мануалам, но это казалось мне реальной магией. Решил прояснить все чтением спринг ин экшн 5. Читаю, а там основной посыл такой "спрингбут эта круто, заморачиваться не надо, добавьте депенденси и все само заработает".
Поэтому пришлось откатиться до спринг ин экшн 4. Вот тут я реально очень многое осознал и понял.

Ответы50039

671 17 фев, 20:32 671 1349957

>>1347707
Сколько хуец см?

Ответы50499

672 17 фев, 22:08 672 1350035

>>1349943
Что, теперь три рантайма для винды, линукс и макоси надо собирать и вкладывать в приложение, не жирно ли выходит?

Ответы50053

673 17 фев, 22:11 673 1350039

>>1349950
Ну вот какой тебе смысл сейчас узнавать, что там под капотом ? Все равно на данном этапе не поймешь. Попиши крады, поделай рест. Устройся на работу, апни мидла, тогда и углубляй знания. Сейчас это тебе не надо. Многие д3 стримов не знают и живут.

Ответы50106

674 17 фев, 22:26 674 1350053

>>1350035
Инсталлятор то все равно специфик для платформы. Мы билдили .msi и .dmg отдельно например

675 17 фев, 22:38 675 1350076

>>1349893
Смотря какие книги и смотря кто их пишет. 90% туториалов пишутся Васянами и это является пересказом других Васянов

676 17 фев, 23:14 676 1350106

>>1350039
Меня сходу на собесе спросили про депенденси инжекшн, какие способы внедрения зависимостей я знаю, какой способ лучше использовать. Все это я как раз и вычитал в спринг ин экшн 4 пару дней назад.

Ответы50786

677 18 фев, 15:40 677 1350464

Поясните за женерик. Если я объявляю массив примитивного типа, например char[] i , то женерик его не кушает, если от класса Character[] i - то все ок, почему?

Ответы50471

678 18 фев, 15:54 678 1350471

>>1350464
Все, я тупой, я понял.

679 18 фев, 16:41 679 1350499

>>1349957
4(

9 Кб, 665x116
680 18 фев, 18:27 680 1350540

Жабоанон, помоги христа ради! Везде выставил utf-8, но с хтмл формы все равно прилетает ISO-8859-1. Что ей ещё от меня надо?

Ответы50806

681 18 фев, 23:03 681 1350689

Есть ли какая-то книга по жабе для вкатывальщиков с других ЯП? Открыл Head First Java и ощущение будто я семилетний ребенок которому всё жуют и в рот запихивают. Есть что-то не кнутоподобное, но при этом более-менее серьезное?

Ответы51137

682 19 фев, 10:08 682 1350785

>>1349930
Это сделали для микросервисов и прочей инфраструктуры, где жирный рантайм ни к чему. Также Ораклы пилят GraalVM, который способен сгенерировать нативный бинарник: насчёт применения пока не уверен, но наверное серверлесс, IoT девайсы и тому подобное.

683 19 фев, 10:10 683 1350786

>>1350106
Неужели в 5ой редакции этой инфы нет?

Ответы50804

684 19 фев, 10:59 684 1350804

>>1350786
нет.

685 19 фев, 11:06 685 1350806

>>1350540
На html-странице тоже нужно выставить utf-8.

<head>
<meta charset="UTF-8">

Ответы50824

686 19 фев, 11:45 686 1350824

>>1350806
Не, перепробовал уже все. Это кодировка внутри жабы похоже или приходящая с хттп пост запросом, я точно не понял, но она зашивается в реквест и её хуй поменяешь. Я прост конвертером перевожу её. Используйте конвертер короче в таких случаях.

Ответы50843

687 19 фев, 12:01 687 1350833

Test

688 19 фев, 12:04 688 1350834

Может кто поможет, буду очень признателен.
Ебусь там с начальным спрингом, аннотациями и передачей объектов на хытымл с контроллера
http://stackoverflow.com/questions/54761923

Ответы54247

689 19 фев, 12:20 689 1350843

>>1350824
>Это кодировка внутри жабы похоже или приходящая с хттп пост запросом
Попробуй заглянуть в запрос до того, как он провалится в жабу. Как - не знаю.

Ответы50855

690 19 фев, 12:45 690 1350855

>>1350843
Это тоже нагугливал, пишут что там в хедере как раз и указывается эта ебучая исо 8859-1. Писали пару решений как кому то помогло, но мне не помогло.

Ответы50982

691 19 фев, 19:29 691 1350982

>>1350855
А ты сам возьми да посмотри. Либо fiddler, либо просто добавь логи на фронте.

692 19 фев, 20:39 692 1351028

Как лучше получать UserDetails для текущего юзера, передав из контроллера в сервис или прямо внутри сервиса, используя SecurityContextHolder?

693 19 фев, 20:41 693 1351030

Почему Hystrix сначала кидает ошибку по таймауту, а потом выполняет метод фейн клиента? Причем независимо от величины таймаута.

694 19 фев, 23:09 694 1351086

>>1332296 (OP)
Какая выгода от DI фрэймворков? Чем плохо реализовать DI просто ограничившись добавлением интерфейса в конструктор, просто сделать интерфейс IFoo, сделать класс Bar с конструктором Bar(IFoo foo), и готово, потом сам создаешь конкретные реализации IFoo и передаешь их в конструктор, безо всяких контейнеров

Ответы51102

695 19 фев, 23:37 695 1351102

>>1351086
Для больших проектов так просто удобнее и требуется меньше кода. Для маленьких конструктор вида
MyClass(A a, B b, C c) {
this.a = a;
this.b = b;
this.c = c;
}
уже будет выполнять все функции DI фреймворка.

696 20 фев, 00:32 696 1351137

>>1350689
От ЕПАМА нормальная книга.

697 20 фев, 11:34 697 1351257

>>1332296 (OP)
>На джаве фриланса нет. Хочешь фрилансить — дуй в ПХП/раби/1С тред.
А нахуй он нужон тогда? Чтобы сидеть офисной макакой в какой нибудь компании и с 8 до 5 пилить всякие штуки?

Ответы51258

698 20 фев, 11:37 698 1351258

>>1351257
Да

Ответы51260

699 20 фев, 11:40 699 1351260

>>1351258
Понял принял

4 Кб, 704x139
700 20 фев, 12:42 700 1351274

Я у мамы погромизд
В чем прикок этой ваши джавыраш, там ведь нихуя толком не объясняется, например, че вот такое string че такое arcs нахуй оно вообще присутствует в коде или это чисто для того чтобы понять что по шаблону ты можешь что то "кодить" а дальше уже или покупай курсы или пиздуй сам учиться?

701 20 фев, 14:31 701 1351324

Объясните простым языком что такое Rest Api, пожалуйста.

Ответы51376

702 20 фев, 15:36 702 1351355

Аноны, стоит ли покупать аккуант Ultimate Unlimited на javarush ? Аккаунт не ограничен по времени, стоит примерно 100 у.е.

703 20 фев, 16:33 703 1351376

>>1351324
Архитектурный стиль поверх протокола HTTP. Простыми словами, список ссылок, к которым обращаешься с помощью HTTP-запросов, данные передаются обычно в json или xml. Например, отправив POST-запрос с данными по ссылке /users ты создашь нового пользователя, отправив GET /users, получишь список пользователей, GET /users/1 вернет пользователя с id=1. Клиент (мобильное приложение, например) потом эти данные динамически вставляет на страницу.

Ответы51555

704 20 фев, 16:49 704 1351388

>>1349551
у меня 4 гб и старый проц и запускает примерно минуту. Для тебя это долго ?

Ответы51426

705 20 фев, 17:43 705 1351426

>>1351388
У меня относительно старый проц и 8 гб оперативы и идея открывается за 1 мин 02 сек. Хотя видюха у меня гтх 1060
А дело тут в том, что жесткий диск медленный, а не проц или оперативки мало. Покупайте ССД.
мимохакер

706 20 фев, 20:49 706 1351550

посоветуйте книги или сайты с задачками по java

707 20 фев, 21:06 707 1351555

>>1351376
А чем Spring MVC отличается от Spring Rest? Можно ли писать веб-приложения на rest не используя jsp?

Ответы5158351627

708 20 фев, 22:01 708 1351583

>>1351555
>А чем Spring MVC отличается от Spring Rest? Можно ли писать веб-приложения на rest не используя jsp?
Ты туториалы с официального сайта запусти, там простые примеры, сразу по коду всё поймёшь.
И главное запомнишь 3 аннотации которые позволят тебе минимальную приложуху создать!

709 20 фев, 23:08 709 1351627

>>1351555
Spring Rest - это надстройка на MVC. Для Rest'a JSP не нужен. Используя rest, ты, грубо говоря, можешь загрузить 1 раз страницу, а потом вставлять туда полученный json (гугли single page app). В случае jsp ты генерируешь каждую html на сервере, самостоятельно вставив туда данные, и отдаешь клиенту полностью готовую страницу.

Ответы516305176651770

710 20 фев, 23:11 710 1351630

>>1351627
>гугли single page app
Лучше ajax.

Ответы51700

711 21 фев, 00:59 711 1351700

>>1351630
Говно мамонта

712 21 фев, 08:12 712 1351766

>>1351627
А jsp сейчас не используются? Большинство пишется с использованием REST api?

Ответы51818

713 21 фев, 08:21 713 1351770

>>1351627
Еще простым языком объясни, пожалуйста, что такое soap спецификация.

Ответы51818

714 21 фев, 11:57 714 1351818

>>1351766
В старых проекта используется. В новых в основном javascript-фреймворки (Angular, React, Vue и т.д.) + REST backend.

>>1351770
SOAP - это протоколы (строгие стандарты, в отличие от REST) поверх xml, причем HTTP используется просто для передачи данных (только POST-запросы). Куча статей есть на эту тему.

Ответы52514

715 21 фев, 14:47 715 1351933

Жабисты, хелп. Как в спринге реализовать долгоиграющий таск, который дергает сервисы, которые в свою очередь лезут в базу и чтото в ней меняют например.

Ответы51977

716 21 фев, 15:54 716 1351977

>>1351933
Это не то? https://www.baeldung.com/spring-scheduled-tasks

Ответы52475

717 21 фев, 21:39 717 1352211

На каком фреймворке будет проще реализовать накат миграций\создание с нуля БД, пусть mySQL? Нужно для говнотестов апи\бека.

Ответы5222252263

718 21 фев, 21:51 718 1352222

>>1352211
флайвей

719 21 фев, 22:36 719 1352263

>>1352211
Ликвибейз.

720 22 фев, 12:01 720 1352475

>>1351977
А ещё можно прикрутить Quartz, который охуенно гибок, но это если надо будет изъебнуться с цикличностью/персистивностью/какой другой хуйнёй.

721 22 фев, 13:02 721 1352514

>>1351818
Спасибо за развернутые ответы.

7 Кб, 509x202
722 22 фев, 17:44 722 1352654

Сап. Spring Boot + JPA + AOP.

Есть @Around-эдвайс, в котором написан примерно пикрелейтед. В случае, когда try-catch-finally завершается нормально, энтити сохраняется, а когда выбрасывается исключение - нет. ЧЯДНТ?

Ответы5266552706

723 22 фев, 18:00 723 1352665

>>1352654
Очевидно транзакция роллбачится от эксепшина нахуя тебе аспекты?

Ответы52671

724 22 фев, 18:07 724 1352671

>>1352665
Действительно. Вызываемый метод обёрнут в транзакцию. Это как-нибудь можно обойти?

>нахуя тебе аспекты?
Логгирование.

725 22 фев, 18:57 725 1352706

>>1352654
Ха, достаточно было повесить @Order(Ordered.HIGHEST_PRECEDENCE) на @Aspect-компонент.

90 Кб, 856x519
726 23 фев, 17:32 726 1353313

БЛЯЯЯЯДЬ

Ответы5343953520

727 23 фев, 20:00 727 1353439

>>1353313
Братюнь, это что у тебя за шляпа такая?
Опенжл? Дириктикс?
Начинай с Гнома!

99 Кб, 856x519
728 23 фев, 21:07 728 1353520

>>1353313
Вот я долбоеб конечно, смотрел не туда пару часов.

70 Кб, 925x614
729 23 фев, 22:04 729 1353566

Подскажите плез. Вот я сделал ентерпрайз приложение. В каком виде я должен нести его заказчику?
Например есть у меня сканпелиный war-файл. Я иду к заказчику, ставлю у него томкэт, базу данных. Деплою свой варник.
Но куда мне например внести (где хранить) реквизиты к БД, если у меня итоговый продукт - один war-файл?

Или я должен нести к заказчику сорцы, на месте править проперти-файл, прописывать там реквизиты БД, и все собирать мавеном? Некоторые пишут, что можно в pom-файле хранить реквизиты, чтоб сорцы не трогать вообще, но чёт не очень как по мне.

Короче, как на деле обстоит процесс дистрибуции ентерпрайз софта?

Ответы5359053771

730 23 фев, 22:41 730 1353590

>>1353566
проперти оверрайдятся он деплоимент через environment variables

типа:

java -Dspring.datasource.url=mysql://blahblah -Dspring.datasource.username=lox -jar superspringbootapp.jar

Ответы5365753760

731 23 фев, 22:48 731 1353595

Не знаю в каком треде написать, но может кто сталкивался:

есть на AWS 2 EC2 сервера
на одном крутится некий процесс который генерирует месседжи и кидает их в ActiveMQ.
Процесс на другом сервере читает их и обрабатывает,
так вот лейтенси 100-200 мс, нужно 10-20 мс, поможет ли свитчнуть activemq на кафку? а то лень просто ради эксперимента менять.

месседжей немного где-то 300/сек

732 24 фев, 00:37 732 1353657

>>1353590
-D это не environment variables, это system properties

733 24 фев, 11:22 733 1353760

>>1353590
Ну с jar понял, что так можно. Кстати пароли красиво лягут в файл .bash_history

Но вот с war не совсем понятно, там в томкате же просто выбираешь файл и жмешь кнопку деплой, где задавать систем проперти.

Ответы53787

734 24 фев, 11:33 734 1353771

>>1353566
>ентерпрайз приложение.
>В каком виде я должен нести его заказчику?
>ставлю у него томкэт, базу данных.
>Деплою свой варник.
В наше время докерами нужно всё обмазывать или накройнях скрипт онитик написать на ебаше который сам всё там проставит и за деплоит.

735 24 фев, 11:50 735 1353787

>>1353760
с томкатом аналогично, гугли tomcat + environment variables.

736 24 фев, 16:21 736 1354076

Дружит ли java с react? В этом стеке на сервере RestController, а за отрисовку страниц отвечает react? Или странички приходят с сервера?

737 24 фев, 17:31 737 1354115

Кто-то пользовался VS Code? Можете рассказать про него в сравнении с идеей?

Ответы54198

738 24 фев, 19:05 738 1354198

>>1354115
Ох он и джаву поддерживает, пойду пробовать

739 24 фев, 20:02 739 1354247

>>1350834
Хуиту наворотил!
>type.toString().toLowerCase()
Гугли методы enum и конкретно name()
Гетеры и сетеры запили блядь.
Налепил стримов нахуя?
Привыкай писать логи на каждый чих!
Тогда по консольке будешь заранее видеть где ты проебался!

740 24 фев, 22:32 740 1354405

Только сейчас осознал, что модулям в джаве уже полтора года, а я до сих пор не поковырял их, ибо лень.

741 24 фев, 22:34 741 1354411

Кста, планирую года через 3 перейти на удалёнку на зарубежном рынке. Держу в курсе.

742 24 фев, 22:55 742 1354432

Есть какие-то годные тытуб каналы(рус\англ), чтобы на фоне послушать, дабы поискать пробелы в основах на уровне женериков, паттернов и т.п. сложности? Или лучше не ебать мозги и методично дрочить ДУМАЙПОЯВОВСКИ\Хорста? Просто от книжки засыпаю, а от видосов периодически появляется мотивация и реальный результат в виде попыток покодить услышанное.

743 25 фев, 02:20 743 1354563

Анонсы, помогите, пожалуйста, обучаюсь второй месяц.

Значит следующая ситуация. Есть четыре класса. Один - Reminder - класс из которого я делаю напоминания. Есть main, откуда я все запускаю. И есть два класса с ArrayList - один со списком напоминаний, другой с выполненными напоминаниями.

Так вот, я хочу сделать метод, чтобы из листа с напоминаниями переводить их в лист выполненных и удалять из первого листа. Получается следующий код (конечно, я все упростил для примера):
Main:

public class Main {

public static void main(String args[]) {

TaskList list = new TaskList();
Reminder rem = new Reminder();
DoneList done = new DoneList();

list.list.add(rem);
list.setDone(0);
}
}

Список напоминаний:

public class TaskList {
ArrayList<Reminder> list = new ArrayList<Reminder>();
DoneList done = new DoneList();

public void setDone(int i) {
done.done.add(list.get(i));
list.remove(i);
}
}

Список выполненныйх напоминаний

public class DoneList {
ArrayList<Reminder> done = new ArrayList<Reminder>();
}

Объясните, пожалуйста, почему "done.done.add(list.get(i));" не добавляет объект во второй лист?

Конечно, способ, наверняка, говно, но очень хочется понять почему не катит. Читал все, включая документацию и не могу найти ответа.

743 25 фев, 02:20 743 1354563

Анонсы, помогите, пожалуйста, обучаюсь второй месяц.

Значит следующая ситуация. Есть четыре класса. Один - Reminder - класс из которого я делаю напоминания. Есть main, откуда я все запускаю. И есть два класса с ArrayList - один со списком напоминаний, другой с выполненными напоминаниями.

Так вот, я хочу сделать метод, чтобы из листа с напоминаниями переводить их в лист выполненных и удалять из первого листа. Получается следующий код (конечно, я все упростил для примера):
Main:

public class Main {

public static void main(String args[]) {

TaskList list = new TaskList();
Reminder rem = new Reminder();
DoneList done = new DoneList();

list.list.add(rem);
list.setDone(0);
}
}

Список напоминаний:

public class TaskList {
ArrayList<Reminder> list = new ArrayList<Reminder>();
DoneList done = new DoneList();

public void setDone(int i) {
done.done.add(list.get(i));
list.remove(i);
}
}

Список выполненныйх напоминаний

public class DoneList {
ArrayList<Reminder> done = new ArrayList<Reminder>();
}

Объясните, пожалуйста, почему "done.done.add(list.get(i));" не добавляет объект во второй лист?

Конечно, способ, наверняка, говно, но очень хочется понять почему не катит. Читал все, включая документацию и не могу найти ответа.

Показать весь текст
Ответы5458854620

744 25 фев, 08:12 744 1354588

>>1354563
Логи в консоль проставь в каждую функцию и смотри что там.

Ответы54607

745 25 фев, 09:18 745 1354607

>>1354588
Не понял, к сожелению. Как это можно сделать в eclipse? Гуглить eclipse see console logs пробовал.

Ответы5467654679

PHP 746 25 фев, 09:45 746 1354613

Посоны. Пишу на пыхе уже сто лет. Приблизительно столько же планирую перекатиться куда-то.

Пых знаю вдоль и поперек, от корки до корки перечитал всю документацию и пр.

Ввиду некоей похожести синтаксиса выбор пал на эту вашу джаву., но ничего о ней не знаю.

Скажите, стоит ли? Много ли времени уйдет на вкот? Какие подводные?

747 25 фев, 09:53 747 1354620

>>1354563
Ты добавляешь элемент в один лист а ждёшь его в другом.

Ответы54634

748 25 фев, 10:19 748 1354634

>>1354620
Ну вот я передаю в метод setDone аргумент int i, и пытаюсь удалить пункт в списке за номером "i", это получается. Но как же тогда передать этот самый пункт в другой список? Разве list.get(i) не возвращает (returns, не знаю как по-русски правильно, тк изучаю на английском) нужный мне пункт? И done.add.add по сути указывает на нужный объект и лист в нем.

Ответы54662

749 25 фев, 11:34 749 1354662

>>1354634
возвращает, но он добавляет этот элемент в список DoneList, инициализированный внутри объекта TaskList, а это не тот же самый список, что и инициализированный внутри main().
Ну и добавь сеттеры/геттеры, ради б-га

Ответы54736

750 25 фев, 11:53 750 1354676

>>1354607
System.out.println("Хуй пизда")
Если модные лог библиотеки не подключать.

751 25 фев, 11:57 751 1354679

>>1354607
Помоему эклипс перестал по дефолту окно с логами показывать

поэтому window -> show view - console

752 25 фев, 13:21 752 1354731

Test

753 25 фев, 13:25 753 1354733

Ребзя, в чём лучше всего сейчас писать ГУИ под десктоп? Сначала смотрел в сторону JavaFX, но оказалось, что его нет в моём JDK, а переустанавливать заново лень было, поэтому перешёл на Swing, ибо везде пишут, что AWT старьё вообще. Нужно на лету добавлять и удалять компоненты, может ли свинг в это красиво? Никогда до этого ГУИ не писал.

Ответы54764

754 25 фев, 13:27 754 1354736

>>1354662
Спасибо, мужик, я реально ломал голову целый день. На стак оверфлоу боялся пойти, так как говном забросают. Теперь чувствую себя тупым.

Мог бы написать, зачем в данном случае сеттеры/геттеры? Я в принципе их использую, но вот конкретно в этом примере не совсем понял.

Ответы54745

755 25 фев, 13:31 755 1354745

>>1354736
геттеры/сеттеры нужны, чтобы сохранять преемственность при наследовании и чтобы имплементацию за ними прятать.

По твоему коду еще один комментарий: я бы эти оба списка за сервисом бы спрятал, как-то нелогично, что один список в другом

Ответы54760

756 25 фев, 13:41 756 1354754

Сап, подскажите плз, застрял с одной хуйней в спринг в действии 5 ( в главе 2-3) конкретно с передачей с контроллера на хтмл и последующим отображением. Гуглил-хуюглил, гитхабил-оверфловил, все бестолку. Уже на неделю застрял. Жалко время и свои нервы, может кто-то ткнуть ебалом что не так ?
stackoverflow.com/questions/54851353

Ответы547565476554785

757 25 фев, 13:45 757 1354756

>>1354754
Готов скинуть кому-то пару баксов в битках за помощь, не все же тут 300кк

Ответы54789

758 25 фев, 13:53 758 1354760

>>1354745
>один список в другом
Имеется в виду, что у меня в классе с одим списком объект класса другого списка?

>за сервисом
Спасибо огромное, как это гуглить? В англ варианте так и будет java service? На данном этапе обучения не знаю что это, но, опять же, с русской терминологией не знаком.

Ответы54774

759 25 фев, 13:57 759 1354764

>>1354733
Сейчас круды кругом, так что в веб вкатывайся с базовых хтмл, ксс, йаваскрипт.
Если же тебя на будущей работке занесёт нелёгкая ковырять махровый легаси, вот на чем там десктоп нахуярен в том и разберёшь, там и ява будет 4-ая или 5-ая.
А сейчас только время зря тратишь!
Сейчас джунам на тестовое дают круды где минимум бустсрапон ну или консольное на смекалку.

Ответы55012

760 25 фев, 13:59 760 1354765

>>1354754
Да заебал ты уже!

Ответы54783

Запрашивает Java ждун вкатальщик 761 25 фев, 14:05 761 1354768

Где блядь перекат?
Мидлы повидлы, синьоры помидоры сраные, перекатить не могут даже!

СРАМОТА!

762 25 фев, 14:16 762 1354774

>>1354760
>Имеется в виду, что у меня в классе с одим списком объект класса другого списка?
да, некошерно это. Ты либо сделай что-нибудь типа такого:

public class TaskList {
ArrayList<Reminder> list = new ArrayList<Reminder>();

public ArrayList<Reminder> getDoneReminders() {
return list.filter(Reminder::isDone)
.collect(Collectors.toList());
}
public ArrayList<Reminder> getPendingReminders() {
return list.filter(r -> !r.isDone())
.collect(Collectors.toList())
}

}

public class Reminder {
private int status;
public void setDone() {
this.status = 1;
}
public boolean isDone() {
return this.status == 1;
}

Либо, сделай сервис (это просто паттерн), который будет прятать оба списка за собой, типа
public class ToDoService {
ArrayList<Reminder> pendinglist = new ArrayList<Reminder>();
ArrayList<Reminder> donelist = new ArrayList<Reminder>();

public void setDone(int i) {
donelist.add(pendinglist.remove(i))
}

public void setPending(int i) {
pendinglist.add(donelist.remove(i))
}
...
}

И обращайся к сервису, когда тебе надо поменять статус у элементов.

Сервис тогда будет тебе определять интерфейс, с которым ты можешь работать, а внутреннюю имплементацию ты потом можешь легко поменять. Например, поставить за сервисом базу данных, или использовать всего один список, как в примере выше и тд

762 25 фев, 14:16 762 1354774

>>1354760
>Имеется в виду, что у меня в классе с одим списком объект класса другого списка?
да, некошерно это. Ты либо сделай что-нибудь типа такого:

public class TaskList {
ArrayList<Reminder> list = new ArrayList<Reminder>();

public ArrayList<Reminder> getDoneReminders() {
return list.filter(Reminder::isDone)
.collect(Collectors.toList());
}
public ArrayList<Reminder> getPendingReminders() {
return list.filter(r -> !r.isDone())
.collect(Collectors.toList())
}

}

public class Reminder {
private int status;
public void setDone() {
this.status = 1;
}
public boolean isDone() {
return this.status == 1;
}

Либо, сделай сервис (это просто паттерн), который будет прятать оба списка за собой, типа
public class ToDoService {
ArrayList<Reminder> pendinglist = new ArrayList<Reminder>();
ArrayList<Reminder> donelist = new ArrayList<Reminder>();

public void setDone(int i) {
donelist.add(pendinglist.remove(i))
}

public void setPending(int i) {
pendinglist.add(donelist.remove(i))
}
...
}

И обращайся к сервису, когда тебе надо поменять статус у элементов.

Сервис тогда будет тебе определять интерфейс, с которым ты можешь работать, а внутреннюю имплементацию ты потом можешь легко поменять. Например, поставить за сервисом базу данных, или использовать всего один список, как в примере выше и тд

Показать весь текст

763 25 фев, 14:26 763 1354783

>>1354765
Дима, ты ? Узнал меня ? Это я, твой физрук ! Узнал тебя по твоим шизоидным высерам

764 25 фев, 14:29 764 1354785

>>1354754
А Я НАПОМИНАЮ, ЧТО ЛББОЙ ИЗ ВАС ВСЕ ЕЩЁ МОЖЕТ ПОЛУЧИТЬ 5 БАКСОВ ЗА РЕШЕНИЕ ЭТОЙ ЛЕГКОЙ ЗАДАЧКИ. КОШЕЛЕК BTC прикрепляйте сразу к ответу

765 25 фев, 14:31 765 1354787

Пришла в голову идея, заставлять решать свои проблемы индусов. Какой-то задвиг или затуп, сразу давать им это задание на реализацию, за копейки и отзывы. Дайте, пожалуйста, ссылки не такие бирж

766 25 фев, 14:31 766 1354789

>>1354756
скинь проект, мне лень копипастить

Ответы54811

767 25 фев, 14:55 767 1354811

>>1354789
https://github.com/habuma/spring-in-action-5-samples/tree/master/ch02/tacos

Ответы5481354817

768 25 фев, 14:57 768 1354813

>>1354811
Там намного больше классов икода на этом гите, у меня проблема в куске той главы

769 25 фев, 14:58 769 1354814

ОП-ХУЙ, ГДЕ ПЕРЕКАТ!?

770 25 фев, 15:06 770 1354817

>>1354811
ты свой проект скинь, чтобы мне понять что ты наворотил. Хули мне на уже рабочий пример смотреть.

Ответы5483255602

771 25 фев, 15:26 771 1354832

>>1354817
Разбираюсь, как залить

772 25 фев, 17:39 772 1354930

>>1345259
Ебанись, как пришел к этому и как долго шел? Ты у мамки крутой олимпиадник? И почему в шапке тогда написано, что на джаве нету фриланса?

Ответы54936

773 25 фев, 17:48 773 1354936

>>1354930
Не крутой, но участвовал да, в лучшее время был красный рейтинг, сейчас недавно попробовал на топкодере едва первую задачу решил на 160 баллов.

Не знаю почему там так написано, но могу точно сказать, что это не правда.

Ответы54937

774 25 фев, 17:53 774 1354937

>>1354936
Ты всю жизнь этим занимаешься - или вкатывальщик?

Ответы54957

775 25 фев, 18:15 775 1354957

>>1354937
3 года фриланс до этого в офисе

776 25 фев, 18:56 776 1355012

>>1354764
Спс за пояснения, анон. В этом свинге, как и во всех остальных джавовских после нормальных гуй, того же qt анрил ковыряться.

Ответы55068

777 25 фев, 20:04 777 1355068

>>1355012
В Jfx норм ковыряться. Не могу остановиться никак.

778 25 фев, 22:12 778 1355174

Использовать MultipartFile напрямую в сервис-слое это бэд практис? Читал, что в сервисах не должно быть веб зависимостей, как тогда лучше передать его?

86 Кб, 856x519
779 25 фев, 22:27 779 1355190

Опа че еще могу

Ответы55429

780 26 фев, 07:52 780 1355429

>>1355190
В гит залил уже?

781 26 фев, 13:15 781 1355602

>>1354817
http://github.com/Denis2281488/trytaco1.git
pr/атья, чекните пж, что не так ? Не отображается корректно в бровзере.

Ответы5563955678

782 26 фев, 13:59 782 1355639

>>1355602
Сап, подскажите плз, застрял с одной хуйней в спринг в действии 5 ( в главе 2-3) конкретно с передачей с контроллера на хтмл и последующим отображением. Гуглил-хуюглил, гитхабил-оверфловил, все бестолку. Уже на неделю застрял. Жалко время и свои нервы, может кто-то ткнуть ебалом что не так ?
stackoverflow.com/questions/54851353

114 Кб, 694x1378
783 26 фев, 14:46 783 1355678

>>1355602
ну ты и нахуевертил.
Короче, если я вот к такому виду приведу DesignTacoController.java (https://pastebin.com/q7f0m4D0):
1) Уберу @ModelAttribute("design") с метода с ним вообще страница /design не открывается, сыпясь с ошибкой
2) Поменяю @PostMapping на методе на @GetMapping
3) Уберу method = RequestMethod.POST с аннотации на контроллере нахуя вообще это на контроллер лепить
То в браузере у меня видать пикрелейтед

Я честно говоря хуй пойми, какую ты проблему на стековерфлоу описывал, потому как твой код ее не воспроизводит

Ответы55681

784 26 фев, 14:47 784 1355681

>>1355678
сука, двоеточие в ссылку попало. Вот правильная ссылка на пейстбин: https://pastebin.com/q7f0m4D0

Ответы55739

785 26 фев, 15:56 785 1355737

Test

786 26 фев, 15:59 786 1355739

>>1355681
Спасибо большое за ответ, у меня все так и было. До того как стал менять по советам с стака все подряд. НО БЛЯТЬ, у меня даже сейчас отображается какая-то хуйня, вместо того что у тебя. Я вроде не ебанулся ещё головой, я же запускаю мейн класс, жду когда запустится и переходжу на хтмл страницу и там выбираю иконку браузера которым я хочу отобразить ?

Ответы55742

787 26 фев, 16:04 787 1355742

>>1355739
Вот тут-то ты и косячишь.
Ты же просто смотришь браузером шаблон для таймлифа, а надо-то на сервер заходить, чтобы он как раз тебе на основании этого шаблона контроллером страницу сгенерировал.
Вот этот самый сервер как раз ты и запускаешь через TrytacoApplication.java

Ответы55743

788 26 фев, 16:06 788 1355743

>>1355742
Читай лог, который тебе приложение при запуске показывает, там будет написан порт, на котором приложение крутится. Заходишь на http://local host:порт браузером и оттуда пляшешь на свою страницу

Ответы55787

789 26 фев, 17:10 789 1355787

>>1355743
Я и запускал сервер, а потом открывал страницы.
Но вот где надо с контроллера передать что-то - открывается, но ничего не передаёт, выдает только статический текст.
Я уже подумал, что у меня сервер не запускается.
И да, в логах же выдает стандартный 8080, а из под него ни одна из 2 страниц не хочет открываться в браузере, выдает white label ошибку какую-то. Это значит, что сервер не работает ?

Ответы55795

790 26 фев, 17:22 790 1355795

>>1355787
> выдает white label ошибку какую-то
скрин и разберемся

Ответы55812

791 26 фев, 17:38 791 1355807

Поясните за crsf в Spring Security.
Я нашел гайд для ангуляра
https://spring.io/blog/2015/01/12/the-login-page-angular-js-and-spring-security-part-ii
Где предлагают передать срсф-токен в кукисах, и как то меня это напрягает. К этому токену по идее может получить доступ любой другой сайт же. Да обратно он видимо пересылается в хедере, но это как то неправильно.
А если я хочу например фронт на реакте сделать или вообще просто на на чистом js.
+ видимо если фронт будет на другом серваке надо еще CORS настроить, но это уже не по теме.

792 26 фев, 17:44 792 1355812

>>1355795
Блин, все, спасибо большое, это я идиот.
Когда сервер запущен, к тому порту надо просто имя файла было докинуть, а я фул путь прописывал и из-за этого не находилось

Ответы5581355854

793 26 фев, 17:46 793 1355813

>>1355812
9 из 10 ошибок это просто не поставленная запятая или какое то такое дерьмо. Глаз замыливается и не видишь очевидный косяк.

794 26 фев, 19:13 794 1355854

>>1355812
Братиш, ты матчасть-то подучи. А то ты совсем какие-то нелепые ошибки делаешь

795 27 фев, 01:33 795 1356070

Джаваны, я к вам с платиновой платиной. Как изучать спринг? Ворочаю тырпрайз говнище с 2016, интегрировал Nuxeo, пердолил Liferay, джаву саму по себе подтянул, про сопутствующую поебень типа сборщиков проектов и контроля версий узнал, но потом чет приуныл с того что от проекта к проекту одно и то же говно. Сменил галеру, просидел год на проекте пятилетнем сделанном на Спринге, и чет по выходу с проекта оказалось что я толком нихуя нового и не узнал и всякие слова типа JPA, Spring Integration и прочие Boot и Security вообще темный лес. И как-то нехорошо это, 3 года опыта вроде как, Ванька Ерохин вон уже миддлом стал, а я джуниорскую поебень не осилил до сих пор.

Ответы561135614256174

796 27 фев, 08:39 796 1356113

>>1356070
Вот курс неплохой: https://www.udemy.com/share/1000qYA0QecF9SRno=/
В нем, правда, про спринг клауд ничего нет, но это не страшно

Ответы56183

797 27 фев, 10:18 797 1356142

>>1356070
>пердолил Liferay
Надеюсь это было 6-ой liferay с 6-ой явой кек

Ответы56183

798 27 фев, 12:02 798 1356174

>>1356070
Такое возможно? Я вот безработный все еще выкурил несколько мануалов по хиберу, курс по спрингбуту с ютуба(letscode), дочитываю спринг ин экшн 4 и 5 с пройденным джаварашем.

Ответы56183

799 27 фев, 12:27 799 1356183

>>1356113
Cпасибо, анонче.

>>1356142
6.2, седьмая джава. Вкатился вообще с 6 версией, под ведро кодил сначала. Сейчас на восьмой сижу.

>>1356174
Ты не представляешь сколько существует говноконтор в которые ты уже можешь вкатиться без задней мысли чтобы начать набивать рабочий опыт.

15 Кб, 541x448
800 27 фев, 15:51 800 1356257

Господа, есть один примитивный самописный парсер Wildberries, который отслеживает появление определенного размера на сайте с определенным интервалом, парся через jsoup таблицу размеров.

Подскажите, как правильно спроектировать приложение для дальнейшего возможного расширения.

Лично мне в голову лезет создание интерфейса "PageChecker" с методом "checkPage", а класс PageChecker переименовать в WildberriesPageCheckerImpl чтобы можно было добавлять другую имплементацию чекера, например, Ламоды.

Ну и SoundClipPlay переименовать в SoundClipPlayImpl, унаследовавшись от интерфейса, например, Notifier с методом "notifyApperence".

Я правильно рассуждаю? Что еще можно изменить?

801 27 фев, 20:18 801 1356386

Сап господа
Хочу вкатиться в java, сам знаю только c#
Дак вот вопрос кто работал с обоими языками, они ведь похожи?

802 28 фев, 21:19 802 1356897

Пацыки, использовать локи как флаги каких-то состояний норм идея или не очень?

Ответы57169

803 1 мар, 13:14 803 1357163

Вот смотрите, я правильно понимаю, что DataSource это некая абстракция, позводяющая получать готовые коннекшены с БД?
DataSource хранит в себе ConnectionPool, который создаётся на сервере.
Теперь вопрос. Когда я в спринге задаю конфигурацию Datasource и описываю соединение с БД, на каком именно этапе сервер поймёт, что приложение использует датасорс и сконфигурит пул соединений? На каком этапе сервер, допустим, поймёт, что датасорса в прилодении не используется, а используется прямое подключение через jdbc и пул соединений поднимать не нужно?

Ответы5722957233

804 1 мар, 13:24 804 1357169

>>1356897
Приведи пример

Ответы57344

805 1 мар, 16:12 805 1357229

>>1357163
>на каком именно этапе сервер поймёт, что приложение использует датасорс и сконфигурит пул соединений

Тогда, когда ты попробуешь получить конекшен с этого датасурса.

>На каком этапе сервер, допустим, поймёт, что датасорса в прилодении не используется, а используется прямое подключение через jdbc и пул соединений поднимать не нужно?

Если ты датасурс не используешь, а идёшь напрямую в jdbc через драйвер менеджер - то сервер и не будет тебе поднимать никакого датасурса, даже если ты сконфигурил его.

806 1 мар, 16:17 806 1357233

>>1357163
Блядь ну читай ты логи!
И сорцы смотри!
Тогда поймёшь что там твой спринг делает!
Можно прост использовать ждбс, можно подключить конекшен пул типо хикари

807 1 мар, 19:49 807 1357344

>>1357169
Ну типа в методе берется лок по айдишнику какой-то сущности. В другом треде мы проверяем, есть ли лок на этот айдишник, и если он залочен, то кидаем исключение.

Ответы57431

808 1 мар, 22:00 808 1357431

>>1357344
Можно в JPA заюзать Pessimistic лок с timeout=0 при запросе, тогда, если поток запросит лок на уже занятый объект, то получит LockTimeoutException.

Ответы57434

809 1 мар, 22:04 809 1357434

>>1357431
Причем тут JPA?

Ответы57441

810 1 мар, 22:18 810 1357441

>>1357434
А ты пиши понятно, че тебе надо. Если ты говоришь про сущности и айдишники, то я и подумал про JPA. Попробуй с обычным локом и таймаутом то же самое, Lock.trylock может быть.

Ответы57445

811 1 мар, 22:21 811 1357445

>>1357441
Да я знаю как это делать, я спрашивал, норм ли эта практика или нет.

812 1 мар, 23:04 812 1357469

Как сделать однопоточный ThreadPoolExecutor, который при поступлении новой таски будет бросать старую?

813 2 мар, 01:01 813 1357496

Почему-то не работают инсерты в data.sql, причем файл исполняется, т.е. я пробовал вписать туда CREATE TABLE и INSERT и они работают, втф?

Ответы57498

814 2 мар, 01:04 814 1357498

>>1357496
Поправка: пробовал создать новую таблицу (успешно) и вставить в несуществующую (фейлится как и должно).

Ответы57717

815 2 мар, 05:30 815 1357560

Сап. Подкиньте идею для библиотеки на Java, или подскажите где искать. Вкатился в спринг, но плохо понимаю потоки, reflection и т.д. Хочу догнаться по этим темам и заодно написать диплом. Времени ~3 месяца.

Ответы57672

816 2 мар, 12:27 816 1357672

>>1357560
>Вкатился в спринг,
>плохо понимаю потоки, reflection
Забудь про спринг пока йаву не вкуришь!

Про идею, делай игорю простую (времён денди) и голову не грей!

Ответы57777

817 2 мар, 14:05 817 1357717

>>1357498
Коммиты забыл

Ответы57723

818 2 мар, 14:31 818 1357723

>>1357717
Не, пробовал и с коммитами. Скрипт почему-то выполнялся до того как хибер создаст таблицы, т.е. он вставлял в старые таблицы, потом хибер их дропал и создавал заново. Как пофиксить порядок я так и не понял,разве что заменить data.sql на import.sql.

819 2 мар, 16:36 819 1357777

>>1357672
сегодня же уволюсь и начну писать контру

820 2 мар, 19:52 820 1357877

Как же меня доебала эта многопоточность, ебанарот.

821 2 мар, 20:23 821 1357891

Как сочетать в 1 приложении springa Error Controller и ControllerAdvice для реста. Это реально вообще?
Контролер перехватывает 404 и вместо ответа в виде джейсона выдает страницу хтмля. Остальные эксепшены долетают видимо до эдвайса и выдается джейсон.

Ответы57919

822 2 мар, 21:04 822 1357919

>>1357891
Ох лол, я с помощью fetch а поймал респонс и распрсил его как джейсон. Оказывается сочетать можно. До этого выбивало страницу целиком.

823 2 мар, 21:27 823 1357931

Блядь, ебаный жавафх со совей ебаной конкуррентностью, пошли они нахуй если их же стандартные методы не работают блядь

824 4 мар, 01:48 824 1358765

>>1332296 (OP)
Хочу шо нить по спрингу почитать.
Аноны, что по вашему мнению лучше мб читал кто нить
Spring Boot 2 Recipes или Spring. Все паттерны проектирования
ПС Spring in Action читал

825 4 мар, 11:37 825 1358900

Юзаю Spring и вот вопрос, что предпочтительнее:
Все сервисы, которые есть в приложении, пометить аннотацией @Service и инжектить в нужные места с помощью @Autowired или не помечать их как сервисы, а забивать через конструктор их экземпляры в нужные места?

Ответы5897959029

826 4 мар, 13:32 826 1358954

Еще вопрос по Spring от другого анона.
Есть веб-скрвис, частично написанный на Spring и jpa. Слой Dao написан руками, без использования Repository. Как протестировать этот слой? Я понимаю, что нужно еще один persistence.xml с настройками in-memory db. Но в тестах не подхватывает entityManager bean с новыми настройками, а инжектит старый из production. Как решить?

Ответы5917859337

827 4 мар, 14:27 827 1358979

>>1358900
Сделать класс, в котором с помощью @Bean возвращать инстансы сервисов. Так вся конфигурация в одном месте

828 4 мар, 16:27 828 1359029

>>1358900
Лучше пометить аннотацией и заинжектить. Это же Spring.

829 4 мар, 17:35 829 1359059

Может перекот?

830 4 мар, 20:16 830 1359178

>>1358954
Если DAO написан руками то ты полюбому конфигурили DataSourse, верно? Так что тебе мешает сделать две конфигурации датасорса и инжектить для прода норм, а для теста какую нить H2. Можно даже профилировать типа если профиль - test, то инжектить h2, если прод то норм базу

831 5 мар, 00:36 831 1359337

>>1358954
поиграйся с @Primary

Ответы59792

832 5 мар, 01:45 832 1359356

Доброго времени суток, ситуация такая есть возможность попасть на работу в компанию Netcracker вопрос заключается в следующем в какой отдел работающие там или знакомые со структурой посоветовали бы попроситься? сейчас предлагают отдел миграции и иммиграции данных. На сколько это хорошая идея по мнению местных анонов идти в такой отдел?

Ответы59543

833 5 мар, 14:08 833 1359543

>>1359356
Идти в нетсракер в принципе идея так себе, разве что через их курсы на первое время.

Ответы59793

834 5 мар, 16:00 834 1359595

что думаете по поводу работы в эклипс?

835 5 мар, 16:26 835 1359601

Хули гит такой ебанутый. Все через сосноль, все через жопу. Какие пулы мержы блять. Нахуя все так запутано делать.
Ебать я осилил жаву но с иногда трудом понимаю что там делать в этом сраном гите впринципе блять.

Ответы597055983959887

836 5 мар, 17:14 836 1359621

Поясните за oauth2.
Вот допустим я получил данные от фейсбука (например), и потом хочу зарегать пользователя себе в БД.
На основе чего мне делать пароль? Если кто то получит данные к коду то будет ясно из чего пароль создается.
Делать регистрацию не полностью автоматической, просить юзера сделать еще пароль? Смысл тогда в oauth2. Можно и так зарегаться.

Ответы59795

837 5 мар, 18:58 837 1359705

>>1359601
а Idea тебе для чего?

Ответы59883

838 5 мар, 20:15 838 1359765

Может ли контроллер вызывать несколько сервисов подряд, учитывая что методы read-only, т.е. в транзакции они не участвуют? Например, надо получить List<A> из сервиса A, потом List<B> из сервиса B, потом конвертировать их в общий DTO в контроллере и передать клиенту List<DTO>.

839 5 мар, 21:01 839 1359792

>>1359337
Лучше с @Qualifier.

840 5 мар, 21:02 840 1359793

>>1359543
Почему?

Ответы59907

841 5 мар, 21:02 841 1359795

>>1359621
Oauth не для регистрации, а для аутентификации.

Ответы59882

842 5 мар, 22:17 842 1359839

>>1359601
>Хули гит такой ебанутый. Все через сосноль, все через жопу.
Сам ты пидор тупой через жопу!
Все нормальные пацаны через консоль выучили команды и делают по красоте!
А то сегодня у тебя божественная IDEA, а завтра богомерзкий Eclipse и ты блядь будешь опять читать мануал и гуглить где там и как коммит сделать.

Ответы59841

843 5 мар, 22:18 843 1359841

>>1359839
Уж лучше через консоль, чем через эклипс.

Ответы59845

844 5 мар, 22:22 844 1359845

>>1359841
Открываешь гит перспективу, подключаешь локальный гит (ссука сразу не может найти что ли?) файл открывает не от текущей директории а блядь от домашней папки сука бесит

845 5 мар, 23:43 845 1359882

>>1359795
Но теоретически, я могу выдернуть данные и зарегать пользователя, записать в БД. Чем не вариант.
Правда все АПИ хотят реальный адрес сайта а не локалку.
Сейчас пердолюсь с shh. Посмотрю что получиться.

Ответы59884

846 5 мар, 23:47 846 1359883

>>1359705
Я полный нубас в гите, посяните как с ним связана идея.

Ответы59960

847 5 мар, 23:49 847 1359884

>>1359882
>зарегать пользователя, записать в БД
Зачем?

Ответы59886

848 5 мар, 23:52 848 1359886

>>1359884
Чтобы сделать ему учетку и потом дать делать что то в личном кабинете например, сохранять какую т освою хуету, которая отдельно для каждого пользователя.

849 5 мар, 23:59 849 1359887

>>1359601
Качаешь себе GitKraken и не ебешься в жёпы, всё чинно-красиво драг энд дроп и подобная хрень. Один минус - не захочешь потом на соснольке прописывать, а это полезно ващета

Ответы59892

850 6 мар, 00:02 850 1359892

>>1359887
Ну я немного могу в соснольку. Но когда начинается всякое типо гит ребейз -1 ХЕАД~5 и блокнотики я ебал эту хуйню блять. Нахуй это так было делать то.

Ответы59896

851 6 мар, 00:07 851 1359896

>>1359892
Деды в терминале работали и нам велели. Один хуй, все эти ваши гиткракены и сорстри так же точно гит в бекграунде вызывают

Ответы59897

852 6 мар, 00:13 852 1359897

>>1359896
На вкус и цвет как говорится
бтв у самого за пол года только 1 раз кракен ебнулся и пришлось консолечку открыть.

Ответы59909

853 6 мар, 00:46 853 1359907

>>1359793
Овертаймы, большая текучка, в целом куча говнокодеров

854 6 мар, 00:55 854 1359909

>>1359897
Ну честно сказать, я разве что мерджить/ребейзить из терминала не умею без хорошего diff тула, остальное типа коммитов/чекаутов там нечего уметь

855 6 мар, 07:53 855 1359960

>>1359883
Вкури работу с гитов в консоле по официальному сайту!
Там на русском есть для дебилов

Ответы60450

856 6 мар, 09:03 856 1359973

Нужно ли учить библиотеку swing?

Ответы59977

857 6 мар, 09:21 857 1359977

>>1359973
Конечно учи!
Потом работу сразу найдёшь хорошую!

Ответы5998460000

858 6 мар, 09:38 858 1359984

>>1359977
спасибо за ответ)

859 6 мар, 10:29 859 1360000

>>1359977
А ты хорош.

860 6 мар, 10:58 860 1360009

Как бротли сжимать-разжимать без пердолинга?

861 6 мар, 12:14 861 1360041

Перекатите тред, черти.

862 6 мар, 13:02 862 1360070

Что писать в резюме если у меня нет опыта нихуя?
Сделал хеловорлд на спринге с БД и еще какой то хуетой типо реста + могу в ЖС немного (без фреймворков, реакт читаю сижу). Джаву кор на боле мене приемлемом уровне и алгоритмы несложные. Красно-черные деревья по памяти не напишу, но какой нить БФС осилю. Есть опыт работы манагером комерческого отдела и эконом вышка.
Что искать то куда податься.
Софт скилы норм, внешне нормис, могу пиздеть ни о чем и производить впечателние.

Ответы6012160133

863 6 мар, 14:35 863 1360121

>>1360070
Курсы какие-нибудь официальные проходил? Хоть на курсере, хоть на юдеми? Добавь их

Ответы60282

864 6 мар, 14:55 864 1360133

>>1360070
>Сделал хеловорлд на спринге с БД и еще какой то хуетой
У меня весь гит крудами забит, уже несколько тестовых заданий по 2 недели делаю а мне даже обратную связь не дают!

Ответы6015760283

865 6 мар, 15:38 865 1360157

>>1360133
Дай посмотреть? Мне тоже надо запиливать гитхаб.

Ответы6018560285

866 6 мар, 16:39 866 1360185

>>1360157
Что тебе мешает сейчас его запилить?
И залить туда свои хелоуворды?

867 6 мар, 19:03 867 1360282

>>1360121
Неа, ничего такого.

868 6 мар, 19:04 868 1360283

>>1360133
Круды то зачем плодить. Там 1 достаточно чтобы понять как работает.

Ответы60577

869 6 мар, 19:05 869 1360285

>>1360157
Деанон и т д. Я хз даже. Я туда даже бустрап прикрутил и на нем фронт .

870 6 мар, 22:14 870 1360390

Какой проект можно запилить на спринге и гибернейте, без спринг бута? Что-нибудь консольное?

Ответы60402

871 6 мар, 22:35 871 1360402

>>1360390
Тот же самый круд, только стартеры не используй и в мейне контекст создай

Ответы60446

872 6 мар, 22:48 872 1360446

>>1360402
Без спринг бута, потому что не хочу фронт рисовать и rest api пилить.

Ответы60451

873 6 мар, 22:57 873 1360450

>>1359960
Сразу после изучения свинга видимо. Следующий пункт.

874 6 мар, 22:57 874 1360451

>>1360446
Ты ебанутый? Нахуя тебе спринг без апи или фронта.

Ответы6045760459

875 6 мар, 23:09 875 1360457

>>1360451
Например если привык к спринговым абстракциям @Scheduled, @Async и т.д, а сам http сервер не нужен, удобно.

не оп

876 6 мар, 23:10 876 1360459

>>1360451
Для автоконфигураций и ioc, а ты думал зачем он?

877 7 мар, 08:50 877 1360541

>>1332296 (OP)
Сап. Довольно странный вопрос: удобно ли использовать Spring Security для бекэнда - авторизация/регистрация/аутентификация и вот это вот всё, без веб клиента мобилки? Все гайды, которые видел (в том числе офицальный Spring'овый) работают с веб мордой. Если кто-то использовал, можете поделиться инфой или гайдами, как адаптировать Security, или подскажите, что можно прикрутить к Spring'у для решения этой задачи.

878 7 мар, 11:29 878 1360577

>>1360283
>Там 1 достаточно чтобы понять как работает.
А через неделю вспоминать что там делать ага?
И гуглить сигнатуру основных функций

879 7 мар, 11:51 879 1360588

14 Кб, 485x3356 Кб, 610x30159 Кб, 610x301

Это какой-то прикол?

Ответы6084460846

880 7 мар, 13:41 880 1360629

Поясните за лямбды. Лично с моей говнокодерской точки зрения они перегружают код и сложны для прочтения, когда них делается что-то сложнее построчного вывода из коллекции в какую-нибудь консоль, например. И стандартные форы, где можно замечательно понимать, что делается построчно гораздо лучше, в случае когда твой код будет ещё кто-то юзать. Я не прав и лоу скилл без опыта, а батьки спокойно с полувзгляда считывают любую лямбду? Если да, то где её явно лучше юзать, чем классический подход.

881 8 мар, 06:01 881 1360844

>>1360588
Про эксепшон хуй его знает, а по второй и третей всё просто.
В первом случае у тебя идёт перемножение двух интов, переполнение, а потом каст в лонг при присваивании.
Во втором у тебя сначала происходит явный каст i в long. Потом, при умножении long на int, происходит неявный каст int в long.
Приоритеты же, ёпта. Тайп каст по приоритету выше умножения.

Ответы60847

882 8 мар, 06:26 882 1360846

>>1360588
Во, по ексепшону. Короче, это ФИЧА.
>The native methods this function uses does take long values without reporting an error. You can call them using reflection. However you would have test whether they work for you on your system and using memory mapping this way, could confuse you more than be useful.
>The best approach is to create an array of MappedByteBuffers, e.g. 1 GB each in size and create a wrapper which hides this ugliness.
>While not technically a bug, it is BAD (Broken As Designed) Part of the reason this was done originally could be that 32-bit JVM could not support this, but I don't see why 64-bit JVMs still have this limit.

и
https://bugs.java.com/bugdatabase/view_bug.do?bug_id=7147951

883 8 мар, 06:55 883 1360847

>>1360844
Я был уверен, что Integer.MAX_VALUE имеет тип long.

Ответы60849

15 Кб, 1013x264
884 8 мар, 07:08 884 1360849

>>1360847
В восьмой версии завезли беззнаковые костыли. Теперь хуй проссышь вообще, какой там Integer.MAX_VALUE. Но это жи жаба, хуле ты от неё хочешь.

катимся 885 8 мар, 08:04 885 1360857

>>1360856 (OP)
>>1360856 (OP)
>>1360856 (OP)

Тред утонул или удален.
Это копия, сохраненная 12 марта 2019 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

« /pr/В начало тредаВеб-версияНастройки/a//b//mu//s//vg/Все доски

Пользуетесь скринридером — пишите, что можно улучшить.
Host-Food.ru — надёжный хостинг от 12 руб/мес | Free DNS
Зеркала М.Двача: m2ch.hk, m2ch.lib, m2chfapiswfw2wcakptqp4o6ltgchvjuxfab7urxlduraomtlnhw5xad.onion