0 / 0 / 0
Регистрация: 02.11.2012
Сообщений: 3
1

Groovy Передача объектов между Java и Groovy

15.05.2014, 20:31. Показов 1784. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Привет всем. Столкнулся с проблемой, которую не смог решить с помощью гугла, по-этому хотелось бы обратиться за советом к более опытным разработчикам на java и groovy.

Вообщем проблема следующая: есть программа на java (назовем ее P1), которая вызывает некоторый класс написанный на groovy (пусть будет P2), и добавленный в виде библиотеки к P1. При вызове нужно как-то перекинуть из P1 в P2 1) InputStream; 2) массив Object[].

Из P1 вызов P2 происходит следующим образом:
Java
1
2
3
4
CompilerConfiguration conf = new CompilerConfiguration();
conf.setScriptBaseClass("DSL.MapParser");
GroovyShell shell = new GroovyShell(conf);
Object shellResult = shell.run(options, "Evolve", args);

Как сделано сейчас: в P1 считывается весь InputStream и записывается в файл, после чего путь к файлу кидается в виде аргумента при вызове P2, где из этого файла снова создается InputStream и считывается уже из него. Но так как объем данных в этом стриме довольно большой, то теряется много времени на работу с диском при записи в файл. Массив объектов передается по такому же принципу, каждый объект записывается в файл, и массив путей к файлам кидается в виде аргумента в P2, где парсятся и создаются новые объекты. В итоге обработка данных идет 5-7 минут, а время на запись/чтение из файлов порядка 10-15 минут, что является просто ужасным результатом.

При поиске в гугле нашел два более менее подходящих решения: сериализация и сокеты. Но в первом случае не понимаю как передать InputStream, а во втором как передать массив объектов.

Надеюсь кто-нибудь здесь сможет помочь мне найти решение этой проблемы И, конечно же, заранее огромное спасибо всем!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.05.2014, 20:31
Ответы с готовыми решениями:

Java или Groovy
Я начал изучать JAVA, но тут мне знакомый программист говорит, что JAVA как язык слабоват и что...

Groovy для инициализации java beans в spring boot
Добрый день. Вообщем вопрос сводится в целом к тому, как получить возможность горячей подмены бинов...

Передача объектов между приложениями
Есть ли способ напрямую передать объекты из одного .NET приложения в другое? Объём достаточно...

Передача объектов между активностями
У меня есть сущность Test и мне необходимо передать объект этой сущности в другую активность, как...

0
15.05.2014, 20:31
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.05.2014, 20:31
Помогаю со студенческими работами здесь

Передача свойств объектов между функциями
Народ, I need help! Есть класс: class Employees { public: Employees();...

Передача массива объектов между классами
В общем проблема следующая - есть общий для всех классов ArrayList. Доступ к нему делаю через...

Передача объектов между потоками и отображение их в TreeView
Доброго времени суток. Проблема в следующем. Есть поток, который для указанного каталога проводит...

Присваивание объектов одного типа между собой и передача объекта в функцию по значению
При первом знакомстве с С++ усиленно не могу понять вот такие моменты : 1. Имеем вот такой код : ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru