GVKun编程网logo

可以从现有的Java / scala接口和数据类型生成.thrift文件吗?(scala可以调用java类吗)

13

在本文中,我们将给您介绍关于可以从现有的Java/scala接口和数据类型生成.thrift文件吗?的详细内容,并且为您解答scala可以调用java类吗的相关问题,此外,我们还将为您提供关于asp.

在本文中,我们将给您介绍关于可以从现有的Java / scala接口和数据类型生成.thrift文件吗?的详细内容,并且为您解答scala可以调用java类吗的相关问题,此外,我们还将为您提供关于asp.net-mvc – 我们可以从现有数据库的选定表中Scaffold DbContext吗?、asp.net-mvc – 我可以在MVC区域内部署javascript文件吗?、java – 从现有的CXF休息服务生成wadl、java 开发人员写好了 thrift 接口,C# 开发人员该如何调用 thrift 接口获取数据?的知识。

本文目录一览:

可以从现有的Java / scala接口和数据类型生成.thrift文件吗?(scala可以调用java类吗)

可以从现有的Java / scala接口和数据类型生成.thrift文件吗?(scala可以调用java类吗)

有没有简单的方法可以采用现有的Java / scala数据类型和API接口并生成相应的.thrift文件?使用Thrift生成 服务器
数据结构会过度侵入,因为它会导致以下后果:

  • 我无法注释我的数据结构(例如,用于XML,JSON,休眠持久性等)
  • 这种模式与其他想要拥有或需要修改我的源文件的序列化框架相冲突。

结果,它看起来像是节俭,迫使自己成为服务器的专有持久性格式,除非,也就是说,我围绕Thrift或其他处理这些数据结构的持久性格式创建了一个数据编组包装器(休眠,
Jackson,scala
BeanProperty,…)。但是,这违背了诸如节俭之类的自动化数据编组工具的目的,并直接导致易于出错的世界,即必须维护相同但分开的接口和数据结构(=浪费了有才华的工程师时间和精力)。

我对Thrift自动生成客户端代码完全满意。但是,我(强烈)觉得我需要自由地编辑服务器在API中处理的数据结构。

答案1

小编典典

您可以使用Swift。

使长话短说;
注释您的类和接口(用Thrift的话来说就是结构和服务)。然后,您可以运行Swift的客户端/服务器代码,也可以使用swift2thrift生成器生成等效的IDL,并使用Thrift编译器生成客户端(后者是我建议的描述对象)。

一旦完成创建可在TServlet中与常规TProtocol /
TTransport对象一起使用的TProcessor的操作,请在servlet的init()中执行以下操作:

protected void addProcessor(String name, Object svc) {    ThriftCodecManager codecManager = new ThriftCodecManager(        new CompilerThriftCodecFactory(false)    );    List<ThriftEventHandler> eventList = Collections.emptyList();    ThriftServiceProcessor proc = new ThriftServiceProcessor(codecManager, eventList, svc);    this.processors.put(name, proc);    this.multiplex.registerProcessor(name, NiftyProcessorAdapters.processorToTProcessor(proc));}

此示例中的Multiplex实例变量是TMultiplexedProcessorfrom 的实例libthrift.jar

然后只需在您的doPost()中执行以下操作:

@Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response)        throws ServletException, IOException {    getServletContext().log("entering doPost()");    TTransport inTransport = null;    TTransport outTransport = null;    try {        InputStream in = request.getInputStream();        OutputStream out = response.getOutputStream();        TTransport transport = new TIOStreamTransport(in, out);        inTransport = transport;        outTransport = transport;        TProtocol inProtocol = getInProtocolFactory().getProtocol(inTransport);        TProtocol outProtocol = getOutProtocolFactory().getProtocol(outTransport);        if (multiplex.process(inProtocol, outProtocol)) {            out.flush();        } else {            throw new ServletException("multiplex.process() returned false");        }    } catch (TException te) {        throw new ServletException(te);    } finally {        if (inTransport != null) {            inTransport.close();        }        if (outTransport != null) {            outTransport.close();        }    }}

仅供参考-TJSONProtocol不适用于0.14之前的Swift版本,因此如果您需要使用TJSONProtocol,则需要从源代码进行构建。

另外… Swift强制标记您的结构final
JPA规范说实体不能final…似乎无论如何都可以与Eclipselink一起使用,但是YMMV

asp.net-mvc – 我们可以从现有数据库的选定表中Scaffold DbContext吗?

asp.net-mvc – 我们可以从现有数据库的选定表中Scaffold DbContext吗?

与以前版本的Entity Framework一样,Entity Framework Core中是否可以仅对现有数据库的选定表进行反向工程,以便从中创建模型类. This official ASP.NET site反向工程师整个数据库.在过去的 as shown in this ASP.NET tutorial中,如果您选择使用旧的EF,您只能对所选的表/视图进行反向工程.

解决方法

可以通过使用具有多个参数-t(-table)的 dotnet ef dbcontext scaffold命令来解决该问题.它允许指定导入所需的所有表(scaffolded).该功能最初描述为 here.

asp.net-mvc – 我可以在MVC区域内部署javascript文件吗?

asp.net-mvc – 我可以在MVC区域内部署javascript文件吗?

我在区域内有我的js文件,我无法访问它们.当我将它们移到MVC区域之外时,我可以访问它.

我尝试过以下方法:

> js文件的不同命名 – 不能解决问题
>检查它们是否存在于服务器上 – 它们确实存在
>直接从服务器上的IIS管理器中访问文件 – 它们无法打开并返回未找到
>直接从服务器上的IIS管理器中访问相同的文件,但是当文件位于脚本目录中时 – 它们在浏览器中打开
>使用路由检查器 – 当我尝试访问文件时,它不会打开路由调试,而只是说“404”

这有效:

<script src="@Url.Content("~/Scripts/jquery/_Roles.js")" type="text/javascript"></script>

这不起作用:

<script src="@Url.Content("~/Areas/Administration/Scripts/Roles/_Roles.js")" type="text/javascript"></script>

在Areas文件夹下阻止脚本的文件会有什么不同吗?

解决方法

为什么要将您的脚本放在Areas部分?我有一个带有区域的mvc站点,但我仍然将我的脚本保存在Scripts文件夹中.

我的建议是重新考虑你以这种方式组织内容的原因,并考虑将所有外部.js文件移动到Scripts文件夹.

java – 从现有的CXF休息服务生成wadl

java – 从现有的CXF休息服务生成wadl

我使用CXF实现了JAX-RS服务.我怎样才能生成wadl?或者有没有类似于 http://path.to.your/restapp/application.wadl的球衣?有没有像wsdl,java到wsdl的maven插件?我找到了找不到的答案.

解决方法

如果您使用的是最新版本的CXF,只需使用?_wadl参数点击该服务即可.

java 开发人员写好了 thrift 接口,C# 开发人员该如何调用 thrift 接口获取数据?

java 开发人员写好了 thrift 接口,C# 开发人员该如何调用 thrift 接口获取数据?

java 开发人员写好了 thrift 接口,C# 开发人员该如何在 VS 中调用 thrift 接口获取数据?

关于可以从现有的Java / scala接口和数据类型生成.thrift文件吗?scala可以调用java类吗的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于asp.net-mvc – 我们可以从现有数据库的选定表中Scaffold DbContext吗?、asp.net-mvc – 我可以在MVC区域内部署javascript文件吗?、java – 从现有的CXF休息服务生成wadl、java 开发人员写好了 thrift 接口,C# 开发人员该如何调用 thrift 接口获取数据?等相关知识的信息别忘了在本站进行查找喔。

本文标签: