org.hibernate.resource.beans.container.spi.BeanContainer#getBean ( )源码实例Demo

下面列出了org.hibernate.resource.beans.container.spi.BeanContainer#getBean ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

@Test
public void testCanRetrieveBeanByNameWithJpaCompliantOptions() {
	BeanContainer beanContainer = getBeanContainer();
	assertNotNull(beanContainer);

	ContainedBean<MultiplePrototypesInSpringContextTestBean> bean = beanContainer.getBean(
			"multiple-1", MultiplePrototypesInSpringContextTestBean.class,
			JpaLifecycleOptions.INSTANCE, IneffectiveBeanInstanceProducer.INSTANCE
	);

	assertNotNull(bean);
	MultiplePrototypesInSpringContextTestBean instance = bean.getBeanInstance();
	assertNotNull(instance);
	assertEquals("multiple-1", instance.getName());
	assertSame(applicationContext, instance.getApplicationContext());
}
 
@Test
public void testCanRetrieveFallbackBeanByTypeWithJpaCompliantOptions() {
	BeanContainer beanContainer = getBeanContainer();
	assertNotNull(beanContainer);
	NoDefinitionInSpringContextTestBeanInstanceProducer fallbackProducer = new NoDefinitionInSpringContextTestBeanInstanceProducer();

	ContainedBean<NoDefinitionInSpringContextTestBean> bean = beanContainer.getBean(
			NoDefinitionInSpringContextTestBean.class,
			JpaLifecycleOptions.INSTANCE, fallbackProducer
	);

	assertEquals(1, fallbackProducer.currentUnnamedInstantiationCount());
	assertEquals(0, fallbackProducer.currentNamedInstantiationCount());

	assertNotNull(bean);
	NoDefinitionInSpringContextTestBean instance = bean.getBeanInstance();
	assertNotNull(instance);
	assertEquals(BeanSource.FALLBACK, instance.getSource());
	assertNull(instance.getApplicationContext());
}
 
@Test
public void testCanRetrieveFallbackBeanByNameWithJpaCompliantOptions() {
	BeanContainer beanContainer = getBeanContainer();
	assertNotNull(beanContainer);
	NoDefinitionInSpringContextTestBeanInstanceProducer fallbackProducer = new NoDefinitionInSpringContextTestBeanInstanceProducer();

	ContainedBean<NoDefinitionInSpringContextTestBean> bean = beanContainer.getBean(
			"some name", NoDefinitionInSpringContextTestBean.class,
			JpaLifecycleOptions.INSTANCE, fallbackProducer
	);

	assertEquals(0, fallbackProducer.currentUnnamedInstantiationCount());
	assertEquals(1, fallbackProducer.currentNamedInstantiationCount());

	assertNotNull(bean);
	NoDefinitionInSpringContextTestBean instance = bean.getBeanInstance();
	assertNotNull(instance);
	assertEquals(BeanSource.FALLBACK, instance.getSource());
	assertEquals("some name", instance.getName());
	assertNull(instance.getApplicationContext());
}
 
@Test
public void testCanRetrieveFallbackBeanByTypeWithNativeOptions() {
	BeanContainer beanContainer = getBeanContainer();
	assertNotNull(beanContainer);
	NoDefinitionInSpringContextTestBeanInstanceProducer fallbackProducer = new NoDefinitionInSpringContextTestBeanInstanceProducer();

	ContainedBean<NoDefinitionInSpringContextTestBean> bean = beanContainer.getBean(
			NoDefinitionInSpringContextTestBean.class,
			NativeLifecycleOptions.INSTANCE, fallbackProducer
	);

	assertEquals(1, fallbackProducer.currentUnnamedInstantiationCount());
	assertEquals(0, fallbackProducer.currentNamedInstantiationCount());

	assertNotNull(bean);
	NoDefinitionInSpringContextTestBean instance = bean.getBeanInstance();
	assertNotNull(instance);
	assertEquals(BeanSource.FALLBACK, instance.getSource());
	assertNull(instance.getApplicationContext());
}
 
