tp框架 db::name_玩! 框架:为什么我会爱上它

tp框架 db::name

前一段时间,我是房地美,房地美,Foreclosure.com和HUD等公司在房地产市场上进行一些大型部署的技术负责人。 我们运行的是您可能熟悉的传统企业Java堆栈-Spring , Hibernate ,Solr等。花了几年时间,但我们建立了一个非常好的系统。 它表现良好,但深入到内部,我觉得开发没有应有的生产力。 我还注意到,整个开发过程并不像以前那样有趣。

当然,我听过很多有关Rails,Django和最近的Node.js的精彩故事; 实际上,围绕这些技术有一些引人入胜的故事。 我最终将大量的业余时间用于这些技术,而实际上,我非常开心地用它们来构建一些小型应用程序和原型。 但是第二天早上我会醒来,去上班,面对另一个重要的重要项目,然后回到我尝试过的事实:Java。

其中一个项目是房利美的在线报价管理系统,该系统在第一个月就收到了10亿美元的报价。 在我看来,我无法为这种重要项目的团队引入一种全新的语言,尤其是像Python或Ruby这样的脚本语言。 从个人经验来看,如果没有类型检查,我很难管理一个大型项目。 我对Java领域的选择并不十分满意,因此我基本上处于困境与困境之间,而与其他选择(例如Grails,Spring Roo等)相比,我仅取得了非常适度的成功。那时,我并不想放弃Java作为一种语言,尤其是因为它的可靠性而逐渐成为我信任的JVM。

然后我遇到了Play ; 对我来说一见钟情。 我很想告诉您我是如何玩到Play的,只需在Twitter( @_felipera )上关注我。 一旦决定乘车兜风,我马上就起来跑步! 使用一个简单的命令“ play new”,就定义了整个应用程序结构。 然后再执行另一个简单的命令“ play run”,就可以开始聚会了! 我感到立即松了一口气,因为我不需要拿出所有这些XML文件,Spring的applicationContext.xml,web.xml,Hibernate的HBM文件,然后就可以弄清楚如何将它们连在一起! 即使在使用这些技术多年后,我仍然不得不从某个地方复制并粘贴它们。 我永远都不记得所有这些语法。

对我来说,另一个明显的吸引力是Play能够即时重新加载类而无需重新部署整个应用程序或重新启动服务器。 我想我们都知道在应用程序上工作,更改类,执行maven或ant deploy是什么感觉……等到打包战争之后……复制到deploy目录中……等待servlet上下文被破坏……然后再等待一些时间来部署应用程序。 然后...最终部署了应用程序之后,我们打开浏览器,进入开发环境,然后出现错误! 问题可能像将单个字符放到某处一样简单。 不管问题是什么,我们仍然需要重新进行整个过程。 到第三次或第四次发生时,开发人员将在Slashdot,Hacker News或他/她最喜欢的网站上隔离。 Play可以很好地处理课程重载; 您真的不必重新启动服务器!

Play的无状态模型也吸引了我,该模型“无共享” HTTP体系结构。 我们中的许多人都不幸地开发了,甚至更糟糕的是,它支持基于Stateful模型构建的基于J2EE的应用程序。 管理状态,集群安全的缓存对象,HTTP会话确实非常困难,尤其是对于那些Enterprise Java Bean(EJB)以及附加对象的整个概念而言。 Play不会在每个节点之间共享状态,从而简化了群集的管理,它提供了可感知群集和群集安全的缓存解决方案。

伙计,我可以整夜继续前进,但是我会避免让我发疯! 简而言之, Play是用于现代Web应用程序的完整堆栈框架,具有基于NIO的开发和生产服务器,对MVC的完全支持,持久性引擎,完全集成的测试框架(单元测试和功能测试),强大的异步Web服务客户端,基于异步的作业管理器,可通过模块使用的多个扩展,通过其插件机制,依赖项管理,验证框架以及WebSockets等更高级的功能支持对框架行为的完全自定义。

我不知道你们是否知道,但是我是个老人。 我从事Web应用程序开发已有15年左右的时间。 并且在大多数情况下,具有永恒的激情。 但是Play重新振兴了我对重新开发Web应用程序的热爱。

参考: 我为什么爱上游戏! 框架? 从我们的JCG合作伙伴 Felipe Oliveira在“极客完全加入”博客中获得。

相关文章 :
  • 简单的Twitter:Heroku上的Play框架,AJAX,CRUD
  • RabbitMQ播放模块! 构架
  • Spring MVC开发–快速教程
  • SmartGWT入门,提供出色的GWT界面
  • Vaadin附加组件和Maven
  • Java教程和Android教程列表

翻译自: https://www.javacodegeeks.com/2011/10/play-framework-why-did-i-fall-in-love.html

tp框架 db::name

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/358801.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

自动化专业向往硬件方面靠,有什么好的建议?

我的建议是: 有能力考研就先考研,考不上可以选择就业,学历还是很重要的,门槛。自动化可以找一些相关的知名企业,按照他们的招聘要求要求自己,往这个方法发展,垂直领域研究很深,你就是大佬和专家。 有个帖子讲的挺全的,虽然是文章:自动化人生 下面是理论内容,我直接…

java 内存数据库 sql_ssm+redis +Maven用于内存数据库 (No Sql)入门demo

最近一直是以自学的状态,想把自己学习到的知识分享给大家 ,也是好久没有写博客了。废话不多说 ,直接上代码。本次项目是 用maven 管理的.开发工具 eclipse在pom.xml文件中,中关于redis的配置:org.springframework.data…

