`

JAVA编程框架之SSH

 
阅读更多

一个良好的框架可以让开发人员减轻重新建立解决复杂问题方案的负担和精力;它可以被扩展以进行内部的定制化;并且有强大的用户社区来支持它。框架通 常能很好的解决一个问题。然而,你的应用是分层的,可能每一个层都需要各自的框架。仅仅解决UI问题并不意味着你能够很好的将业务逻辑和持久性逻辑和UI 组件很好的耦合。

典型的J2EE三层结构,分为表现层、中间层(业务逻辑层)和数据服务层。三层体系将业务规则、数据访问及合法性校验等工作放在中间层处理。客户端不直接与数据库交互,而是通过组件与中间层建立连接,再由中间层与数据库交互。 

表现层是传统的JSP技术,自1999年问世以来,经过多年的发展,其广泛的应用和稳定的表现,为其作为表现层技术打下了坚实的基础。 

中间层采用的是流行的Spring+Hibernate,为了将控制层与业务逻辑层分离,又细分为以下几种。 

Web层,就是MVC模式里面的“C”(controller),负责控制业务逻辑层与表现层的交互,调用业务逻辑层,并将业务数据返回给表现层作组织表现,该系统的MVC框架采用Struts。 

Service层(就是业务逻辑层),负责实现业务逻辑。业务逻辑层以DAO层为基础,通过对DAO组件的正面模式包装,完成系统所要求的业务逻辑。 

DAO层,负责与持久化对象交互。该层封装了数据的增、删、查、改的操作。 

PO,持久化对象。通过实体关系映射工具将关系型数据库的数据映射成对象,很方便地实现以面向对象方式操作数据库,该系统采用Hibernate作为ORM框架。 

Spring的作用贯穿了整个中间层,将Web层、Service层、DAO层及PO无缝整合,其数据服务层用来存放数据。

采用Hibernate作为持久层技术的最大的好处在于:可以完全以面向对象的方式进行系统分析、系统设计。 

DAO模式需要为每个DAO组件编写DAO接口,同时至少提供一个实现类,根据不同需要,可能有多个实现类。用Spring容器代替DAO工厂 

通常情况下,引入接口就不可避免需要引入工厂来负责DAO组件的生成。Spring实现了两种基本模式:单态模式和工厂模式。而使用Spring可以完全避免使用工厂模式,因为Spring就是个功能非常强大的工厂。因此,完全可以让Spring充当DAO工厂。 

由 Spring充当DAO工厂时,无须程序员自己实现工厂模式,只需要将DAO组件配置在Spring容器中,由 ApplicationContext负责管理DAO组件的创建即可。借助于Spring提供的依赖注入,其他组件甚至不用访问工厂,一样可以直接使用 DAO实例。 

Struts跟Tomcat、Turbine等诸多Apache项目一样,是开源软件,这是它的一大优点。使开发者能更深入的了解其内部实现机制。


除此之外,Struts的优点主要集中体现在两个方面:Taglib和页面 导航。Taglib是Struts的标记库,灵活动用,能大大提高开发效率。另外,就目前国内的JSP开发者而言,除了使用JSP自带的常用标记外,很少 开发自己的标记,或许Struts是一个很好的起点。

 

 

 

 

 

Java SSH框架中常用jar包的作用3

 

 

Ant的一个辅助包。 

c3p0.jar: C3PO是一个数据库连接池,Hibernate可以配置为使用C3PO连接池。如果你准备用这个连接池,就 需要这个jar包。

proxool.jar: 也是一个连接池,同上。 

commons-pool.jar, commons-dbcp.jar: DBCP数据库连接池,Apache的Jakarta组织开发的,Tomcat4的连接池也是DBCP。 实际上Hibernate自己也实现了一个非常非常简单的数据库连接池,加上上面3个,你实际上可以在Hibernate上选择4种不同的数据库连接池, 选择哪一个看个人的偏好,不过DBCP可能更通用一些。另外强调一点,如果在EJB中使用Hibernate,一定要用App Server的连接池,不要用以上4种连接池,否则容器管理事务不起作用。 

connector.jar: :Java Connector Arichitecture JCA 规范,如果你在App Server上把Hibernate配置为Connector的话,就需要这个jar。不过实际 上一般App Server肯定会带上这个包,所以实际上是多余的包。 

jaas.jar: Java Authentication and Authorization Service JAAS是用来进行权限验证的,已经包含在JDK1.4里面了。所以实际上是多余的包。

jcs.jar: Java Caching System 如果你准备在Hibernate中使用JCS的话,那么必须包括它,否则就不用。 

jdbc2_0-stdext.jar: JDBC2.0的扩展包,一般来说数据库连接池会用上它。不过App Server都会带上,所以也是多余的 。 

jta.jar: Java Transaction API JTA规范,当Hibernate使用JTA的时候需要,不过App Server都会带上,所以也是多余的。 

junit.jar: Junit包,当你运行Hibernate自带的测试代码的时候需要,否则就不用。 

xalan.jar, xerces.jar, xml-apis.jar: Xerces是XML解析器,Xalan是格式化器,xml-apis实际上是JAXP。一般App Server都会带上,JDK1.4也包含了解析器,不过不是Xerces,是Crimson,效率比较差,不过Hibernate用XML只不过是读取 配置文件,性能没什么紧要的,所以也是多余的。

------------------------------------------------------------------- 

Struts antlr.jar ANTLR(ANother Tool for Language Recognition)它是这样的一种工具,它可以接受词文法语言描述,并能产生识别这些语言的语句的程序。 

commons-beanutils.jar Commons-Beanutils 这个是jakarta commons项目中的一个子项目。这个项目开发的目的是帮助开发者动态的获取/设值Java Bean的属性,同时解决每次都要写getXXX和setXXX的麻烦。 commons-digester.jar Digester本来仅仅是Jakarta Struts中的一个工具,用于处理struts-config.xml配置文件。显然,将XML文件转换成相应的Java对象是一项很通用的功能,这个 工具理应具有更广泛的用途,所以很快它就在Jakarta Commons项目(用于提供可重用的Java组件库)中有了一席之地。 在内部, Struts 使用来自于Jakarta Commons[ASF, Commons] 项目的Digester 来解析Struts配置文件。Digester 使用struts-config DTD 来校验文档的格式,并且创建文档所描述的Java对象。如果XML文件包含了非正式文档化的元素,或者以非正式文档化的方式使用了元素, Digester 将不会处理这个文件。 

commons-fileupload.jar Commons-FileUpload FileUpload 使得在你可以在应用和Servlet中容易的加入强大和高性能的文件上传能力 struts中上传文件要用到 struts的验证框架依赖以下的两个包 commons-validator.jar (校验方法)和校验规则。支持校验规则的和错误消息的国际化。 struts使用它对表单进行验证 

jakarta-oro.jar Commons-EL Commons-Jexl Search Jakarta ORO Jakarta ORO一套文本处理工具,能提供perl5.0兼容的正则表达式,AWK-like正则表达式, glob表达式。还提供替换,分割,文件名过虑等功能. struts.jar 不用说,是struts核心包

分享到:
评论

相关推荐

    Java三大框架SSH框架

    Java SSH 框架是Java开发企业级应用的三大核心框架,它们分别是Spring、Struts 和 Hibernate。这个框架组合提供了一种高效且灵活的方式来构建Web应用程序,尤其在处理增删改查(CRUD)操作、分页、上传下载等功能时...

    javaSSH框架javaSSH框架 整合

    JavaSSH框架,通常指的是在Java开发中用于构建服务器端应用的一种技术栈,它结合了Struts、Spring和Hibernate这三个主流的开源框架。Struts提供了MVC(Model-View-Controller)设计模式,Spring则是一个全面的后端...

    Java SSH 框架整合,学习源码

    1. **Spring框架**:Spring是一个全面的后端应用程序框架,它提供了依赖注入(DI)和面向切面编程(AOP)等功能。在SSH整合中,Spring主要作为应用的核心,负责管理其他组件,如Struts和Hibernate,通过Bean工厂和...

    Java框架SSH实例小型企业网站

    总的来说,"Java框架SSH实例小型企业网站"是一个适合初学者和进阶者的实践项目,通过实际操作,可以深入理解Spring的依赖注入、Struts的MVC模式、Hibernate的ORM机制,以及Ajax在提升用户体验上的作用。对于想要提升...

    Java WEB关于java 编程和SSHA框架的使用

    Java Web开发是构建基于互联网应用程序的关键技术,其中Java编程语言和SSH(Struts、Spring、Hibernate)框架的组合尤其重要。SSH是一个强大的企业级应用开发框架,它简化了Java Web应用的开发流程,提高了开发效率...

    JAVA SSH框架最全包合集

    Spring 是一个开源的应用程序框架,主要解决企业应用开发的复杂性。它提供了IOC(Inversion of Control,控制反转)和AOP(Aspect-Oriented Programming,面向切面编程)两大核心功能,以及对数据库操作的支持,事务...

    java框架ssh框架项目案例

    这个“java框架ssh框架项目案例”提供了一个完整的示例,帮助开发者了解如何在实际项目中集成和应用这些框架。 1. **Struts2**:作为MVC(模型-视图-控制器)设计模式的实现,Struts2负责处理HTTP请求并分发到相应...

    SSH框架搭建源码

    这个压缩包文件"SSHdemo"提供了一个SSH框架搭建登录功能的示例,帮助开发者了解并实践如何整合这三个框架来构建一个完整的Web应用程序。 **Struts2** 是一个基于MVC(Model-View-Controller)设计模式的Java Web...

    java ssh框架权限管理系统

    Spring框架则是一个全面的企业级应用框架,它提供依赖注入(DI)和面向切面编程(AOP)等功能,使得应用程序更加松耦合。在权限管理系统中,Spring可以用来管理Bean的生命周期,注入Service和DAO层的实例,以及实现...

    java ssh框架的加法计算器

    SSH框架,全称为Struts2、Spring和Hibernate的组合,是Java Web开发中常见的三大开源框架集成。这个项目是一个基于SSH框架实现的简单加法计算器,对于初学者来说,它是理解SSH框架工作原理和结构的一个良好起点。 ...

    用java中的ssh三大框架做的一个入门的例子

    Spring是一个全面的后端应用程序框架,它提供了依赖注入(DI)和面向切面编程(AOP)等功能,简化了Java应用的开发。在SSH整合中,Spring通常作为容器来管理其他组件,如Struts的Action和Hibernate的SessionFactory...

    java ssh 框架 jar包资源

    Java SSH 框架是Java开发企业级应用的三大组件:Spring、Struts 和 Hibernate 的组合,它们分别负责不同层面的职责。这个压缩包资源包含了这三...但无论如何,理解并熟练掌握SSH框架仍然是Java后端开发的重要技能之一。

    基于Java编程语言实现Webssh框架源码+项目说明.zip

    本项目的Blog:使用纯Java实现一个WebSSH项目 注意: 由于前端代码中没有指定终端的信息 所以需要各位自己输入这些信息,位置在webssh.html中 openTerminal( { /*operate:'connect', host: '',//IP port: '',...

    Javassh框架

    JavaSSH框架,通常指的是Java实现的安全 Shell (SSH) 库,它允许开发者在Java应用程序中进行远程系统操作,如执行命令、传输文件等。SSH是一种网络协议,用于提供安全的远程登录和其他网络服务,比如SFTP(Secure ...

    java_SSH三大框架介绍

    SSH三大框架指的是Struts、Spring和Hibernate三个开源框架的组合使用,这种组合模式在Java Web应用程序开发中非常流行。下面将详细介绍这三个框架的各自特点和在SSH集成中的作用。 Struts是一个MVC(Model-View-...

    SSH.rar_java ssh_java框架项目_ssh

    再者,Hibernate是一个持久层框架,它简化了Java应用程序与数据库之间的交互。Hibernate通过ORM(Object-Relational Mapping)技术将Java对象映射到数据库表,使得开发者可以以面向对象的方式来操作数据库,而无需...

    基于java三大框架的ssh

    SSH是Java开发中常用的三大框架,分别是Spring、Struts和Hibernate。这些框架分别负责不同的职责,Spring作为核心容器,管理对象的依赖注入;Struts处理Web层的请求和响应;Hibernate则专注于对象关系映射(ORM),...

    javaSSH框架的整合

    在实际项目中,`demo_ssh2.exe`可能是一个用于演示或者教学的程序,它包含了整合好的Java SSH框架,可以帮助初学者快速理解如何将这三个框架协同工作。使用这样的示例程序,你可以查看其配置文件、源代码和结构,...

    java SSH学习的各种框架

    在Java开发领域,SSH(Spring、Struts、Hibernate)是一个非常经典的开源框架组合,用于构建企业级的Web应用程序。这个框架集合提供了模型-视图-控制器(MVC)的架构模式,数据库持久化,以及业务逻辑处理等核心功能...

    用JAVA实现的BBS系统 框架为SSH

    在这个项目中,我们讨论的是一个基于Java编程语言并采用SSH(Struts2、Hibernate、Spring)框架构建的BBS(Bulletin Board System,公告板系统)。SSH是Java Web开发中常用的三大开源框架集成,它们各自负责不同的...

Global site tag (gtag.js) - Google Analytics