@Test
public void testCanRetrieveFallbackBeanByNameWithNativeOptions() {
	BeanContainer beanContainer = getBeanContainer();
	assertNotNull(beanContainer);
	NoDefinitionInSpringContextTestBeanInstanceProducer fallbackProducer = new NoDefinitionInSpringContextTestBeanInstanceProducer();

	ContainedBean<NoDefinitionInSpringContextTestBean> bean = beanContainer.getBean(
			"some name", NoDefinitionInSpringContextTestBean.class,
			NativeLifecycleOptions.INSTANCE, fallbackProducer
	);

	assertEquals(0, fallbackProducer.currentUnnamedInstantiationCount());
	assertEquals(1, fallbackProducer.currentNamedInstantiationCount());

	assertNotNull(bean);
	NoDefinitionInSpringContextTestBean instance = bean.getBeanInstance();
	assertNotNull(instance);
	assertEquals(BeanSource.FALLBACK, instance.getSource());
	assertEquals("some name", instance.getName());
	assertNull(instance.getApplicationContext());
}
 
@Test
public void testCanRetrieveBeanByTypeWithJpaCompliantOptions() {
	BeanContainer beanContainer = getBeanContainer();
	assertNotNull(beanContainer);

	ContainedBean<SinglePrototypeInSpringContextTestBean> bean = beanContainer.getBean(
			SinglePrototypeInSpringContextTestBean.class,
			JpaLifecycleOptions.INSTANCE,
			IneffectiveBeanInstanceProducer.INSTANCE
	);

	assertNotNull(bean);
	SinglePrototypeInSpringContextTestBean instance = bean.getBeanInstance();
	assertNotNull(instance);
	assertSame(applicationContext, instance.getApplicationContext());
}
 
@Test
public void testCanRetrieveBeanByNameWithJpaCompliantOptions() {
	BeanContainer beanContainer = getBeanContainer();
	assertNotNull(beanContainer);

	ContainedBean<MultiplePrototypesInSpringContextTestBean> bean = beanContainer.getBean(
			"multiple-1", MultiplePrototypesInSpringContextTestBean.class,
			JpaLifecycleOptions.INSTANCE,
			IneffectiveBeanInstanceProducer.INSTANCE
	);

	assertNotNull(bean);
	MultiplePrototypesInSpringContextTestBean instance = bean.getBeanInstance();
	assertNotNull(instance);
	assertEquals("multiple-1", instance.getName());
	assertSame(applicationContext, instance.getApplicationContext());
}
 
@Test
public void testCanRetrieveFallbackBeanByTypeWithJpaCompliantOptions() {
	BeanContainer beanContainer = getBeanContainer();
	assertNotNull(beanContainer);
	NoDefinitionInSpringContextTestBeanInstanceProducer fallbackProducer = new NoDefinitionInSpringContextTestBeanInstanceProducer();

	ContainedBean<NoDefinitionInSpringContextTestBean> bean = beanContainer.getBean(
			NoDefinitionInSpringContextTestBean.class,
			JpaLifecycleOptions.INSTANCE,
			fallbackProducer
	);

	assertEquals(1, fallbackProducer.currentUnnamedInstantiationCount());
	assertEquals(0, fallbackProducer.currentNamedInstantiationCount());

	assertNotNull(bean);
	NoDefinitionInSpringContextTestBean instance = bean.getBeanInstance();
	assertNotNull(instance);
	assertEquals(BeanSource.FALLBACK, instance.getSource());
	assertNull(instance.getApplicationContext());
}
 
@Test
public void testCanRetrieveFallbackBeanByNameWithJpaCompliantOptions() {
	BeanContainer beanContainer = getBeanContainer();
	assertNotNull(beanContainer);
	NoDefinitionInSpringContextTestBeanInstanceProducer fallbackProducer = new NoDefinitionInSpringContextTestBeanInstanceProducer();

	ContainedBean<NoDefinitionInSpringContextTestBean> bean = beanContainer.getBean(
			"some name", NoDefinitionInSpringContextTestBean.class,
			JpaLifecycleOptions.INSTANCE,
			fallbackProducer
	);

	assertEquals(0, fallbackProducer.currentUnnamedInstantiationCount());
	assertEquals(1, fallbackProducer.currentNamedInstantiationCount());

	assertNotNull(bean);
	NoDefinitionInSpringContextTestBean instance = bean.getBeanInstance();
	assertNotNull(instance);
	assertEquals(BeanSource.FALLBACK, instance.getSource());
	assertEquals("some name", instance.getName());
	assertNull(instance.getApplicationContext());
}
 
