struts+spring+hibernate是怎样的架构?
我是java初学者,只学了点语法.现在看到很多网站采用struts+spring+hibernate的架构?看了点资料,说这3个都是框架,请问是不是就是类似.netframe这样的东东,也就是封装了一些函数和类等?java做网站只用jdk不可以吗?为什么要3个呢?这3个是不是就是"简化的jdk",可以这样理解吗?jdk包含很多函数,而这3个各只包含部分函数
问题补充:
我用php,asp,.net开发过多年网站了,就是不知道java怎么这么多东西
是不是不装这3个东东,写代码时部分函数就会编译出错?
提问者: tommy_yzx - 一级
最佳答案
举一个小例子回答楼主的问题。
加入我要盖一件小ping房(做一个网站),我需要做的是:
1:买一块地。(租一台服务器)--1天
2:申请一个门牌号码(买一个域名)--1天
3:买材料,请2、3个工人,开始盖房(准备所需要的开发工具IDE什么的,搭建测试环境,找2,3个程序员--刚毕业的大学生就可以了)。--1周
4:盖房(敲代码编程)--1到3个月。
5:房子盖好了,东敲敲西敲敲看牢不牢固(自己测试一下功能都齐全了没)--1周。
6:如果有问题,比方说卧室不够透气,把卧室的墙多开一扇窗户(哪个页面有问题,删除重新写一个)。比方说墙里面的电线发现有问题,把墙凿开,换一根电线。
6:完工。
总共耗时2-4个月左右。
现在我要盖一栋大楼(开发一个企业级项目),本质上还是盖房子,但是如果就像盖小ping房一样的去做。结果是怎样的呢?
盖到18楼了,突然说5楼内测的电线堵住了,5楼以上都没有点,于是得把5楼以上的全拆了,拆到5楼,把墙凿开,把电线换一根,再继续往上面盖。
相信没有哪栋大厦是这样盖出来的。
于是有了建筑师(软件架构师)这个职位,有了建筑设计学(软件架构学)这么个说法。
盖大楼,一开始的步骤是这样的。
地还是要买,不过得做土地勘察,样本采集,看地质如何。
然后得画图纸,这图纸一画就是很久,要考虑到整栋大楼的方方面面,哪些墙可以供拆除,就在里面放电线水管什么的。哪些是主力墙不能拆除。这里卖弄的学问太多,笔者也无法弄清楚。
然后就是打地基。这也是相当重要的环节,地基没打好,整个房子都不稳固。然后就是用钢筋水泥等,打造整栋大楼的框架。让房子非常坚固。
再后才是逐步完善大楼内部,一层层的砌砖,一间间地粉刷,装修。就算某一块出了问题。去掉或者修复那一块就行了,整栋大楼屹立不倒,稳稳当当。
企业级项目中,也是同安的过程。
先用UML建模,建立数据库模型,项目的分层架构设计,使用框架让整个项目健壮起来,动一处而不会牵动全身。
struts,spring,hibernate都是为了让项目更健壮而产生的。如果只是要做一个小网站,我觉得很没有必要使用这些东西,就ASP,PHP一定能做得更快,就像盖小p房一样。就算要用Java,就用JSP+JavaBean就行了。如果是开发企业级项目,ASP和PHP是绝对不能跟J2EE相提并论的。
Struts是MVC框架,它的作用不是让人能干什么(它能做的事JSP都能做),它的作用是不能让人干什么。就好像,设计师要砌墙工人在哪里砌砖,他就不能去别出砌一样。给程序语言严格的规范,让它按照规范走,不会随心所欲地去编代码。这样可以保证项目的高度一致性。
Spring是J2EE轻量级框架。它的做法好比把项目分成一个个地组件,哪一块出了问题,换掉那一块就是了。别的地方根本不用动。就好像我刚刚举的5楼电线出了问题,就在5楼把墙凿开,换一个电线即可,不用担心5楼的墙凿开上面的会塌下来。
Hibernate是ORM工具,不能称之为框架,它至少至少有一个好处,在项目做移植数据库的时候,不用切换数据库层的代码。当然它的好处很多。笔者在所有的开源技术中,也最钟情对Hibernate的研究。
不过这些问题,都只有在很大的项目开发中才会用到。所以如是是小项目开发,不建议使用J2EE.
分享到:
相关推荐
简单struts+spring+hibernate搭建,配置,适合初学者
整合使用最新版本的三大框架(即Struts2、Spring4和Hibernate4),搭建项目架构原型。 项目架构原型:Struts2.3.16 + Spring4.1.1 + Hibernate4.3.6。 此外,还有:log4j、slf4j、junit4、ehcache等知识点。 项目...
Struts2+Spring+Hibernate 中的Action单元测试环境搭建 在软件开发中,单元测试是一种非常重要的测试方法,可以帮助我们确保代码的可靠性和稳定性。在 Struts2+Spring+Hibernate 框架中,对 Action 的单元测试环境...
SSH三大框架,即Struts、Spring和Hibernate,是Java Web开发中的常用技术组合,它们各自负责不同的职责:Struts作为MVC模式中的Controller层,处理用户请求并转发到相应的业务逻辑;Spring则作为核心容器,负责依赖...
SSH(Struts+Spring+Hibernate)是一个经典的Java Web开发框架,用于构建高效、可扩展的企业级应用程序。这个教务管理信息系统是基于SSH框架实现的,提供了完整的源代码,可以直接运行,便于开发者学习和参考。 **...
本系统采用struts+spring+hibernate架构,重在讲述三者结合在一起的应用开发,所有源程序都 有详细的注释,供入门者学生参考,未经作者允许不得用于商业用途,只能用于教学或个人学习。 程序只是整个系统中的...
总的来说,"Struts+Spring+Hibernate+WebService"的集成架构是Java Web开发中常见的解决方案,它结合了MVC框架、企业级服务管理、ORM工具和跨平台通信技术,为复杂的企业应用提供了强大的支撑。这种架构允许开发者...
SSH(Struts+Spring+Hibernate)是Java Web开发中一种常见的技术栈,它将MVC设计模式、依赖注入和持久层框架集成为一个整体,大大提高了开发效率和代码的可维护性。下面我们将深入探讨SSH框架的各个组成部分及其结合...
Struts2、Spring4和Hibernate4是Java Web开发中的三大主流框架,它们分别负责MVC模式中的表现层、业务层和服务层。这个最新的项目系统整合了这三个框架,旨在提供一个高效、灵活且易于维护的开发环境。下面将详细...
Struts2、Spring4和Hibernate是Java开发中的三大框架,它们在构建企业级Web应用程序时起着核心作用。本教程将深入探讨这三个框架如何协同工作,以实现高效、灵活和可扩展的电子商务平台。 首先,Struts2是一个基于...
本系统采用的是经典的“Struts+Spring+Hibernate+Mysql”架构,也被称为SSH框架,这是一套广泛应用于Java Web开发的技术栈,具有良好的分层设计和组件化特性。 **Struts** 是一个基于MVC(Model-View-Controller)...
Struts、Spring、Hibernate以及MySQL是Java开发领域中非常经典的四大框架组合,它们共同构建了一个强大的Web应用程序架构。Struts提供了MVC(Model-View-Controller)设计模式的支持,Spring作为一个全面的轻量级...
Struts2+Spring+Hibernate和Struts2+Spring+Ibatis是两种常见的Java Web应用程序集成框架,它们分别基于ORM框架Hibernate和轻量级数据访问框架Ibatis。这两种框架结合Spring,旨在提供一个强大的、可扩展的、易于...
Struts、Spring 和 Hibernate 是Java Web开发中的三大框架,它们结合使用可以构建高效、模块化的应用程序,特别是对于处理用户登录和文件上传等常见功能。在这个项目中,"struts+spring+hibernate(mysql)用户登录及...
Struts、Spring 和 Hibernate 是Java开发中非常著名的三个开源框架,它们组合在一起形成的SSH(Struts、Spring、Hibernate)框架,是企业级Web应用开发的常用解决方案。SSH框架的整合可以实现模型-视图-控制器(MVC...
Struts 是一个用于构建 MVC(模型-视图-控制器)架构的框架,Spring 提供了一个全面的依赖注入(DI)和面向切面编程(AOP)解决方案,而 Hibernate 则是一个对象关系映射(ORM)工具,它简化了数据库与Java对象之间...
Struts、Spring、Hibernate和Ajax是Java Web开发中的四大核心技术,它们共同构建了一个高效、灵活的Web应用程序架构。在这个"Struts+Spring+Hibernate+Ajax的Demo"中,开发者使用了这些技术来创建一个功能丰富的示例...
《开发者突击:Java Web主流框架整合开发(J2EE+Struts+Hibernate+Spring)》详细介绍了Java Web软件架构中的各种开发技术。主要内容包括:以MySQL为数据库、Tomcat为Web服务器、Eclipse为开发工具、CVS为版本控制工具...