Fitness - 05.23

倒计时222天 运动40分钟,共计8组,4.2公里。拉伸10分钟。 每组跑步3分钟(6.5KM/h),走路2分钟(5.5KM/h)。 终于赶在姨妈前完成第3周的跑步训练了,可喜可贺~~ 下周预计要休息了orz... 祈…

Linux下编译安装以及配置PHP环境

安装准备 依次执行下面命令,不存在的就搜差不多的就行,下面安装的都是后面安装环境可能需要用上的依赖,不管37是不是21,复制粘贴就是了 Ubuntu安装: sudo apt-get update sudo apt-get install gcc autoconf openssl libssl-dev curl libcurl4-gnutls-de…

开发SPI时不要犯这个错误

您的大多数代码都是私有的,内部的,专有的,并且永远不会公开。 在这种情况下,您可以放轻松–您可以重构所有错误,包括那些可能导致API更改中断的错误。 但是,如果要维护公共API,则不是这种情况。…

有什么好一点的方法读jdk源码吗?

建议是: 1:找相关的书在看相关源码时应该对程序有整体了解,比如看虚拟机时至少要知道:垃圾回收算法,Java内存布局,class文件格式,加载连接的过程...很多人看源码一点头绪都没有,就是因为不了解对应的模块是干嘛的(比如Ja

给女朋友道歉的java代码_跟女朋友道歉的话,高情商的哄人句子

女朋友生气了,而且很严重。在这种情况下,不知道做什么挽回她。第一诚实的道歉可以缓和彼此紧张的气氛。重要的是,道歉完就需要说一些话语去哄她,至于怎么哄又是一个技术性的问题了,下面一起来看看跟女朋友道歉的话,高情…

使用Myeclipse完成Hibernate的逆向工程

Hibernate的开发流程一般有两种: 1、由Domain object > mapping > db 2、由db开始,用工具生成生成mapping 和Domain object。 在实际的开发过程中,涉及的表太多了,一个一个的写java实体类很费事费时的。Myeclipse提供了一个…

面试用涉及到的jvm常见的面试题(一)

什么是jvm? JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。 引入Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译。Java语言使用Java虚拟机…

kali安装docker(有效详细的教程)

前记: 博主有着多次安装docker的丰富经验,曾经为了在kali成功安装docker花费不少时间。在kali2016.3一直到最新的kali2019.4都通吃!所以跟着下面的步骤走,绝对不会出错。(该机子此前没装过docker,并且配置好…

java中 下列不合法的语句_在Java中,下列( )是不合法的赋值语句。_学小易找答案...

【多选题】一个国家一定时期的商品销售额属于?【单选题】某厂2007年完成产值200万元,2008年计划增长10%,实际完成231万元,超额完成计划?【多选题】我国GDP每增长1%,相当于人均增加收入70多元;全国将增加60—80万个就业岗位。这里用到的指标有?【单选题】轴的最小实体尺寸为(…

最大流EK和Dinic算法

最大流EK和Dinic算法 EK算法 最朴素的求最大流的算法。 做法&#xff1a;不停的寻找增广路&#xff0c;直到找不到为止 代码如下&#xff1a; Frosero #include <cstdio> #include <iostream> #include <cstring> #include <queue> #define INF 0x3f3…

某大厂JVM常见面试题(二)吐血整理

什么是JVM? JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。 引入Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译。Java语言使用Java虚拟机…

_stat64获取错误_Log4j,Stat4j,SMTPAppender集成–汇总错误日志以发送过多电子邮件...

_stat64获取错误我们的开发团队希望在生产系统出现问题时尽快得到通知&#xff0c;这是一个每天为成千上万的客户提供服务的关键Java Web应用程序。 想法是让它在出现太多错误时向我们发送电子邮件&#xff0c;这些错误通常表示数据库&#xff0c;外部Web服务有问题&#xff0c…

Kali2021修改更新源

本次演示三种环境更换更新源 Xfce4版本 KDE版本 命令行版本 更新源 #中科大 deb http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib deb-src http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib

java面试中jvm执行子系统详细分析(三)

什么是jvm? JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。 引入Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译。Java语言使用Java虚拟机…

java中菜单分几级_JavaWeb三级菜单分类查询详解

废话不多说&#xff0c;直接贴代码&#xff1a;dao层代码&#xff1a;mapper&#xff1a;ListselectByParentId(Integer id);mapper.xmlselectfrom easybuy_product_categorywhere parentId #{parentId,jdbcTypeINTEGER}Test:import cn.hd.entity.ProductCategory;import cn.h…

使用Javaslang进行Java 8中的函数式编程

我们非常高兴地在jOOQ博客上宣布一个客座帖子&#xff0c;该帖子由HSH Nordbank的高级软件工程师&#xff0c;三个孩子的父亲&#xff0c; Daniel Dietrich撰写。 他目前作为项目负责人和首席开发人员为金融产品创建定价框架。 除工作外&#xff0c;他还对编程语言&#xff0c…

HFS远程命令执行漏洞复现

漏洞程序下载地址:Http File Server 这里说一下&#xff0c;在Windows server 2003中复现时&#xff0c;我直接使用Administrator用户登录&#xff0c;然后复现&#xff0c;未出现权限问题。再Windows 10中尝试复现时发现权限不足&#xff0c;需要以管理员权限执行漏洞程序。 运…

HTML标签速查表

有时候,学习的前端的标签太多,容易记不牢,这里整理一份标签速查表,便于查阅。不区分html或html5.