由Spring创建dao和service

时间:2022-07-28
本文章向大家介绍由Spring创建dao和service,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

    <bean id="productDao" name="dao" class="dao.impl.ProductDaoImpl"></bean>


    <bean id="productService" name="service" class="service.impl.ProductServiceImpl">
<!--        给对象进行赋值-->
        <property name="productDao" ref="productDao"></property>
    </bean>

</beans>

TestSpring02 .java

package test;

import dao.ProductDao;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import service.ProductService;

/**
 * zt
 * 2020/9/27
 * 11:08
 */
public class TestSpring02 {
    @Test
    public void test(){
        ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
//    <bean id="productDao" name="dao" class="dao.impl.ProductDaoImpl"></bean>
        //根据id拿对象
        ProductDao productDao = (ProductDao)ac.getBean("productDao");
        System.out.println("productDao"+productDao);
        productDao.insert();

        //根据name拿对象
        ProductDao productDao2 = (ProductDao)ac.getBean("dao");
        System.out.println("productDao2"+productDao2);
        productDao2.insert();

        //根据class拿到
        ProductDao productDao3 = (ProductDao)ac.getBean(ProductDao.class);
        System.out.println("productDao3"+productDao3);
        productDao3.insert();
    }

    @Test
    public void testService(){
        ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
        ProductService productService = (ProductService)ac.getBean(ProductService.class);
        System.out.println(productService);
        productService.insert();
    }


}