作为一位Java程序员,如果您没有接触过开源软件、项目或框架的话,恐怕有些不可思议。轰轰烈烈的开源运动起源于Linux操作系统,Apache基金会在其中扮演了中流砥柱的角色,业界巨擘SUN,IBM,BEA和Oracle等公司的积极参与,使得声势浩大的开源运动成为软件开发领域势不可挡的力量。2001年11月,IBM向Apache基金会捐献出Visual Age for Java,这个看似穷途末路的产品经众多高手的改造,演变为辉煌一时的Eclipse,直接击败了不开源的JBuilder,让做编译器起家的Borland公司几乎关张大吉。Eclipse这个产品如此经典,以至于微软的Visual Studio都得向它学习。在Apache Harmony的围追堵截下,Java的发明者Sun公司一看势头不妙,于2006年宣布Java开源,随后又公开了其旗舰级产品Solaris的源代码。今年1月,开源的死对头、冷酷自私的微软也不得不在MS-RL协议下公开.Net的源代码。但是,在这如火如荼的开源运动中,我们中国的程序员又有多少贡献呢,我们开创了哪些框架、项目和产品,为开源界添砖加瓦呢?以笔者短浅的目光看来,我们对开源界贡献的东西恐怕很少,能够与国外经典开源项目一较高下的,少之又少矣!
作为一名中国的程序员,咱们能没有遗憾吗?为什么经典的Apache Web Server不是中国人写的;为什么Linus Torvalds在大学时代就写出Linux并振臂一呼,应者云集;为什么JBoss能与巨无霸式的Websphere相抗衡;为什么MySQL能在Oracle和SQL Server的夹击下发展并壮大……?如此等等问题,在遗憾之余,我想我们应该花点时间好好思考一下,中国的软件产业怎么了,中国的程序员又怎么啦?
首先,我们要敞开心胸,拥抱开源(Open to Open Source)。这重境界我们大家都能做到,拿来主义嘛,谁人不会。当我们的项目需要数据库时,就去下载一个免费MySQL;需要IDE时,去下载Eclipse;需要版本控制工具时,就去下载CVS;需要写搜索引擎时,Lucene可能是我们的最爱;当我们开发J2EE Web应用时,Struts/JSF加Hibernate/iBATIS再加上Spring或许成为我们的首选架构。但是,我们绝大部分程序员都停留在这个层次上,大家下载之后,看看文档介绍,安装、配置并能运行,就以为万事大吉,一切顺利。偶尔遇到一些问题,去Google一搜,答案立马可得。
其次,我们要深入开源,了解开源(Dig into Open Source)。要达到这个层次,就有些难度了。我们不但要知其然,还要知其所以然。“知其所以然”的最好办法就是下载源代码,仔细研读,揣摩并领会源代码的精义,看看这些经过诸多高手修改的源代码究竟藏有什么玄机,我们能从其中学习到哪些设计思想及设计模式,能复用其中哪些源代码,人家运用了哪些软件管理思想把这些来自世界各地程序员的劳动汇集成一个产品,代码架构如何,软件配置管理又是怎样进行的……,等等等等,我们从源代码中学习的东西太多了。在阅读源代码时,我们要多问自己几个为什么,这样就会收获更多。
再次,我们要融入开源,贡献开源(Get involved in Open Source)。当我们彻底理解该项目源代码后,我们应发挥一下“人人为我,我为人人”的思想,或结合您的实际需要,或结合您的新想法,或针对Mail lists上的问题,对该开源项目加以改进和创新,并把自己的代码贡献出来,让大家评估。当然,如果您有好的想法,您完全可以创建自己的开源项目,Apache基金会中众多的开源项目不都是我们广大程序员一手创建的吗?但是,在创建新开源项目时,切忌不要重新发明轮子。
还有,请把test目录也加入到源代码中,方法是在Eclipse中右击”test”目录,然后在弹出菜单中选择“Build path”à”Use as Source Folder”,之后我们会看到test目录上就多了个源代码的符号,如上图所示。
3.5在Eclipse中运行Tomcat。请找到Tomcat的启动主类org.apache.catalina.startup.Bootstrap,右击这个类,在弹出菜单中选择“Run As…”à”Open Run Dialog…”,然后在弹出的“Run”窗口中填入程序运行参数“start”和JVM运行参数catalina.home,如下面窗口所示:
相关推荐
NULL 博文链接:https://pirate4444.iteye.com/blog/2076706
先看我的github,https://github.com/xxxtai/tomcat-8.5.5-sourcecode
tomcat9 源码学习,欢迎大家下载,官网下载会出现下载不了的情况
tomcat的源码解析资料,加上tomcat的pdf解析中文版的,tomcat的源码。 挺不错的资源,大家可以学习下。
tomcat源码学习,可以结合深入剖析tomcat来学习,感觉这本书挺好的,值得深入
tomcat5 源码学习,深度剖析tomcat一书的指定tomcat版本,随着tomcat版本的升级,内容发生 了变化,但为了读懂书籍,还是得使用老版本得源码,欢迎大家下载,官网下载会出现下载不了的情况,我主页有tomcat4-tomcat9...
Tomcat源码学习(一) 源码编译和导入Eclipse ,建议初学者参考
文件描述: 1.tomcat源码文件 2.tomcat程序文件 ...5.一个tomcat源码在eclipse上运行的java工程 作用: 1.用于学习tomcat源码和了解tomcat运行机制 2.学习如何修改tomcat源码后如何重新编译,打包。
tomcat4 源码学习,深度剖析tomcat一书的指定tomcat版本,随着tomcat版本的升级,内容发生 了变化,但为了读懂书籍,还是得使用老版本得源码,欢迎大家下载,官网下载会出现下载不了的情况,我主页有tomcat4-tomcat9...
Tomcat源码学习!
tomcat8 源码学习,欢迎大家下载,官网下载会出现下载不了的情况,我主页有tomcat5-tomcat9所有版本源码,之前去官网下载,发现每次都下载不了,后来主动收集了全版本的源码,供大家学习。
tomcat
这个是一个Tomcat源码,喜欢代码分析的课可以参考这个源码进行学习,网上有很多的源码导入方式,可以参考网上的源码导入方式来进行Tomcat源码学习
学习tomcat源码+英文《How Tomcat Work》和每一章的相关项目+tomcat6源码依赖jar+还有学习tomcat的一点笔记
主要介绍他tomcat的原理 tomcat的源码的主要部分的介绍
tomcat6.0源码 大家可以用来开发和学习。。
一步步教你如何下载导入编译调试运行tomcat源码 非常详细 来源于网络博客 建议大家去看看
SSM + MySQL5 + Tomcat在线课程学习网站源码 SSM + MySQL5 + Tomcat在线课程学习网站源码 SSM + MySQL5 + Tomcat在线课程学习网站源码 SSM + MySQL5 + Tomcat在线课程学习网站源码 SSM + MySQL5 + ...
TOMCAT的线程池源码封装,有想学习TOMCAT的线程池源,或者觉得JDK的线程池源码效率不高,可以下载此代码
自己开发的Tomcat服务器,需要深入理解Tomcat源码的同学可以下载它学习之,开发出来的Tomcat支持JSP、Servlet