Задать вопрос
Пользователь пока ничего не рассказал о себе

Наибольший вклад в теги

Все теги (18)

Лучшие ответы пользователя

Все ответы (13)
  • Как в Maven-проекте собрать код отдельно от ресурсов?

    @shushara4241
    Тут нужно понять такую идею, что ресурс - это неотъемлимая часть программы, которая должна существовать для ее нормальной работы и именно поэтому помещается в resources и существует внутри одного jar-файла. Если эти файлы убрать из jar, то они перестают быть "ресурсами", а становятся обычными файлами в файловой системе и работать с ними нужно соответственно - через пакеты java.io/java.nio условно
    Ответ написан
    Комментировать
  • Зачем аннотацию применять к самой себе?

    @shushara4241
    Смысл есть, когда вы пишите аннотацию для аннотаций и необходимо применять ее и к самой аннотации. Самый яркий пример - @Retention и @Target. Для самих @Retention и @Target аннотаций они тоже необходимы, т.к. применяется к аннотациям. Вот такая рекурсия. На практике же крайне специфичный кейс
    Ответ написан
    Комментировать
  • Как работает асинхронность в Spring MVC?

    @shushara4241
    Добрый вечер!
    В контроллерах getDefer1, 2, 3 вы блокируете поток томкета, правильнее будет переделать на какой-нибудь вариант типо такого:
    @GetMapping("/defer")	
    DeferredResult<String> getDefer() {
        DeferredResult<String> result = new DeferredResult<>();
        CompletableFuture.runAsync(() -> {
            try {
                Thread.sleep(30000);
                result.setResult("defer");
            } catch (InterruptedException e) {
                result.setErrorResult("Timeout");
            }
        }, mvcTaskExecutor());
        return result;
    }

    Так должно работать так как вы хотите. С async не работает, потому что спринг не умеет перехватывать вызовы @Async внутри одного класса, нужно чтобы обязательно был другой бин
    Ответ написан
    Комментировать
  • Какие ветки необходимо хранить на удаленном сервере?

    @shushara4241
    Первый вопрос: git - распределенная система контроля версий, предполагающая, что все ветки будут синхронизироваться с остальными участниками. Поэтому бояться хранить в удаленном репозитории какие-то "не те" ветки не стоит, единственное, что нужно обговаривать условия именований (например feature - ветки можно именовать по шаблону feature/{task_id}). Кроме того git flow предполагает наличие feature - веток, release, hotfix etc. поэтому ограничиваться в этом плане не стоит.
    Второй вопрос: это ветки, в которых идет доработка предыдущих релизов. Например, если в версии 3.2.2 нашелся баг, то чтобы пользователи с версией 2.5.5 получили это исправление тоже, коммит с исправлением попадает и в ветку 3.2.х (и выпускается релиз версии 3.2.3) и в ветку 2.5.х (и выпускается релиз версии 2.5.6). Это опционально, кому-то просто удобно разрабатывать так, но вы можете выбрать то, как удобнее именно вам и вашей команде
    Ответ написан
    1 комментарий
  • Не получается подключиться к GitHub. Как решить проблему?

    @shushara4241
    При использовании https в качестве протокола при попытке пуша в удаленный репозиторий должно появляться либо диалоговое окно графического клиента git для входа в аккаунт github, либо в терминале должно появиться приглашение для ввода логина и пароля. Метод с логином-паролем если не путаю был удален из github. Поэтому рекомендую либо перейти на использование ssh либо скачать клиент git для windows, чтобы появлялось диалоговое окно
    Ответ написан
    1 комментарий