仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 426|回复: 14
打印 上一主题 下一主题

[学习教程] JAVA网页设计完成加强的java class hotswap (三) 办理计划仓酷云

[复制链接]
小女巫 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:23:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
到时我们不用学struts,不用学spring,不用学Hibernate,只要能把jsf学会了,完全可以替代所有的框架,包括AJAX,都知道AJAX并不是新技术,虽说我没深入学习jsf但我认为jsf应该已经能通过其它技术替代AJAX,实现无缝刷新。这段工夫瞎忙,这篇文章没有写下往,被人小看是宦官文,忧郁,只好抽工夫持续。
----------------------------
上回说道我们要完成类字节码的静态装载,一个思绪就是不让这个类真实的被装载进假造机,由于一旦真实的装载出去了,就没法对其举行布局上的修正,这些在前文中已提到过了。那怎样才干不让类装载出去可是又能利用它呢?
这看起来像一个悖论,我们要在使用是利用一个类,初始化它,机关它的实例,挪用办法,等等,可是又不克不及装载这个类,这不忽悠人么?
临时不论怎样做到,先看看成绩自己。我们要办理的成绩就是当一个类(比方Worker)已在假造机内里利用了,好比有程序Test援用到了Worker,这时候候,Worker修正过了(Work),字节码更新过了,我们必要在不从头启动jvm的情形下,让Test新倡议的挪用都利用到Work的代码。我们怎样处置呢?
我们的计划:假造机起来的时分,在Test里,发明(TODO1)要利用Worker类,我们装载一个WorkerVersion1给Test利用,当发明(TODO2)Worker类的字节码变更了,我们必要冷静的装载(TODO3)一个WorkerVersion2出去,给Test利用,同时必要不让Test晓得有这个变更。
这几个TODO办理失落了,我们的成绩也差未几了。
*TODO1,监控假造机装载类
这个不难,我们用agent往enhance一下java.lang.ClassLoader,修正findClass/findResource等办法,到场我们本人的反省和装载逻辑,然后redefine这个类便可,没有成绩
*TODO2,监控类字节码变更
在装载这个类的时分,纪录下这个类的来历,比方来自某个目次,来自某个jar,然后在必要的时分反省这个资本是不是改动,假如改动了就倡议从头装载的动静便可,也没啥成绩
*TODO3,从头装载一个变更了的类
这里才是技能的中心,我们在装载类的时分,利用字节码剖析工具(比方asm),间接找到字节码,修正它,天生一个带版本号的类名,比方将Worker修正成Worker_V_1,前往给下面利用,当发明类有修正的时分,我们就装载一个Worker_V_2出来,给下面利用。

什么时候上述的三种开发工具能和三为一,什么时候java的竞争力才更强,才有机会拉拢更多的程序员投入到对java的开发上,因为到时的开发工具将会比.net网页编程的更简单。还有一点也很关键,什么时候java推出的jsf能成为真正意义上的标准。
小妖女 该用户已被删除
沙发
发表于 2015-1-20 23:47:25 | 只看该作者
Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)
小女巫 该用户已被删除
板凳
 楼主| 发表于 2015-1-25 21:15:34 | 只看该作者
如果要向java web方向发展也要吧看看《Java web从入门到精通》学完再到《Struts2.0入门到精通》这样你差不多就把代码给学完了。有兴趣可以看一些设计模块和框架的包等等。
灵魂腐蚀 该用户已被删除
地板
发表于 2015-2-4 01:42:32 | 只看该作者
吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧
若相依 该用户已被删除
5#
发表于 2015-2-5 00:32:40 | 只看该作者
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
柔情似水 该用户已被删除
6#
发表于 2015-2-6 11:40:26 | 只看该作者
是一种使用者不需花费很多时间学习的语言
再现理想 该用户已被删除
7#
发表于 2015-2-7 10:04:13 | 只看该作者
是一种使网页(Web Page)产生生动活泼画面的语言
莫相离 该用户已被删除
8#
发表于 2015-2-10 00:23:34 | 只看该作者
是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言
分手快乐 该用户已被删除
9#
发表于 2015-2-10 01:24:44 | 只看该作者
是一种为 Internet发展的计算机语言
若天明 该用户已被删除
10#
发表于 2015-2-13 17:45:28 | 只看该作者
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
再见西城 该用户已被删除
11#
发表于 2015-3-4 00:00:32 | 只看该作者
在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
乐观 该用户已被删除
12#
发表于 2015-3-10 04:45:12 | 只看该作者
是一种突破用户端机器环境和CPU
活着的死人 该用户已被删除
13#
发表于 2015-3-10 19:12:32 | 只看该作者
是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言
不帅 该用户已被删除
14#
发表于 2015-3-17 09:10:34 | 只看该作者
接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。
蒙在股里 该用户已被删除
15#
发表于 2015-3-24 05:15:31 | 只看该作者
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-15 05:22

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表