zoukankan      html  css  js  c++  java
  • p命名空间注入

    p命名空间注入的特点是使用属性而不是子元素的形式配置Bean的属性,从而简化了配置代码。

    使用前要在spring配置文件中引入p命名空间

    xmlns:p="http://www.springframework.org/schema/p"

    下面看示例:

    biz里面要有setter访问器(与设值注入的代码相同)

    1.biz代码

     1         //上面是以前的方法
     2     private IUserDao dao;
     3     public IUserDao getDao() {
     4         return dao;
     5     }
     6     //专业注入
     7     //dao的set访问器,会被spring调用,实现设值注入
     8     public void setDao(IUserDao dao) {
     9         this.dao = dao;
    10     }

    2.在dao里面添加代码

     1 package com.dao.impl;
     2 
     3 import com.dao.IUserDao;
     4 import com.domain.User;
     5 
     6 public class IUserDaoImpl implements IUserDao {
     7 
     8     @Override
     9     public void save(User user) {
    10         // TODO Auto-generated method stub
    11         System.out.println("哇塞,保存用户信息了");
    12         
    13         System.out.println("用户名是:"+user.getUname());
    14         System.out.println("邮箱是:"+user.getEmail());
    15     }
    16 
    17 }

    3.配置spring配置文件

    1 <!-- 给属性赋值 -->
    2     <bean id="users" class="com.domain.User" p:email="mr_myh@126.com" p:uname="大师兄"></bean>
    3     <bean id="udao" class="com.dao.impl.IUserDaoImpl"></bean>
    4     <!-- 引入udao -->
    5     <bean id="biz" class="com.biz.impl.IUserBizImpl" p:dao-ref="udao"></bean>
    6     

    4.测试类

     1 package com.test;
     2 
     3 import org.springframework.context.ApplicationContext;
     4 import org.springframework.context.support.ClassPathXmlApplicationContext;
     5 
     6 import com.biz.IUserBiz;
     7 import com.domain.User;
     8 
     9 /**
    10  * 
    11  * @author Mr
    12  * aop测试类
    13  */
    14 public class Test {
    15 
    16     public static void main(String[] args) {
    17         //解析配置文件
    18         ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
    19         
    20         IUserBiz biz = (IUserBiz) ac.getBean("biz");
            //users来自于spring配置文件
    21 User users = (User) ac.getBean("users"); 22 biz.save(users); 23 } 24 25 }

    5.测试效果

  • 相关阅读:
    python没有switch,可以用字典来替代
    Django1.8:403错误:CSRF verification failed. Request aborted.
    django重定向
    第九章 JSP标签——《跟我学Shiro》
    第八章 拦截器机制——《跟我学Shiro》
    第七章 与Web集成——《跟我学Shiro》
    第六章 Realm及相关对象——《跟我学Shiro》
    第五章 编码/加密——《跟我学Shiro》
    第四章 INI配置——《跟我学Shiro》
    第三章 授权——《跟我学Shiro》
  • 原文地址:https://www.cnblogs.com/myhzb/p/7531650.html
Copyright © 2011-2022 走看看