SSM+实训

SSM就是Spring+SpringMVC+MyBatis框架,这是我们主要教授的三大框架。学会了基本的原理等还不够,我们要学以致用,所以我们的老师会带领大家做一个用SSM实现的项目,就是实训。

框架,相信大家从纸面的意思上很好理解。那么框架是用来做什么的呢?就是在我们以后的工作中经常用到的,将代码简单化,封装了很多重复的代码,让我们以优雅的方式编写程序。

以后我们会遇到各种各样的框架,在这里我们要学会框架的基本思想和运用,为我们以后自主学习清扫障碍,使我们尽快的接受新的框架,这就是我们的初衷。

  1. time-line
    Hibernate

    我们要从三个角度来理解Hibernate:
            一、Hibernate是对JDBC进一步封装。 原来没有使用Hiberante做持久层开发时,存在很多冗余,如:各种JDBC语句,connection的管理,所以出现了Hibernate把JDBC封装了一下,简单说就是不用写Sql语句了。
            二、我们再从分层的角度来看。我们知道非常典型的三层架构:表示层,业务层,还有持久层。Hiberante也是持久层的框架,而且持久层的框架还有很多,比如:IBatis,Nhibernate,JDO,OJB,EJB等等。
            三、Hibernate是开源的一个ORM(对象关系映射)框架。ORM,即Object-Relational Mapping。从对象(Object)映射到关系(Relation),再从关系映射到对象。这样,我们在操作数据库的时候,不需要再去和复杂SQL打交道,只要像操作对象一样操作它就可以了(把关系数据库的字段在内存中映射成对象的属性)。

  2. time-line
    反射

            反射主要是指程序可以访问,检测和修改它本身状态或行为的一种能力,并能根据自身行为的状态和结果,调整或修改应用所描述行为的状态和相关的语义。
            反射是java中一种强大的工具,能够使我们很方便的创建灵活的代码,这些代码可以再运行时装配,无需在组件之间进行源代码链接,以达到解耦的目的。但是反射使用不当会成本很高!
            成本高是因为,反射打破了java中"封装"的特性,使用不当会在安全方面有很大的威胁,我们在此主要看重的是反射的"降低耦合性"的优点。降低耦合性是一个很重要的步骤,便于我们以后修改代码等等。

  3. time-line
    Spring

            Spring是一个开放源代码的设计层面框架,他解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用。通俗点说,Spring就是一个粘合剂,把其他的框架粘合在一起,统一管理调配,是进行对象管理,对象关联,解耦的一个中间层框架,Spring在SSM中起着承上启下的作用。
            还有一个重点就是"动态代理"和AOP面向切面编程。首先,动态代理代理的是什么?代理的就是方法的调用,也就是代理的功能。AOP可以说是对OOP面向对象编程的补充和完善,实现AOP技术,主要是动态代理技术,利用截取消息的方式,对该消息进行装饰,以取代原有对象的执行。

  4. time-line
    SpringMVC

            MVC即Modle-View-Controller(实体层、视图层、控制层),主要作用就是将WEB层进行指责解耦。那么SpringMVC能帮我们做什么呢?
            让我们能非常简单的设计出干净的Web层和薄薄的Web层;进行更简洁的Web层的开发;天生与Spring框架集成(如IOC容器、AOP等);提供强大的约定大于配置的契约式编程支持;能简单的进行Web层的单元测试;支持灵活的URL到页面控制器的映射;非常容易与其他视图技术集成,如Velocity、FreeMarker等等,因为模型数据不放在特定的API里,而是放在一个Model里(Map数据结构实现,因此很容易被其他框架使用);非常灵活的数据验证、格式化和数据绑定机制,能使用任何对象进行数据绑定,不必实现特定框架的API;提供一套强大的JSP标签库,简化JSP开发;支持灵活的本地化、主题等解析;更加简单的异常处理;对静态资源的支持;支持Restful风格。

  5. time-line
    MyBatis

            MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装。MyBatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。
            MyBatis需要重点配置两个xml文件即MyBatis-config.xml和对应响应实力类的xml文件,后者主要是要编写Sql语句,我们在操作数据库时,直接调用xml文件中的方法即可。

  6. time-line
    实训

            我们的实训将会带领大家做一个商城项目,主要就是应用SSM框架,让大家深入了解项目的整体流程、分层以及框架的结合应用。当然其中我们还会用到很多其他的小技术,比如工厂模式、分页框架、页面框架、图片上传、自定义异常、自定义注解等等。
            "冰冻三尺非一日之寒",一个好的项目不是一两天就可以完成的,我们写项目的能力也不是一蹴而就的,需要我们不断的积累经验,写出高效简洁的代码。相信大家通过这个实训可以为未来的工作学习积累下宝贵的经验、打下夯实的基础。