Spring框架学习

Posted meifanghua

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring框架学习相关的知识,希望对你有一定的参考价值。

(一)Spring 框架的依赖的注入的方式

    1通过set方法来完成注入

<bean id="h" class="com.zhiyou100.***.bean.User">
    <property name="name" value="张三"/>  <property> 标签是通过set方法来注入
<property name="age" value="18"/> </bean>

  2通过构造方法来完成依赖注入

<bean id="h1" class="com.zhiyou100.xth.bean.User">
    <constructor-arg index="0" value="阿三"/>
    <constructor-arg index="1" value="28"/>
</bean>

  (二)依赖注入的数据类型

  1基本数据类型和字符串使用value(如上面所示)

  2如果是指向另外一个对象的引用 使用ref

    技术图片

 

 

  3如果类对象注入的属性类型为list类型

 

    

<bean id="h1" class="com.zhiyou100.xth.bean.User" scope="prototype">
            <property name="name" value="张三"/>
            <property name="age" value="28"/>
            <property name="list">
     
    <list>
         <bean class="com.zhiyou100.xth.bean.Student">
         <property name="address"   value="南京"/>
</bean>
  <bean class="com.zhiyou100.xth.bean.Student">
      <property name="address"   value="北京"/>
     </bean>
      <bean class="com.zhiyou100.xth.bean.Student">
      <property name="address"   value="华东"/>
     </bean>
      <bean class="com.zhiyou100.xth.bean.Student">
      <property name="address"   value="华北"/>
     </bean>
    </list>
   </property>
 </bean>

 

 4如果类对象注入的属性类型为map类型

     

<property name="map">
         <map>
         <entry key="jj"  value="积极"/>
         <entry key="hh"  value="哈哈"/>
         <entry key="uu"  value="哈哎s"/>
         <entry key="ii"  value="阿瑟东"/>
         
       </map>
</property >

  (三) Bean的作用域

         技术图片

 

 

    (四)自动注入

 

         技术图片

 

       (五)在Spring配置文件中引入配置文件

 

 

       

       <context:property-placeholder location="classpath:my.properties"/>
  <bean class="com.zhiyou100.xth.bean.User" id="user">
    <property name="name" value="$user.name"/> 其中不能使用user.name 那样默认的会是操作者的电脑账户的id 要避开这个关键字
    <property name="age" value="$user.age"/>
  </bean>

  (六)使用注解的方式

       1 引入jar包   aop的jar包

       2 配置文件中使用包扫描 

      

   <context:component-scan base-package="com.zhiyou100.**"/>

  3 在相应的类加上注解

 

 

             

           @Repository   持久化注解。

           @Service 业务层注解

           @Controller 控制层注解

           @Autowired 自动注入 按照类型帮你自动注入,如果由多个类型相同的那么就会在按照名称注入。(建议使用这个)

           @Resouce  自动注入 按照名称注入,如果没有相同名称的bean那么会按照类型帮你注入。 它可以指定名称来注入。

    Controller的代码

 

@Controller
public class UserControllerimp 

	
	@Autowired
	private UserService userService;
	
	public void findbyid(int id) 
	  userService.queryid(id);
	


 

  Serviced 代码

@Service
public class UserServiceimp implements UserService
	@Autowired
	private UserDao userdao;
	

	@Override
	public void queryid(int id) 
	  userdao.selectid(id);
		
	


  dao的代码

   

@Repository
public class UserDaoimp implements UserDao

	@Override
	public void selectid(int id) 
		System.out.println("++++++++++++++");
		
	
    

  

 

以上是关于Spring框架学习的主要内容,如果未能解决你的问题,请参考以下文章

Spring 框架学习---- Spring 整合 Mybatis 框架

Spring MVC 框架学习---- SSM 框架整合

零基础学习-spring框架

Spring框架学习1.0

Spring框架学习---- 我的第一个Spring程序

Spring框架学习Spring简介