你的位置:首页 > Java教程

[Java教程]ssh(sturts2_spring_hibernate) 框架搭建之spring


 

一、spring总结:

  ⑴、spring是一个轻量级的JAVA开发框架,主要的作用是用来管理实例(可以解决JAVA类中new对象的问题,节省内存资源。)和降低代码之间的耦合性,促进代码模块化。

  ⑵、促进代码的模块化学也就是所说的IOC(Inversion Of Control)。然其中DI用的较为广泛。

二、spring搭建:

  ⑴、导入相关的jar包:

    ①、下载好spring后解压出来找到lib目录将其中除了javaDoc和sources的jar包全部导入项目中,并且在struts解压包lib目录中找到struts2-spring-plugin的jar包和Commons-logging的jar包导入项目中。如下:

    

    ②、在web.

      

    ③、在struts.

       

    ④、在项目src中新建一个

      ⑴、首先需要进行beans标签。beans标签中是基本的配置头信息,基本上不会改变,除了版本之间的差异之外需要改一下版本信息,其他基本变化不大。  

    <beans                                                         xsi:schemaLocation=" 
      http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.2.xsd 
      http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.2.xsd 
      http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.2.xsd
      http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-4.2.xsd 
      http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.2.xsd">

        

       <!--之后在这里进行bean实例的配置。-->

 

    <beans>

       ⑵、其次配置bean实例中进行,下面是示例的配置:

        

         · bean标签中的id属性是bean的名字,可能一个实例中需要用到另外一个实例,就需要引用,这个id就是引用的名字。

         · bean标签中的class属性是指向的这个类,也就是会对这个类进行new实例,但是不是自己作,而是bean帮我们解决。  

         · bean标签中的scope是设置实例的创建形式,如:

              singleton:单实例,在bean无状态使用。

              prototype:每次对这个bean的请求都会创建一个实例。

              request:每次http请求将会有各自的bean实例,类似于prototype。

              session:在一个http session中,一个bean定义对应一个bean实例。

               global session:在一个全局的http session中,一个bean定义对应一个bean实例。典型情况下,仅在使用portlet context的时候有效。

           

 

        ① 、这行代码的意思是:首先,在action.ActionService类中需要有一个成员属性为ms,定义了这个属性的set方法(spring会帮忙注入这个实例),并且类型是一个services.MyServiceImp的类型或者是这个类的接口类型,如下:

  

         其次,这个属性引用了下面的bean的id为myServiceImp的实例。

         最后,这个句最终的作用就是为这个ms成员属性注入了一个myServiceImp的实例。

        

        ②、 这句代码的意思则是:new出了一个util.MyConnectionImp的实例,并且每次请求这个bean的时候都会new一个这个实例。