40
回答
我就搞不明白开发java web的,你们是怎么解决重新编译一次花费几分钟,不重新编译就看不到修改效果的?
利用AWS快速构建适用于生产的无服务器应用程序,免费试用12个月>>>   
特别是传统的MVC网站开发,页面效果需要刷新才看得见,刷新又要重新编译重启服务,光等那几分钟我头都炸了。


难道在php开发中改改程序再刷刷页面,这样不是个好习惯吗?


暴露了,我是前后端都写的全栈打杂攻城狮,当然只写后台服务,java这种改一次编译一次没有缺点,但web开发有时候一天要改改刷刷几百次甚至几千次啊。
举报
gaicitadie
发帖于1年前 40回/3K+阅
共有40个答案 最后回答: 1年前

改改刷刷的结果导致老板没事就改页面,所以php的大部分时间都浪费在套模板上了,套了10年模板,回头一看,白茫茫大地一片真干净。因为人们都热衷做表面功夫,在同时选择一个复杂和简单的任务面前,大部分人愿意选择容易简单的工作而逃避复杂有难度的工作 (产品经理最好这口,这个好邀功)

而java需要编译的结果导致老板如果没事改页面,最后发现这个活需要时间,也就是对老板来说这是有cost的(机器编译的时间也是要算给程序员发工资的),所以被迫把精力放在更多的分析需求上面,因为较少次数地改需求比频繁改页面更加省成本,对老板来说,当然喜欢成本少的处理方式

--- 共有 2 条评论 ---
yak回复 @eechen : 不是所有老板都象你一样脑残,也不是所有需求都是靠天天套模板能解决的,你看12306 就一直不换成php 脑残肯定想不通了 1年前 回复
eechen 什么谬论,真是这样,老板直接要求换成PHP不就得了,哈哈哈。 1年前 回复

改HTML,JSP之类是可以热部署不需要重启服务器的,可能是你的设置不对。

改Java类也有工具和方法可以支持热部署,不过好用的要钱(比如jrebel)。

好习惯是后台代码有足够的单元测试然后再到服务器上跑,这个时候基本上只需要修改前台代码。

改改刷刷确实不适合Java...

--- 共有 4 条评论 ---
RickyLi回复 @eechen : class文件的热加载早已实现,只是你不知道而已! 1年前 回复
eechenJava 类是通过 JVM 加载的,某个类的 class 文件在被 classloader 加载后,会生成对应的 Class 对象,之后就可以创建该类的实例。 默认的虚拟机行为只会在启动时加载类,如果后期有一个类需要更新的话,单纯替换编译的 class 文件,JVM 是不会更新正在运行的 class。 1年前 回复
eechenJRebel是一款商业付费的JVM插件,它再强,也绕不过JVM的限制,目前的 JVM 只能实现方法体的修改热部署,对于整个类的结构修改,仍然需要重启虚拟机,对类重新加载才能完成更新操作。 1年前 回复
gaicitadie小项目、one man那种,前端、后端、测试都一个人完成的那种,改改刷刷是最有效率的方式啊 1年前 回复

引用来自“灵溪小鱼”的评论

然而java web比php值钱就因为他要编译

现在我关注的重点不是它值钱不值钱,是怎样让java开发能像php那样方便,随时改随时刷,刚才想到可以让js、css这些静态文件走nginx,但是html模板还是得经过java web server

--- 共有 2 条评论 ---
kerneler一套安装了这个cms的服务器 理论上最多可以创建 21亿个站点 也能解决java网站部署成本高的问题 1年前 回复
kerneler看看这个产品应该会对你有帮助,你可以完全在线开发几个自主风格的站点 http://www.publiccms.com/ 开发语言是java 但是 也可以制作出类似 php风格的站点 比如 http://cms.publiccms.com/index.php 1年前 回复

java 只是个工具,看你怎么用

我的java项目,开发起来和php一样,不用重新编译、重新启动什么的

--- 共有 1 条评论 ---
gaicitadie麻烦告知是用的什么框架 1年前 回复
顶部