工作到现在也三年多了,现在总结下工作过程中使用的框架和技术,开发工具以及项目结构的变化。
这里并不会去详细的去叙述哪一方面,只是简单的描述下。好了,开始。
组合1、开发工具:myeclipse; 采用框架:无 ;采用jdbc访问数据库;servlet+jsp+el+jstl显示数据,偶尔使用点js;采用mvc开发模式
其实这种写法写起来是挺累的,而且很容易出现问题,就像jdbc,当时自己封装的一个非常垃圾的DBUtil,现在看起来真是非常简陋。但我认为这一组合(myeclipse可忽略)对于初学者来说都应该去弄熟练了,这些基础对于以后的发展都有很大的好处。记得当时我和一个伙计就是用这些东西,做了一个系统,每个人还转了2000块钱。这些东西学习还行,公司中工作使用不推荐。
组合2、开发工具:eclipse;采用框架:spring+hibernate+struts2;依然采用jsp+el+jstl显示数据,当然也加上了一个OGNL,依然采用mvc开发模式,创建一个项目美分为三层。并且前端开始使用jquery,ajax请求也多了起来。
这种组合相对上面来说,开发起来轻松多了,这也是将点的三大框架了,无论是从数据库访问还是页面显示,以及对java对象的管理,都极其的方便了。但hibernate用起来好用,用的好却不是那么容易的。
以上两种组合主要是在大学期间使用的,对于jar包的依赖都是通过手动的添加进行管理。
组合3、开发工具:eclipse;采用框架:spring+mybatis+spring mvc;页面显示采用jsp或freemarker;采用了maven进行依赖管理,采用mvc开发模式,但这些层已经不都聚集在一个项目中了,而每一层都作为一个单独的module,这样项目结构非常清晰。这一阶段项目中大部分页面的数据都已经为ajax的了,并且前端采用了js模板引擎,如:arttemplate,这样避免了手动拼html的麻烦事儿。
对比上面可以看到,这里已经I昂hibernate换位mybatis,mybatis用起来也很方便并且其因为自己写sql,可以自己对sql进行定制。而struts2换为了springmvc,用了springmvc后,反正我是觉得再也不想用struts2了。上面说到了,项目分为了多个module,一方面是因为很维护与管理,另一方面就是当时接触的项目已经是分布式项目了,别的项目可能会依赖这个项目的接口或domain,所以如将domain单独作为一个module,方便打包上传的maven仓库。
另:项目之间的远程调用采用的dubbo
组合4、基本与组合3相同,只不过完全的前后端分离了。后端只提供REST的json数据。前端采用anjularjs,前端的开发工具为webstorm。还有一点要说明的是,这使得构建工具有maven换为了gradle。
这个组和中,后端的代码中已经没有了jsp或者freemarker等,有的只是springmvc提供的API数据接口。前端静态页面存储在nginx中。这是前端对后端数据的访问已经完全异步,全是ajax请求。
且项目中采用了jekins作为项目的集成。
以上介绍的几种组合,servlet容器均使用的是tomcat和jetty,其中jetty使用居多。
组合5、依然是前后端完全分离,但angularjs换为了angularjs2(有点坑爹),其中最大的变化是后端采用了springboot。这时最终运行的程序大的包已经不是war包了,而是jar包了。也可以这样说,前几个组合都是我们程序运行在jetty中,而现在用了springboot,jetty嵌入到我们程序中了,这样最终部署,只需要jar -jar XX.jar 启动程序就行了,非常方便。
开发工具也换成了,Itelij Idea。angularjs2与anjularjs对说是对anjularjs的升级,但完全改的不像样了,可以说是重新做了一套,但使用起来思路清晰了好多。而spring boot也推荐大家去学习下,使用它我们可以很轻松的就搭起一个项目,并且他生成的可执行的jar包,在云平台或者docker中部署是非常方便的。
以上就是总结我使用的的大体的几种组合,一些细节也没有去叙述,漏下了许多。欢迎大家的批评与指正。同时,强烈像大家推荐gradle,个人感觉,它比maven好用太多了。Itelij Idea用习惯了也感觉确实比eclipse方便很多,但这玩意儿收费啊。
相关推荐
在Android应用开发中,构建一个实用的项目框架是至关重要的,它可以帮助开发者高效地组织代码,提高项目的可维护性和可扩展性。以下是对标题、描述和标签中的知识点的详细解释: 1. **自定义Android项目底部任务栏*...
"一个VSCode可视化项目框架"指的是利用VSCode及其相关插件构建的一个特定于可视化的项目结构和工作流程,旨在帮助用户更加直观地理解和操作项目中的数据和元素。 【描述】:一个VSCode可视化项目框架 这样的框架...
在“项目管理培训项目框架思维方法”中,我们探讨了如何有效地制定和实施项目计划。以下是一些关键知识点: 1. **定义项目目标与范围**: - 项目目标是项目的核心,它明确了项目要达成的结果。同时,项目范围定义...
在iOS开发过程中,构建一个规范化的项目框架是至关重要的,它可以帮助开发者更好地组织代码,提高项目的可维护性和可扩展性。"JH iOS项目框架脚本"正是一种用于自动化创建这种框架的工具。该脚本简化了手动创建目录...
在当今数字化浪潮中,软件项目管理的重要性日益...项目管理者必须对工作分解结构、项目时间管理、项目进度估算以及项目进度计划的编制和软件项目计划的编写有充分的理解和掌握,才能确保软件项目的顺利进行和成功完成。
Vue 项目常用组件和框架结构介绍 Vue 项目的基础结构通常包括 Vue 本身、Vue Router 和组件(Component),这三个核心部分构建了一个基本的单页应用(SPA)框架。Vue 提供了数据双向绑定、指令系统等特性,Vue ...
在CRM项目框架中,反射机制可以用于实现动态加载和实例化业务组件,提高代码的动态性和可配置性,例如在服务层根据配置动态调用不同业务逻辑。 结合这三种技术,我们可以构建出一个灵活、可扩展的CRM项目框架。六层...
"安卓项目框架.zip" 提供了一个示例,展示了如何在ScrollView中嵌套ListView,再进一步嵌套GridView,实现复杂的布局结构,同时包含了上下拉刷新和加载更多的功能。这个框架可以帮助开发者更好地理解和实践这种复杂...
在`jsp+servlet+mysql`项目框架中,MySQL通常用于存储和检索应用程序的数据。Servlet通过JDBC(Java Database Connectivity)与MySQL通信,执行CRUD(Create, Read, Update, Delete)操作。 **项目框架搭建** 在...
在当今世界,随着全球气候变暖问题日益严重,可持续发展和绿色能源的开发成为了全球共同关注的重要...随着未来技术的进步和市场环境的变化,分布式光伏项目框架协议也将会不断完善,为新能源领域的发展注入新的活力。
在这个过程中,项目框架思维方法扮演着至关重要的角色。以下是对项目管理培训中提到的关键知识点的详细解释: 1. **定义项目目标与范围**:项目目标是项目的核心,它明确了项目要达成的结果。同时,项目范围定义了...
在项目执行过程中,实施规划还应不断地进行跟踪检查和必要调整,以便及时响应项目的实际进展和外部环境的变化。项目结束后,应形成总结文件,记录项目管理的经验教训,为未来的项目提供参考。 总而言之,项目管理...
本文将深入探讨“项目架构搭建”这一主题,重点关注在Android项目框架中的实践和设计原则。 首先,我们要理解什么是项目框架。项目框架可以看作是软件开发的基础结构,它定义了项目的组织方式、组件之间的交互以及...
在IT行业中,"项目框架"通常指的是用于构建软件或应用程序的一种结构化模板,它为开发者提供了基础架构,以便更高效地进行开发工作。"项目框架1.01"可能是一个特定版本的框架,包含了用于创建特定类型项目所需的一...
AndLang框架是一款专为Android开发者设计的工具,旨在加速项目的初期构建过程,让开发者能够更高效地搭建项目框架。这款框架包含了一系列预先封装好的组件、模块和最佳实践,旨在简化常见的开发任务,提高代码的可...
Android项目框架是一个全面的开发结构,它集合了各种组件、工具和最佳实践,旨在提高开发效率,优化代码质量,并提供可扩展性和维护性。在"整理的android项目框架,提供以后使用"这个资源中,我们可以预见到包含了一...
以上是对"MyArchitectProject"项目框架的一般性解读,具体实现细节将取决于项目的实际代码和配置。在实际使用中,开发者需要根据自身的需求对框架进行调整和扩展,以构建出满足特定需求的Android应用。