@Test
public void testCanRetrieveFallbackBeanByTypeWithNativeOptions() {
	BeanContainer beanContainer = getBeanContainer();
	assertNotNull(beanContainer);
	NoDefinitionInSpringContextTestBeanInstanceProducer fallbackProducer = new NoDefinitionInSpringContextTestBeanInstanceProducer();

	ContainedBean<NoDefinitionInSpringContextTestBean> bean = beanContainer.getBean(
			NoDefinitionInSpringContextTestBean.class,
			NativeLifecycleOptions.INSTANCE,
			fallbackProducer
	);

	assertEquals(1, fallbackProducer.currentUnnamedInstantiationCount());
	assertEquals(0, fallbackProducer.currentNamedInstantiationCount());

	assertNotNull(bean);
	NoDefinitionInSpringContextTestBean instance = bean.getBeanInstance();
	assertNotNull(instance);
	assertEquals(BeanSource.FALLBACK, instance.getSource());
	assertNull(instance.getApplicationContext());
}
 
@Test
public void testCanRetrieveFallbackBeanByNameWithNativeOptions() {
	BeanContainer beanContainer = getBeanContainer();
	assertNotNull(beanContainer);
	NoDefinitionInSpringContextTestBeanInstanceProducer fallbackProducer = new NoDefinitionInSpringContextTestBeanInstanceProducer();

	ContainedBean<NoDefinitionInSpringContextTestBean> bean = beanContainer.getBean(
			"some name", NoDefinitionInSpringContextTestBean.class,
			NativeLifecycleOptions.INSTANCE,
			fallbackProducer
	);

	assertEquals(0, fallbackProducer.currentUnnamedInstantiationCount());
	assertEquals(1, fallbackProducer.currentNamedInstantiationCount());

	assertNotNull(bean);
	NoDefinitionInSpringContextTestBean instance = bean.getBeanInstance();
	assertNotNull(instance);
	assertEquals(BeanSource.FALLBACK, instance.getSource());
	assertEquals("some name", instance.getName());
	assertNull(instance.getApplicationContext());
}
 
@Test
public void testCanRetrieveBeanByTypeWithJpaCompliantOptions() {
	BeanContainer beanContainer = getBeanContainer();
	assertNotNull(beanContainer);

	ContainedBean<SinglePrototypeInSpringContextTestBean> bean = beanContainer.getBean(
			SinglePrototypeInSpringContextTestBean.class,
			JpaLifecycleOptions.INSTANCE, IneffectiveBeanInstanceProducer.INSTANCE
	);

	assertNotNull(bean);
	SinglePrototypeInSpringContextTestBean instance = bean.getBeanInstance();
	assertNotNull(instance);
	assertSame(applicationContext, instance.getApplicationContext());
}
 
@Test
public void testCanRetrieveBeanByTypeWithNativeOptions() {
	BeanContainer beanContainer = getBeanContainer();
	assertNotNull(beanContainer);

	ContainedBean<SinglePrototypeInSpringContextTestBean> bean = beanContainer.getBean(
			SinglePrototypeInSpringContextTestBean.class,
			NativeLifecycleOptions.INSTANCE, IneffectiveBeanInstanceProducer.INSTANCE
	);

	assertNotNull(bean);
	SinglePrototypeInSpringContextTestBean instance = bean.getBeanInstance();
	assertNotNull(instance);
	assertEquals("single", instance.getName());
	assertSame(applicationContext, instance.getApplicationContext());

	ContainedBean<SinglePrototypeInSpringContextTestBean> bean2 = beanContainer.getBean(
			SinglePrototypeInSpringContextTestBean.class,
			NativeLifecycleOptions.INSTANCE, IneffectiveBeanInstanceProducer.INSTANCE
	);

	assertNotNull(bean2);
	SinglePrototypeInSpringContextTestBean instance2 = bean2.getBeanInstance();
	assertNotNull(instance2);
	// Due to the lifecycle options, and because the bean has the "prototype" scope, we should not return the same instance
	assertNotSame(instance, instance2);
}
 
