这段时间学了三大框架,struts,spring,hibernate,简称SSH。
Struts框架作为实现MVC模式的第一个WEB框架,利用ACTION作为控制器,很好的解耦了MVC中的MODEL层与VIEW层,降低了它们之间的耦合性。ACTION中,通过HTTPSESSSION,HTTPSERVLETREQUEST,HTTPSERVLETRESPONSE访问WEB中的资源。当ACTION处理完后,就会向用户返回两种结果信息,分为两部分:结果类型和结果本身。响应的结果类型有:dispatcher(默认类型);redirect,重定向;redirectAction,重定向另一个Action;chain,结果类型的基本用途是构成一个action链(前一个action把控制权转发给后一个action,而前一个action的状态在后一个action中依然保持);plaintext;stream。通配符和值栈是其中两个重要的点。在JSP页面上可以利用OGNL(Object-Graph Navigation Language:对象-图导舫语言)访问值栈里的对象属性。做为Struts的核心,拦截器,它提供了ModelDriven和Preparable两个拦截器。前者是调用getModel()方法,并把返回值压入ValueStack;后者则是为了action类中的CRUD方法准备一些数据。
在MODEL层有做为的就是Hibernate了,Hibernate的Hql(面向对的sql)对应JDBC中的sql语句。它是ORM(Object Relation Mapping 对象关系映射)框架的主流框架之一。Hibernate核心接口,Configuration,负责配置并启动Hibernate,创建SessionFactory对象。Hibernte中数据的三种状态:临时状态,持久状态,脱管状态。其中的两种缓存,sessionFactory,session。Session的方法中的懒加载load(),对性能在某时候有很好的提高。还讲了,表之间的关系:一对一,一对多,以及多对多。还有它们的关系映射文件的本置(*.hbm.xml)和主配置文件(hibernate.cfg.xml)的配置。C3P0连接池工具的应用,消息国际化等。重点还讲了,hibernate与struts的联合搭建。
春天来了,spring是一个用于构造JAVA应用程序的轻量级框架。其优点之一就是其分层架构,允许你选择使用哪一个组件,同时为J2EE应用程序开发提供集成的框架。它的核心容器的主要组件是BeanFactory,是工厂模式的实现。BeanFactory使用控制反转(IOC)模式将应用程序的配置和依赖性规范与实际的应用程序代码分开。Spring IOC(Inverse Of Control),控制反转,Spring框架的核心其于控制反转原理。控制反转就是在程序外部创建和管理程序之间的依赖关系,而不是由代码直接控制。IOC的一种形式,DI,依赖注入:两个对象之间的依赖关系在程序运行时由外部容器动态的注入依赖行为方式。有三种注入方式:接口注入(一般不用);Setter注入;构造器注入。AOP(Aspect Oriented Programming)面向切面编程,简单的说就是实现横切的工具,是所有横切性的关注点的抽象。它的通知类型有:前置通知,后置通知,环绕通知,异常通知。Spring数据访问框架都结合了模板类,有JdbcTemplate类;NamedParameterJdbcTemplate类,而NamedParameterJdbcTemplate类为JDBC操作增加了命名参数的特性支持,而不是传统的使用’?’作为参数的占位符;SimpleJdbcTempate类,Java5及以上版本才可以正常使用,它是对JdbcTempate类进行的封装,从而可以充分利用java5所带来的vargargs和autoboxing等特性。还有Spring中的事务管理。
之后讲了,Spring和Hibernte的结合,Spring和Struts的结,以及Spring,Struts和Hibernate的结合。补充了Spring中的一些应用,Spring邮件,任务计划。
这些就是这段时间学的SSH的一些概述。
阅读(161) | 评论(0) | 转发(0) |