файл описания комиссионных от существующих классов Java - PullRequest
1 голос
/ 22 января 2011

Есть ли способ сгенерировать файл описания комиссионных для существующих классов Java, используя рефлексию?Avro имеет эту функцию, но мне нужно использовать Thrift, и у меня есть много существующих бизнес-классов в Java, которые мне нужно сериализовать в C ++ и Java.

Ответы [ 2 ]

1 голос
/ 02 декабря 2014

Enter Swift: https://github.com/facebook/swift/

git clone https://github.com/facebook/swift
cd swift ; mvn package

В частности, swift2thrift. Разметьте ваши классы как здесь: https://github.com/facebook/swift/

и запустить:

MY_CLASSES=$HOME/ExampleService/target/ExampleService-1.0-SNAPSHOT.jar  # just an example
cd ~/ExampleService ; mvn compile package && java -cp ~/swift/target/swift2thrift-generator-cli-0.15.0-SNAPSHOT-standalone.jar:$MY_CLASSEScom.facebook.swift.generator.swift2thrift.Main -package net.mycompany ExampleService -map ExampleService path/to/base.thrift -namespace py mycompany.thrift -namespace java net.mycompany.thrift -namespace cpp mycompany

выводит Thrift .idls для существующих классов Java.

Также см .: Может генерировать файлы .thrift из существующих интерфейсов java / scala и типов данных?

0 голосов
/ 27 января 2011

Не из библиотеки напрямую;Thrift генерирует свои собственные классы и некоторый код проверки, чтобы оба «конца» (клиент / сервер) могли взаимодействовать без ошибок.Вы должны написать код для сопоставления ваших бизнес-объектов с экономными объектами.

...