@Test
public void testCanRetrieveBeanByNameWithNativeOptions() {
	BeanContainer beanContainer = getBeanContainer();
	assertNotNull(beanContainer);

	ContainedBean<MultiplePrototypesInSpringContextTestBean> bean = beanContainer.getBean(
			"multiple-1", MultiplePrototypesInSpringContextTestBean.class,
			NativeLifecycleOptions.INSTANCE, IneffectiveBeanInstanceProducer.INSTANCE
	);

	assertNotNull(bean);
	MultiplePrototypesInSpringContextTestBean instance = bean.getBeanInstance();
	assertNotNull(instance);
	assertEquals("multiple-1", instance.getName());
	assertSame(applicationContext, instance.getApplicationContext());

	ContainedBean<MultiplePrototypesInSpringContextTestBean> bean2 = beanContainer.getBean(
			"multiple-1", MultiplePrototypesInSpringContextTestBean.class,
			NativeLifecycleOptions.INSTANCE, IneffectiveBeanInstanceProducer.INSTANCE
	);

	assertNotNull(bean2);
	MultiplePrototypesInSpringContextTestBean instance2 = bean2.getBeanInstance();
	assertNotNull(instance2);
	// Due to the lifecycle options, and because the bean has the "prototype" scope, we should not return the same instance
	assertNotSame(instance, instance2);
}
 
@Test
public void testCanRetrieveBeanByTypeWithNativeOptions() {
	BeanContainer beanContainer = getBeanContainer();
	assertNotNull(beanContainer);

	ContainedBean<SinglePrototypeInSpringContextTestBean> bean = beanContainer.getBean(
			SinglePrototypeInSpringContextTestBean.class,
			NativeLifecycleOptions.INSTANCE,
			IneffectiveBeanInstanceProducer.INSTANCE
	);

	assertNotNull(bean);
	SinglePrototypeInSpringContextTestBean instance = bean.getBeanInstance();
	assertNotNull(instance);
	assertEquals("single", instance.getName());
	assertSame(applicationContext, instance.getApplicationContext());

	ContainedBean<SinglePrototypeInSpringContextTestBean> bean2 = beanContainer.getBean(
			SinglePrototypeInSpringContextTestBean.class,
			NativeLifecycleOptions.INSTANCE,
			IneffectiveBeanInstanceProducer.INSTANCE
	);

	assertNotNull(bean2);
	SinglePrototypeInSpringContextTestBean instance2 = bean2.getBeanInstance();
	assertNotNull(instance2);
	// Due to the lifecycle options, and because the bean has the "prototype" scope, we should not return the same instance
	assertNotSame(instance, instance2);
}
 
@Test
public void testCanRetrieveBeanByNameWithNativeOptions() {
	BeanContainer beanContainer = getBeanContainer();
	assertNotNull(beanContainer);

	ContainedBean<MultiplePrototypesInSpringContextTestBean> bean = beanContainer.getBean(
			"multiple-1", MultiplePrototypesInSpringContextTestBean.class,
			NativeLifecycleOptions.INSTANCE,
			IneffectiveBeanInstanceProducer.INSTANCE
	);

	assertNotNull(bean);
	MultiplePrototypesInSpringContextTestBean instance = bean.getBeanInstance();
	assertNotNull(instance);
	assertEquals("multiple-1", instance.getName());
	assertSame(applicationContext, instance.getApplicationContext());

	ContainedBean<MultiplePrototypesInSpringContextTestBean> bean2 = beanContainer.getBean(
			"multiple-1", MultiplePrototypesInSpringContextTestBean.class,
			NativeLifecycleOptions.INSTANCE,
			IneffectiveBeanInstanceProducer.INSTANCE
	);

	assertNotNull(bean2);
	MultiplePrototypesInSpringContextTestBean instance2 = bean2.getBeanInstance();
	assertNotNull(instance2);
	// Due to the lifecycle options, and because the bean has the "prototype" scope, we should not return the same instance
	assertNotSame(instance, instance2);
}