在这篇文章中,我想向大家介绍 Julien Dubois,JHipster的项目负责人。

-
嗨,Julien。你能自我介绍一下,并告诉我们一些你的开发经验吗?
嗨,Vlad,我是Julien Dubois,我是一名软件工程师,已经有20年的经验,主要专注于Java和Web开发。
我参与了开源和Java社区:我写过一本关于 Spring框架 的书,为许多不同的开源项目做出了贡献,并在很多会议上发表过演讲。
目前,我是 Ippon Technologies 的首席创新官,这是一家在法国、美国和澳大利亚设有办事处的Java咨询公司。我也是 DataMC 的CTO,这是一家专注于大数据解决方案的风险投资支持的初创公司。
-
你是JHipster的团队负责人。你能告诉我们这个开源框架的目标是什么吗?
这一切都是为了提供一个优秀的开发者体验:我们整合了许多酷炫的技术,如Spring Boot、Hibernate、AngularJS和Docker,并自动执行你通常需要手动完成的任务。最终,你节省了大量的时间,你的项目质量也更高。
当然,我们提供了出色的Hibernate支持,甚至有一个 在线IDE 来帮助你生成复杂的数据模型。
另一件很棒的事情是我们拥有一个庞大的社区,很多人和公司都在贡献。这确保了我们拥有大量的想法、补丁和最佳实践,这是任何人都无法独自完成的。
-
JHipster使用Hibernate ORM进行数据。你为什么选择Hibernate而不是其他JPA提供者?
在Ippon Technologies,我见过很多项目,可能在过去的5年里超过50个。我认为80%的人使用JPA和Hibernate一起,其余的人要么有一些自定义的JDBC代码,一个专有框架(如Jalo,它是Hybris的一部分),或者一个开源替代方案(如MyBatis)。
但是,我已经很久没有看到有人使用其他的JPA提供者了。几年前,我见过一个项目想要测试Battoo JPA,但那个实现已经不再维护了。
所以,对于JHipster,我们使用Hibernate,因为它是最广泛使用、维护得最好的实现,而且我相信Red Hat将是这个项目的优秀赞助商。
-
我们始终重视用户的反馈,所以你能告诉我们你希望我们改进什么,或者有没有应该支持的新功能吗?
我对JHipster中Hibernate的主要问题是启动时间。在我的笔记本电脑上,启动一个Hibernate应用程序需要10秒钟,而MongoDB应用程序只需要7秒钟。这全部时间并不是Hibernate本身造成的,因为还有连接池和二级缓存需要启动,但整个堆栈在编码时有点重。
在生产模式中,我们也需要启动非常快的功能,这绝对是我最大的问题。例如,当使用与Docker的微服务或使用Heroku或Cloud Foundry这样的云服务提供商时,这确实与可丢弃性(12要素的第9个要素)相悖。
所以我好奇的是,我们是否可以有一个选项,让Hibernate快速启动而不进行任何检查,然后在出现任何错误时快速失败,比如一个错误编写的查询。
感谢Julien花费时间。能在这里见到你是一种巨大的荣幸。要联系Julien,你可以通过Twitter关注他。