• Как настроить WebSecurityConfig правильно?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Приветствую!
    1)
    Хочу сделать чтоб вход на страницы админа /adminPageProduct /adminPageUser

    наверное, лучше сделать общий префикс для админ панели, что-то типа /admin/** и на этом уровне ограничивать доступ, чем перечислять каждую ссылку в настройках конфигурации. А урл делать следующей структуры:/admin/products /admin/users. Вам же в любом случае нужно закрыть доступ ко всей админке

    Мне кажется, что проблема у вас может быть тут:
    .antMatchers("/admin*")
    Других явных проблем не вижу, если все остальное настроено корректно
    Ответ написан
    Комментировать
  • Как передать значение с андроид приложения на сервер?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    Первый вопрос: как с андроид приложения передать на сервер

    Если у вас появился подобный вопрос, то значит, что ваше приложение является клиент-серверным.
    В качестве клиента выступает - андроид устройство
    В качестве сервера - удаленное серверное ПО.
    Тут важный момент - у вас на данный момент как минимум нет серверной части. Т.е. REST приложение, которое работает на сервере и позволяет обращаться к его эндпоинтам (методам контроллера) для получения или передачи той или иной информации.
    Т.е вам нужно для начала создать это приложение. Если на java, то смотрите в сторону Jakarta EE, Spring, Play. Или любой другой фреймворк, который вам может подойти.
    Второй вопрос на какие сервера вообще можно предать значения?

    Чувствуется, что вы не владеете основами веба, иначе подобный вопрос не звучал бы. Передать значение можно на сервер, которым владеете / арендуете. Это может быть и облачное хранилище - AWS, Google Cloud, Heroku, а может быть какой-нибудь простенький VPS (например, hetzner.com за 3-4 евро в месяц).
    К слову, в качестве сервера, чтобы просто поиграться может выступать и ваш компьютер, который подключен к сети. Достаточно создать rest приложение и сделать его доступным миру. А может быть, вам и не нужен никакой сервер... например, если приложение для личного пользования и вам нужно с телефона просто передать данные, чтобы они оказались на компе, то как вариант можете использовать API Яндекс Диска или Гугл Диска. Закачиваете ваши данные туда, а далее на своем компьютере синхронизируете их.

    В общем, разные цели, разные реализации...
    Ответ написан
    Комментировать
  • Остается ли Java все еще актуальной для разработки под Андроид?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Хотите стать android разработчиком - изучите kotlin
    Будет огромным плюсом, если вы изучите Java, чтобы например, при изучении какой-либо библиотеки иметь представление о том, что в ней написано.
    Впрочем, вы в дальнейшем сможете переключиться с одного языка на другой, если что-то пойдет не так.

    Можно ли разрабатывать на Java android приложения? Да, можно.
    Ответ написан
    Комментировать
  • Мобильное приложение на базе Интернет магазина?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    Хотелось бы создать приложение существующего интернет магазина, не переделывая и не переписывая с нуля сайт.

    Дописывать придется в любом случае. Вопрос в каком объеме. А вот, переделкой сайта можно и не заниматься.
    Хотя, скорее всего чуть переделать тоже нужно будет. Например, добавление jwt auth в существующий секьюрити и т.д.

    Можно поступить по-разному:
    1) PWA на javascript. Это самое быстрое решение, которое вы найдете. + адаптировать UI сайта под моб. устройства.
    2) Написать REST сервис для интернет-магазина (не переписывая текущий функционал) ну а дальше поднять нативное или ненативное приложение под моб. устройства. Если хотите охватить больше моб. устройства (android, iOS), то REST + React Native (javascript). А если принципиально нужно нативное приложение в чем скорее всего нет надобности с учетом вашей задачи, то java, kotlin.

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

    Не вижу необходимости. Можно конечно взять какой-нибудь MERN + React Native, чтобы все было на одном языке, но нет надобности.
    Ответ написан
    4 комментария
  • Как встроить скрипт в WebView-Android?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Добрый день!
    Как добавить js в WebView при этом не беспокоя сайт, чтобы ничего не сломалось

    Скорее всего вам известно, что js код отрабатывает на клиенте, так что если код написать корректно, то ничего не должно сломаться

    Если добавлять через web.loadUrl("javascript:****"); - это не то и при этом страница Гугла ломается (перестают отображаться все приложения Гугла).

    Значит, в вашем js коде есть проблемы или же он подключается не в нужный момент. Например, скрипт должен сработать после DOM Content loaded

    https://stackoverflow.com/questions/8533187/add-ja...
    https://developer.android.com/guide/webapps/webview
    Ответ написан
    Комментировать
  • Как разделять пользователей после авторизации?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Я прикрутил простую регистрацию на SQLite. У каждого пользователя свой id.

    Регистрацию реализовали, а вот, авторизацию и аутентификацию забыли реализовать видимо. Иначе у вас не было бы вопроса:
    Я не знаю, как получить id пользователя, который сейчас авторизован


    Подходит для этих целей SQLite?

    БД не имеет никакой роли для этого.

    На самом деле ваш вопрос не совсем понятен. Является ли приложение клиент-серверным? Если да, то реализовано ли на сервере jwt auth?
    Если я правильно понимаю, то у вас есть приложение, в котором пользователь может создавать несколько аккаунтов. И в зависимости от того, какой аккаунт он использует в конкретный момент вы хотите создавать посты от имени текущего юзера. Т.е. это не клиент-серверное приложение, а приложение в котором есть локальная регистрация нескольких аккаунтов, так?

    Прочитайте вот, эту статью - https://developer.android.com/training/id-auth
    Возможно, она будет полезной для вас
    Ответ написан
    1 комментарий
  • Настройки постоянных ссылок для кулинарного сайта?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    Здравствуйте!
    Не являюсь СЕО специалистом, но для сео специалистов приходилось ссылки настраивать.
    Вот, примерно такой структуры: site.ru/category/post_name
    - без указания расширения страницы html
    - без слеш в конце
    - с включением в урл названия категории
    Ответ написан
    Комментировать
  • Как можно заменить attributes в path, используя (или нет) regex?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Здравствуйте!
    Думаю, что вся картина текущей ситуации вам лучше известна, нежели мне. Но!
    Или это сочетание может быть внутри другого (ограничить условие поиска наличием слэшей нельзя, т.к. аттрибут может быть в конце uri.

    Почему бы не написать регулярное выражение, которое может или наоборот не может содержать слеш в конце?
    Посмотрите на эти ссылки. Возможно, что они наведут вас на мысль
    https://stackoverflow.com/questions/23046572/regex...
    https://stackoverflow.com/questions/19132133/regex...
    https://stackoverflow.com/questions/34733751/regex...

    Или например, проверять местонахождение атрибута и если он в конце, то игнорировать наличие slash в конце, а во всех остальных случаях ограничивать слешем.

    Точный ответ можете дать вы, ибо точная структура всех возможных урлов и паттернов имеющихся в наличии известна вам
    Ответ написан
  • Какой компонент выбрать для крутой и быстрой многофункциональной соц. сети из Вордпресс?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    Какой компонент выбрать для крутой и быстрой многофункциональной соц. сети из Вордпресс?

    Поддержу своего коллегу Олег и отмечу, что на ВП поднять нормальную соц. сеть невозможно, так как он не предназначен для этого.
    Да, плагины имеются - WP Recall (посмотрите также его дополнения), Ultimate Member.

    А если есть серьезные намерения и бюджет позволяет, то как минимум посмотрите в сторону фреймворков (Yii2, laravel, Symfony, Spring, Django, ExpressJS и другие). Либо самопис.

    Если нужна именно CMS, то можете посмотреть LiveStreet
    livestreet.ru
    Вроде этот CMS еще живой... ну и подточен под соц. сеть лучше, чем ВП, наверное...
    Ответ написан
  • Как построить логику приложения?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Можно по-разному реализовать вашу задачу. Если никаких ограничений нет, то можете посмотреть в сторону:
    1) использовать 2 массива. Первый char[], а второй int[]. Далее как вы и упомянули по индексу достаете нужное значение.
    2) Либо использовать Map. Например, ее реализацию HashMap.
    3) Либо например, в пакете apache commons lang3 есть объект Pair. И можно использовать что-то типа List<Pair<Character, Integer>>.

    В любом случае все будет сводится к следующему:
    - получаете слово (строку) разбиваете его на characters.
    - объявляете переменную int, в которой будут суммироваться значения букв
    - далее в зависимости от выбранного массива или коллекции итерируете по нему и при совпадении буквы получаете ее числовое значение и прибавляете к вышеобъявленной переменной.

    Примерно как-то так
    Ответ написан
  • Wordpress: как правильно реализовать древовидную группу записей?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    url вида site.ru/{categoty}/{title}.html/param1/param2/.../paramN/ (тупо, конечно, после .html ставить что-то дальше, но get параметры для сео плохо).

    В вашем примере вы показываете пример с pathVariable, который к тому же некорректно построен.
    Смотрите можно делать как pathVariable
    site.ru/{categoty}/param1/param2/.../paramN/{title}.html

    а можно сделать через queryParam (requestParam)
    site.ru/{category}/title.html?param1=xxx&param2=yyy&param3=zzz

    Как по мне второй вариант предпочтительнее с точки зрения разработки. + не нужно ничего править в apache + nginx.
    Не все то, что плохо с точки зрения SEO является плохим с точки зрения разработки.

    Не думаю, что лучшей идеей является включение динамически изменяемых параметров в структуру pathVariable. Ведь, по факту тогда вы получите кучу ссылок да еще и с неуникальным контентом. И вот, это как раз плохо скажется на СЕО. Хотя, я не специалист в СЕО...
    Ответ написан
    Комментировать
  • Как вынести конфиг из Spring приложения(внешний настраевыемый)?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Ответ легко находится поисковиком.
    Вот, полезная статья - https://www.baeldung.com/spring-properties-file-ou...

    Пути по которым Спринг по умолчанию ищет файлы конфигурации:
    A /config subdirectory of the current directory
        The current directory
        A classpath /config package
        The classpath root


    Вот, похожий вопрос на SO
    https://stackoverflow.com/questions/26744060/exclu...
    Ответ написан
    Комментировать
  • Как сделать поиск по айди в банковской карте?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Простое решение -
    1) собрать все UserCard в коллекцию. Например, List<UserCard>
    2) При помощи сканнера получить id карты, а далее прогнать его через цикл List<UserCard>
    UserCard uc : userCardList
    3) при совпадении вывести результат
    Ответ написан
    1 комментарий
  • Как настроить IDE для Java, если JDK установлен в другом месте?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    Добрый день.
    Какая разница где установлен jdk. В настройках IDE вы можете указать путь до нужной версии.
    Также проверьте прописаны ли у вас пути в разделе "Переменные среды"
    https://stackoverflow.com/questions/18987228/how-d...
    Ответ написан
    Комментировать
  • Как заполнить таблицу SQLite из масива?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Здравствуйте!
    Для удобства работы с БД можете подключить ORM (ormlite, room и др.).

    А по поводу инсертов в БД, гляньте на эти ссылки:
    https://stackoverflow.com/questions/6080975/how-to...
    https://stackoverflow.com/questions/21848557/how-t...
    гугл
    гугл 2
    Ответ написан
  • Как учить Java Core?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Все важные изменения в Java начались с Java 8. Другие версии, лишь дополняют или улучшают текущий фукнкционал. Так что читайте книгу дальше)
    Ответ написан
    9 комментариев
  • Как консольное приложение скопмилировать в один файл?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Погуглите - fat jar
    Если приложение написано на Maven, то используйте плагин maven assembly plugin -
    tutorials.jenkov.com/maven/maven-build-fat-jar.html
    Если приложение использует gradle, то
    https://www.baeldung.com/gradle-fat-jar
    Если я правильно понял ваш вопрос, то вышеуказанные ссылки помогут вам
    Ответ написан
    Комментировать
  • Изучения Java в 30 лет это реально?

    azerphoenix
    @azerphoenix
    Java Software Engineer
    Добрый день!

    Изучение Java в 30 лет это реально?

    Да, конечно реально. Вообще удивитесь сколько в мире "свичеров". Я начал изучать Java в 2018 году (27 лет).

    Начала изучать самостоятельно java дома, по книгам и ютубу

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

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

    Тут уже вам решать куда именно двигаться. Если интересна разработка энтерпрайз, то дальше стоит изучить Java EE, servlets, jsp т.д. Также изучить фреймворки Spring, Play и др. Конечно же нужно изучить основы веб (html, css, js). Изучить tcp / ip. Понять как именно устроен интернет. Изучить базы данных (sql, no sql). Обратить внимание на ACID. Изучить паттерны проектирования, структуры данных и т.д. Разобраться с ORM (EclipseLink, Hibernate и др.)

    Если вам интересна мобильная разработка, то конечно же стоит изучить Android, дополнительно изучить kotlin. Изучить Firebase, sqlite, ormlite, room.

    Найти хорошие курсы в Москве не удалось,репетитора тоже,подскажите где найти человека,который поможет изучить java,может есть какие то закрытые съезды программистов,или что то для новичков,где можно познакомиться и зарядиться новыми силами.

    Смотрите, необязательно курсы искать именно в Москве. Можно посещать вебинары.
    Вот, пример бесплатного тренинга от EPAM - https://www.training.ru/#!/Training/2681?lang=ru
    Вот, например, курсы от IT-Academy - https://www.it-academy.by/
    Вот, курсы и услуги менторства от Сергея Немчинского - https://foxminded.com.ua/

    О себе: 6 лет работы в строительной компании,после три года декрета;и вот в декрете,я решила,что пора мечте сбыться и стать программистом ,ранее ничего не изучала,а сейчас прям в захлёб очень хочу изучить данный язык,и переквалифицироваться. Что скажете на это? Может это просто мечты, и не стоит даже пытаться? Или все таки может не стоит бояться,что более юные будут у работодателей на первом месте?


    Раз как вы выразились изучаете программирование "в захлеб", то это уже не мечта, а цель, которую нужно со временем достичь. Стоит ли бросать, если вам это нравится? Конечно же нет! Нужно ли развиваться дальше? Однозначно, да! Что касается работодателей, то возможно, что какой-то компании принципиален юный возраст, но в целом нет. Им важно, чтобы вы желали развиваться и умели работать.
    К слову, посмотрите интервью Java разработчика, который работал в EPAM и который начал изучать java в 30 лет -
    https://www.youtube.com/watch?v=iM445BnBhpw

    Ну и практикуйтесь. Изучите какую-нибудь библиотеку или фреймворк и по завершению изучения создайте пару услуг во фриланс биржи (kwork.ru например) и выполните заказы. Это тоже поможет в определенной мере стать лучше.
    Ответ написан
    3 комментария
  • Почему не отображается ProgressBar в JavaFX?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Подозреваю, что вы все делаете в одном потоке.
    Попробуйте отделить UI от основного потока.
    Вот, чтиво по этой теме:
    math.hws.edu/javanotes/c12/s2.html

    Вот, тут как раз у разработчика тоже была проблема с progressBar.
    https://stackoverflow.com/questions/13784333/platf...
    Ответ написан