Задать вопрос
  • Почему SpringBoot не видит ни одного моего бина?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    А попробуй так

    System.out.println(applicationContext.getBean(ConnectionPool.class));
    Ответ написан
    4 комментария
  • Как сделать обработчик коллизий в OpenGL?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Это сложная тема. Это вам - не арканоид написать. Чтоб правильно сталкивать объекты - надо представить как-бы они сталкивались в реальном мире. И я думаю что тут даже десятка параметров недостаточно чтобы описать какое это столкновение. Столкнуть два бильярдных шарика - это одно. А два мешка с песком - это другое. Или шарик с мешком.
    Ответ написан
    1 комментарий
  • С чего начать проектирование базы данных имея только макет?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Сейчас совсем не понимаю с чего начать, нужно ли сначала спроектировать базу, а потом уже бекендом заняться, или все же вместе с беком все делать?

    Из практики я не встречал в жизни такой задачи где-бы проектирование было с нуля и до конца.
    Бизнес меняется. Постоянно появляются новые услуги. И под них растет база. Я-бы на твоём месте
    не стал-бы упарываться вопросом именно проектирования базы. Я-бы доверился итеративному
    процессу наподобие scrum-agile. Делаешь первую версию БД. Показываешь демо. Потом снова
    итерации. Я надеюсь с командой alter table ты знаком? Ну и прекрасно. Значить в любую
    табличку можешь внести изменения. Табличка это не железо-бетон. Если надо - пределай.

    Если ты нашел в интернете нечто и хочешь под него что-то спроектировать в БД - тогда
    экспертом по бизнесу являешся ты. И ты должен сам себе задать вопросы. Какие данные
    будут лежать? Ключи и атрибуты.? Как они связаны.? Тут появляются связи один-ко-много или много-ко-много.
    Это концептуальный уровнь. И на физическом уровне могут появится индексы. Партишены.

    Если ты не знаешь какие сущности там будут лежать - то пойди от бизнес-кейсов. Например кейс.
    Человек хочет сделать заказ. Или еще другой кейс. Человек пришел оплатить заказ.
    Оплатил. Попользовался неделю. Потом ему что-то не подошло и он потребовал возврат.
    Из кейсов сразу появляются сущности. Клиент. Заказ. Склад. Платеж. Фидбек. Flow товара по магазинам
    и складам. И так далее.

    Если начнешь делать - делай по минималке. Лучше сделать меньше но самодостаточно чем поначинать
    тысячу сущностей и бросить их.
    Ответ написан
    1 комментарий
  • Как повторить curl запрос в java?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    Трудно сказать где ты ошибся. Наверное ты формируешь другой запрос отличный от culr-шаблона.

    Попробуй понаблюдать сетевой трафик через tcpdump/wireshark.

    И попробуй активировать DEBUG логгирование для библиотеки org.apache.hc.client5 (я думаю что ты ее используешь хотя по исходнику неочевидно). Попробуй в отладке посмотреть на MultipartEntityBuilder. Есть ли у него toString() ? И что там?
    Ответ написан
    Комментировать
  • Почему нельзя создать массив списков?

    axifive
    @axifive
    Software Engineer
    Так нет же запрета создать массив из ArrayList
    ArrayList<Object>[] list = new ArrayList[5];
    for (int i = 0; i < 5; i++) {
       list[i] = new ArrayList<Object>();
    }
    list[0].add(new Integer(1));
    list[0].add(new String("2"));
    list[1].add(new Float(5.0));

    как и ArrayList из массивов
    ArrayList<Integer[]> list = new ArrayList<Integer[]>();
    Ответ написан
  • Squid. Как отправить пакеты в определенный интерфейс?

    athacker
    @athacker
    В конфиге сквида параметр tcp_outgoing_address.
    Ответ написан
    Комментировать
  • Организация хранения большого количества небольших файлов в нескольких контейнерах с одной точкой монтирования. Как?

    athacker
    @athacker
    Вариант хранения всех файлов в облаке с монтированием локально по WebDAV вам не подойдёт? Винда умеет WebDAV-хранилища монтировать как локальный диск.
    Ответ написан
    1 комментарий
  • Как админу не грубить пользователям?

    athacker
    @athacker
    Почитайте "Тайм-менеджмент для системных администраторов" Томаса Лимончелли. Хорошая книга, и отчасти даёт ответы на вопрос "как организовать приём и обработку пользовательских заявок".

    Нужно внедрить тикетную систему, и всех вежливо склонять к заведению заявок именно через неё. Если не хотят заводить заявки пользователи -- заводите за них сами. Т. к. это позволит не терять заявки, и заодно будет видно, сколько времени потрачено на каждую заявку. Для заявок типа "сами нажали кнопку DND" можно сделать специальную отметку, чтобы при выгрузке отчёта по времени можно было отличать заявки по делу от вот такой хрени, и потом показать начальству, какой процент времени вы решаете проблемы совсем не профильного характера.

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

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

    И главное оружие админа -- это вежливость :-)

    -- У меня там проблема такая-то и такая-то!
    -- Извините, я сейчас занят такой-то проблемой. Создайте, пожалуйста, заявку, а то меня сейчас отвлекут, и я про ваш вопрос забуду.

    Ну и медленно, но неуклонно гнуть процесс именно к этому. Чтобы мысль "заведёная заявка а) выполняется и б) быстро, а озвученная на бегу в коридоре выполняется либо медленно либо забывается" постепенно дошла до всех.

    С новыми пользователями ещё проще, их можно сразу подсаживать на эту схему, мотивируя тем, что "у нас так принято, так построен процесс, вот тут инструкция, почитайте, пожалуйста. Если будут вопросы -- готов ответить".

    С одной стороны понятно, что вам совсем не интересно решать задачи саппорта, а интереснее повозиться с серверами, но с другой стороны, без организации процесса вам нормально возиться с серверами не дадут, будут постоянно дёргать. Поэтому простроение процесса саппорта и в ваших интересах тоже.
    Ответ написан
    Комментировать
  • Как писать библиотеки для gui? Что нужно знать?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Геометрию, математику и 2D графику - это основы. Графический интерфейс рисуется с использованием простых графических примитивов: пиксель, линия, прямоугольник, овал и прочее, а так же с отрисовкой готовых изображений различных форматов - png, jpg, svg, шрифтов и прочее. В целом структура графического интерфейса примерно такая: есть основной виртуальный экран, куда отрисовываются элементы интерфейса (по сути массив пикселей), есть дерево элементов со своими свойствами (размер, цвета, примитивы, хэндлеры действий, события и прочее), у каждого элемента есть свой z-индекс, или расположение на виртуальном экране по высоте (т.е. один элемент рендерится поверх другого). Рендер всего экрана должен проводить вычисления где какой элемент располагается, как перекрывает собой элементы под ним, какие у него есть прозрачные пиксели, а так же взаимодействие пользовательского ввода со всеми элементами на виртуальном экране.
    Ответ написан
    Комментировать
  • Почему Докер не синхронизирует изменения в volume?

    akelsey
    @akelsey
    Что бы меньше иметь проблем (меньше компонентов и надстроек, меньше проблем), если хостовой машинкой необходимо иметь виндоус:
    1. я бы не использовал Docker Desktop, удалил бы его (всё равно он использует WSL)
    2. установил бы докер как сервис в WSL2, например как тут https://dev.to/bowmanjd/install-docker-on-windows-...
    3. Монтировал бы линукс пути без всяких W:\\src
    4. с windows подсистема линукс вроде бы доступна на smb share \\wsl
    5. рассмотрел бы переход на линукс или хотя бы отдельно виртуалка под разработку.
    Ответ написан
    5 комментариев
  • Какая из книг лучшая для изучения java?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    подскажите одну книгу,которую буду читать и не жалеть о том что теряю время в пустую

    Просьба очень странная. Даже невозможно нормального ответить.
    Авторов обычно трое. Шилдт. Эккель. И Хорстман. Все пишут про Java. Примерно
    одно и тоже. Но поскольку ты очень занятой и тебе времени не хватает - то я тебе
    не советую читать ничего. Работай и задавай вопросы здесь. Когда появится желание
    читать - выбери жестко одну тему. Например рефлексия. И читай только про нее.
    Вот так.
    Ответ написан
    1 комментарий
  • Как адресуются пакеты адресату с серым ip?

    paran0id
    @paran0id
    Умный, но ленивый
    Технология называется NAT.
    Ответ написан
    Комментировать
  • Как писать код на android?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Нужна нормальная клавиатура. Купи себе недорогое устройство класса "нетбук".
    На телефоне писать не надо. Это просто неэффективно. Зря портить себе зрение и пальцы.
    Ответ написан
    Комментировать
  • Почему не работают библиотеки Java?

    xez
    @xez Куратор тега Java
    TL Junior Roo
    1. Рекомендую использовать Intellij Idea
    2. В импортах у вас указаны пакеты из java EE, а у вас java SE.
    3. Если библиотеки не входят в ваш SDK, их надо подключать отдельно. Либо скачав и указав в classpath (IDE с этим может помочь), либо используя maven / gradle.
    Ответ написан
    Комментировать
  • Правильно ли решил задачу?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Можно сделать коллекцию из этих строк
    "Two turtle-doves", "Three French hens"
    тогда алгоритм упрощается. Визуальная копи-паста уходит.
    Ответ написан
    4 комментария
  • Какие есть альтернативы базам данных?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Альтернатив - миллионы. Есть библиотеки которые предоставляют доступ к файлам наподобие баз данных. Это LevelDb например.

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

    Если тебе достаточно файлов (csv, json, xml) то ради бога! Храни в файлах. Это будет очень даже
    экономно с точки зрения TCO и никакой админ не нужен. А вот когда ты будешь гонять запросы
    по файлам и тебе понадобится индексирование, транзакции и изоляция - вот с этого момента
    можно обуждать всякие dbms или системы на файлах.
    Ответ написан
    4 комментария
  • Как правильно отправлять файлы в RESTfull приложении?

    @Dmtm
    Android
    сейчас, раз уже есть массив байт, то передавать вместе с классом, так проще
    а вообще - вынести работу с файлами в отдельный репозиторий (там и кеширование можно добавить для экономии) и в Book останется только имя файла
    Ответ написан
    2 комментария