LINUX.ORG.RU

Сообщения crutch_master

 

Десериализация объёктов JPA в JSON

Как перегнать всё в json и обратно, кроме самих JPA объектов, от которых оставить только id. Разворачивать обратно в JPA по ссылкам на эти самые id. Всё записывать в виде массива, например. Например, есть:

public class Item {
        public int id;
        public String itemName;
        public User owner;
}

public class User {
        public int id;
        public String name;
        public List<Item> userItems;
        public void addItem(Item i) {
            i.owner = this;
            userItems.add(i);
        }
}

...
User user = new User(1, "Vasya");
Item item = new Item(1, "Book");
Item item2 = new Item(2, "Hat");
user.addItem(item);
user.addItem(item2);
После преобразования в json я хочу получить что-то типа:
[
{ User : {id : 1, name : "Vasya", userItems: [1,2] } },
{ Item : {id : 1, name : "Book", owner : 1},
{ Item : {id : 2, name : "Hat", owner : 1}
]
Ну а потом преобразовать всё это обратно и как-то скормить entity manager'у, если я всё правильно понимаю.
Всё уже описано в JPA и надо это сделать с минимумом телодвижений. Есть ли для этого готовый инструмент или таки придётся писать свой велосипед?

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

 , ,

crutch_master ()

Чем плох unix-way

Собственно сабж. Интересно узнать мнение противников. Начало тут: www.linux.org.ru/forum/science/14371811

Аргументы против unix-way были такие: unix-way плох, потому что gnu/hurd не взлетел. Пока больше ничего выяснить не удалось.
Аргументы за: unix-way хорош там, где нужно обрабатывать текстовые данные. Например, парсить. Отпадает необходимость каждый раз что-то велосипедить на питонах.
Дзыньк.

 

crutch_master ()

Я нашел одно место откуда лезут kali-школьники

Вот отсюда, например
https://www.youtube.com/watch?v=14TWclnSTCw
Ъ: какой-то утубер-кулхацкер делает фейковые точки доступа, mitm и прочую дичь.

 

crutch_master ()

Возьмите меня в модераторы

Я буду тереть всякую откровенную дичь, пока все в GMT +3 еще спят. У меня GMT +7, макбука нет. Обещаю не вахтёрить и вести себя прилично.

 

crutch_master ()

Разыскивается java spring application shell

Есть рабочий проект спринг, надо его запустить, подёргать методы классов и посмотреть, что они выдают. Есть ли что-нибудь такое?
https://projects.spring.io/spring-shell/ - не подходит - там, как я понял, надо сперва везде засунуть @ShellComponent и еще кучу всего.
jshell что-то может, но через import и там где @Autowired на @Autowired через @Autowired очевидно ничего работать не будет.
Какие еще есть варианты, чтобы подебажить запущенное приложение через cli?

 ,

crutch_master ()

Git. Два проекта в одном каталоге

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

 

crutch_master ()

Лопаты в 2к18

Хочу поднять холивар на тему огромных лопат типа самсунга против миниатюрных телефонов типа Nokia 3310, раньше я был одним из тех кто таскал в штанах огромную лопату, там был ведроид, крутая видеокарта, мощный процессор на 8 ядер и много серьезных штук, сколько потреблял он я не в курсе, но зарядки хватало на день, что было бы если весь день играть не скажу, но ясно, что так - еще меньше. И вот эта огромная груда из микротранзисторов и печатных плат жрала огромное количество электричества, торчала из кармана как(да вы сам знаете как) и впринципе звонила ок.

Но потом я купил нокию 3310 и..., оказалось, что она работает абсолютно так же или даже быстрее, она потребляет 5-9 ватт, легкая, не греется и ... я подумал, похоже что эти все огрызки с лопатами уже пережиток прошлого, как например всякие там ЭВМ и иже с ними, а здесь ведь еще и дисплей, и клавиатура и звук и микрофон и еще вся периферия необходимая.

Вопрос, какие доводы остаются в пользу лопат, кроме того, что там можно играть, лазить в социалочках и что-то оплачивать (хотя это вопрос времени через 1-2 поколения всё закроет РКН, нереганые лопаты заблокируют (www.linux.org.ru/forum/talks/14322210) и поставят метку на лоб)? И я считаю впринципе даже, что мощности избыточны, особенно если вы не игроман, так какое же оправдание остается в том, чтоб содержать этот кусок железа, потребляющий безумное кол-во энергии? Дань моде? Мифическое ощущение преимущества ?

 

crutch_master ()

Генератор сущностей Javax.presistence из базы данных

Есть что-то такое и как оно называется? В идеале cli и чтобы сразу оборачивало в какой-нибудь rest сервис. Крайне желательно СПО.

 , , ,

crutch_master ()

Java spring autowire для генериков внутри их самих

Есть class Test<T>:

@Component
public class Test<T> {
    @Autowired
    public T fld;
    @Autowired
    Something something;
}
Есть оно же в другом месте:
@Component
public class Main {
    @Autowired
    public Test<MyClass> testMyClass;
}
Есть где-то MyClass, не важно суть какой.
Надо, чтобы @Autowired сработал, в моём случае fld - это org.springframework.jmx.export.annotation.AnnotationMBeanExporter, а надо что бы он был MyClass. Это возможно вообще, или придётся лепить что-то в обход spring?

 ,

crutch_master ()

Как написать хеш с параметрами и функциями на яве?

Упоротость по js не проходит бесследно. Мне надо на яве сляпать приёмник команд из amqp. Команды имеют вид «<имя> <параметр 0> <...>». То есть я просто бедру строку из amqp, потом делаю split по пробелу, по первому элементу выбираю команду, остальное все скидываю в массив аргументов. Если он короче, чем может взять моя функция, то выплёвываем ошибку, если нет, вызываем функцию и выплёвываем то, что она вернёт.
Вроде всё просто и на js я бы это быстро накидал, но тут я что-то затупил. Во-первых стрелки (которые лямблы) работают на какой-то магии:

interface TwoArgInterface {
    public int operation(int a, int b);
}

public class MyClass {

    public static void main(String javalatte[]) {
        TwoArgInterface plusOperation = (a, b) -> a + b;
        System.out.println("Sum of 10,34 : " + plusOperation.operation(10, 34));
    }
}
TwoArgInterface plusOperation = (a, b) -> a + b;Что это значит??
Как он узнаёт, что лямбду надо прицепить к int operation??
Что будет, если в интерфейсе больше двух методов?
Как туда запихать больше двух методов?
Но это ладно. Тут в принципе возможно сделать метод, который принимает функцию, чтобы нахерачить что-то в виде:
//js
commands : {
    setLogQueue : {
        argc : 1,
        run : (arg) -> {main.setLogQueue(arg); return "Ok";}
    }
...
}

...
//cmd - command string from message, agrs - array from message.
command = commands[cmd]
if (command) {
    if (command.argc < args.length) return "I need MORE args";
    return command.run(...args);
} else {
    return "Command "+cmd+" not found.";
}
??

 

crutch_master ()

Логический движок на js

Короче, я опять упоролся и душа захотела декларативщины. Надоело писать всякую оопоту, охота описывать объекты, правила из взаимодействия и чтобы всё это работало. Покрехтев немного над клавиатурой я выдавил из себя dgejs (declarative game engine js). Задача была сделующая: есть в комнате человек, мешок и яблоко. Человек может взять яблоко, засунуть его в мешок, поднять мешок, бросить мешок, вытащить из него яблоко и бросить на пол. Для этого были сделаны, собственно сами объекты (человек, яблоко, мешок), действия (взять, бросить, засунуть, достать), условия для действий (руки свободны/заняты, в объекте есть хранилище/нету), сборщики (в движке) (всё что: в руках, в том же месте, хранится в объекте), код для действий (например, прописать объект в руках, поменять его место, добавить объект в массив для контейнера, переписать его место и т.д.) и сам движок, который всё это связывает, заставляет работать и говорит что, кто может делать в данном состоянии системы.
Итак, вопросы к знатокам.
1.Не херню ли я делаю? Есть ли какие-то вменяемые готовые реализации для подобной задачи?
2.Если нет, то есть ли компилируемые языки, где можно проворачивать то, что я проворачиваю на js. То есть вызов метода по строке с его названием, хранение функций в левых структурах и прочее.
3.На каком скриптовом языке всё это можно реализовать красивее и лаконичнее, чем на js?
Сорцы тут: https://github.com/Crutchmaster/dgejs
Работает локально в браузере.
inb4: говнокод с for in, for of, es6... - должно работать на duktape, for in тормозной и должен стать for (i=0;i<c;i++) где это можно.

 ,

crutch_master ()

Спиннер моей мечты

Разыскивается спиннер следующей конфигурации:

  • Магнитный подшипник
  • Светодиоды
  • Генератор
  • Микроконтроллер (в идеале одноплатник с linux)
  • Датчик положения лопастей
  • Микрофон
  • Небольшая батарея
  • usb порт (в идеале wifi или 2-4g)
  • Простой встраиваемый JavaScript движок (В идеале NodeJS)

Обсуждается возможность реализации такого спиннера.
Функионал: показывать время, погоду, передавать голосовые сообщения в соцсетях (управление с микрофона), iot-веб сервер, 112
Цена: $30
inb4:
Понедельник - не пятница
У меня отпуск.
Этому не место в talks
Перенесите в web-dev или science.

upd: +гироскоп и управление потряхиванием

 , , , ,

crutch_master ()

Потоки в си

Есть 2 потока. Один принимает данные, другой ждёт, когда данные придут и что-то делает. Потом опять ждёт и т.д. по кругу. Нужен красивый и простой пример с openmp или кроссплатформенной либой. На pthread сделал, а с openmp какая-то жесть, вообще не понимаю, что они там мутят.

 , ,

crutch_master ()

Можно ли использовать Node.js и оставаться натуралом?

В том плане, что тебя не поимеют злонамеренно через трояны из 1к левых зависимостей или через модный пароль случайного разработчика из всей этой помойки. Цель - микросервисы для платёжной системы конторы масштаба 500к городка. Тактика «сделал & свалил» - не прокатит.

 ,

crutch_master ()

Firefox 59.0.2+linuxmint2+rosa

rosa - это Российское шифрование по ГОСТ или что-то другое?

 ,

crutch_master ()

Убит RabbitMQ стресс тестом. Не поднимается.

Есть микросервер на виртуалке с 2 гб оперативки. Там подопытный. Мучил его сообщениями по 500 мб (как я понял они шли куском, а не по одному на строчку). После такого он упал и теперь не может встать. При попытке сделать рестарт насилует своп и валится:

$ sudo systemctl start rabbitmq-server
Job for rabbitmq-server.service failed because a timeout was exceeded.
Что ему можно почистить и как в systemd увеличить длину timeout'а без регистрации и смс?

 ,

crutch_master ()

Хочу переключалку окон по хоткею

Есть xfce панель с кнопками окон. Не хочу дёргать мышку, хочу открывать по хоткею. Где есть такая переключалка? Пока думаю натравить xdotool, чтобы он дёргал мышку и тыкал. В принципе для этого мне нужно только какую-нибудь unix-way-like утилиту, которая умеет рисовать буковки на экране.

 , ,

crutch_master ()

Восстановление данных с microsd карты

Флешке стало плохо после подключения в какой-то там телефон и форматировании вендой. При попытке чтения dd плюётся i/o ошибками и читает метров 300 из 4гб. Подключаю флешку через усб картридер. Есть возможность как-нибудь достать данные, или тут уже только паяльником?

 ,

crutch_master ()

Ищу микро cms для статичный сайтов

Суть такая. Есть статичный сайт в виде кучи html'ок со скриптами. Для его управления нужна небольшая админка, способная к заливки файлов/редактирования/сохранения небольших конфигов к этим самым скриптам. Нужно, чтобы была максимально простая, опенсорц, без бд и деплоилась одним или несколькими пхп скриптами.
Всякие вп, джумлы, модх и прочий шлак не нужны. Гугл выдаёт всякую хрень за $99.90

 ,

crutch_master ()

Git gui кодировка в окошке с выхлопом

https://imgur.com/a/D7lVZ
При приёме/отправке/... в этом окошке кракозябры вместо букв.

> git config --global gui.encoding utf-8
> git config gui.encoding utf-8
Не помогло.

 

crutch_master ()

RSS подписка на новые темы