<bean id="helloWorld" class="com.test1.HelloWrold"></bean>
<bean id="helloWorld" class="com.test1.HelloWrold"></bean>
<bean id="helloWorld2" class="method.factory.HelloWorldFactory" factory-method="getInstance"></bean>
<alias name="" alias=""/>
name : 对应bean的id, alias : 别名<bean lazy-init="true">
来改变创建时间, 如果为true的话,会在 getBean()时创建对象<bean scope="prototype">
的Scope参数可以设置产生的类为多例的<bean id="hello" class="com.test2.HelloWrold" init-method="init" destroy-method="destroy" lazy-init="true"></bean>
<constructor-arg index="1" value="ssss"></constructor-arg>
index : 代表第几个参数 value : 参数值parent="id"
属性来设置继承的父类,这样在父类注入的值可以从子类获取到<context:annotation-config></context:annotation-config>
@Resource(name="student")
/ @Autowired
/ @Qualifier("student")
选项name=""
参数,会按照name参数跟bean的id进行匹配<context:annotation-config></context:annotation-config>
spring容器会在spring容器管理的bean的范围内查找这些类的属性上面是否加了@Resource注解<context:component-scan base-package="com.itheima12.spring.scan"></context:component-scan>
,会扫描base-package下面所有的类,是否有@Component
,在扫描完以后会继续按照@Resource
注解进行赋值@Repository("customerDao")
@Resource(name="sessionFactory")
@Service("linkManService")
@Controller("baseDictAction") @Scope("prototype")
@Component("")
的子类, 属于更加细节的划分, 括号内的是bean的idInvocationHandler
传递进去目标类和代理类,在执行被代理方法之前或者之后执行代理类中的方法<aop:config proxy-target-class="true">
强制使用cglib方式来生成代理类returning="val"
来获取返回值 , 配置文件和类中的参数名需要相同throwing="ex"
来获取异常 配置文件和类中的参数名需要相同joinPoint.proceed();//调用目标方法
如果不写,则目标方法不会执行,即只会执行前置增强和环绕增强的前置方法WebApplicationContextUtils.getWebApplicationContext(ServletContext sc);
获取到spring容器(根据key从ServletConetxt中获取) hibernateTemplate.execute(new HibernateCallback<T>() {
@Override
public T doInHibernate(Session arg0) throws HibernateException, SQLException {
// TODO Auto-generated method stub
return null;
}
})