Spring实战之@Autowire注解用法详解

网友投稿 427 2023-07-03

Spring实战之@Autowire注解用法详解

Spring实战之@Autowire注解用法详解

本文实例讲述了Spring实战之@Autowire注解用法。分享给大家供大家参考,具体如下:

配置

xmlns:xsi="http://w3.org/2001/XMLSchema-instance"

xmlns:context="http://springframework.org/schema/context"

xsi:schemaLocation="http://springframework.org/schema/beans

http://springframework.org/schema/beans/spring-beans-4.0.xsd

httSilYeKp://springframework.org/schema/context

http://springframework.org/schema/context/spring-context-4.0.xsd">

base-package="org.crazyit.app.service,org.crazyit.app.dao"/>

xmlns:xsi="http://w3.org/2001/XMLSchema-instance"

xmlns:context="http://springframework.org/schema/context"

xsi:schemaLocation="http://springframework.org/schema/beans

http://springframework.org/schema/beans/spring-beans-4.0.xsd

httSilYeKp://springframework.org/schema/context

http://springframework.org/schema/context/spring-context-4.0.xsd">

base-package="org.crazyit.app.service,org.crazyit.app.dao"/>

base-package="org.crazyit.app.service,org.crazyit.app.dao"/>

二 dao接口

BaseDao

package org.crazyit.app.dao;

public interface BaseDao

{

void save(T e);

}

ItemDao

package org.crazyit.app.dao;

import org.crazyit.app.domain.*;

public interface ItemDao extends BaseDao

{

}

UserDao

package org.crazyit.app.dao;

import org.crazyit.app.domain.*;

public interface UserDao extends BaseDao

{

}

三 dao实现类

BaseDaoImpl

package org.crazyit.app.dao.impl;

import org.crazyit.app.dao.*;

public class BaseDaoImpl implements BaseDao

{

public void save(T e)

{

System.out.println("程序保存对象:" + e);

}

}

ItemDaoImpl

package org.crazyit.app.dao.impl;

import org.springframework.stereotype.*;

import org.crazyit.app.dao.*;

import org.crazyit.app.domain.*;

@Component("itemDao")

public class ItemDaoImpl extends BaseDaoImpl

implements ItemDao

{

}

UserDaoImpl

package org.crazyit.app.dao.impl;

import org.springframework.stereotype.*;

import org.crazyit.app.dao.*;

import org.crazyit.app.domain.*;

@Component("userDao")

public class UserDaoImpl extends BaseDaoImpl

implements UserDao

{

}

四 Bean

Item

package org.crazyit.app.domain;

public class Item

{

}

User

package org.crazyit.app.domain;

public class User

{

}

五 service接口

BaseService

package org.crazyit.app.service;

import org.springframework.stereotype.*;

import org.springframework.beans.factory.annotation.*;

import org.crazyit.app.service.*;

public interface BaseService

{

SilYeKvoid addEntity(T entity);

}

ItemService

package org.crazyit.app.service;

import org.springframework.stereotype.*;

import org.springframework.beans.factory.annotation.*;

import org.crazyit.app.service.*;

import org.crazyit.app.domain.*;

@Component

public interface ItemService extends BaseService

{

}

UserService

package org.crazyit.app.service;

import org.springframework.stereotype.*;

import org.springframework.beans.factory.annotation.*;

import org.crazyit.app.service.*;

import org.crazyit.app.domain.*;

@Component

public interface UserService extends BaseService

{

}

六 Service实现类

BaseServiceImpl

package org.crazyit.app.service.impl;

import org.springframework.stereotype.*;

import org.springframework.beans.factory.annotation.*;

import org.crazyit.app.dao.*;

import org.crazyit.app.service.*;

public class BaseServiceImpl implements BaseService

{

@Autowired

private BaseDao dao;

public void addEntity(T entity)

{

System.out.println("调用" + dao

+ "保存实体:" + entity);

}

}

ItemServiceImpl

package org.crazyit.app.service.impl;

import org.springframework.stereotype.*;

import org.springframework.beans.factory.annotation.*;

import org.crazyit.app.service.*;

import org.crazyit.app.domain.*;

@Component("itemService")

public class ItemServiceImpl extends BaseServiceImpl

implements ItemService

{

}

UserServiceImpl

package org.crazyit.app.service.impl;

import org.springframework.stereotype.*;

import org.springframework.beans.factory.annotation.*;

import org.crazyit.app.service.*;

import org.crazyit.app.domain.*;

@Component("userService")

public class UserServiceImpl extends BaseServiceImpl

implements UserService

{

}

七 测试类

package lee;

import org.springframework.context.ApplicationContext;

import org.springframework.context.support.ClassPathXmlApplicationContext;

import org.crazyit.app.service.*;

import org.crazyit.app.domain.*;

public class BeanTest

{

public static void main(String[] args)throws Exception

{

// 创建Spring容器

ApplicationContext ctx = new

ClassPathXmlApplicationContext("beans.xml");

UserService us = ctx.getBean("userService", UserService.class);

us.addEntity(new User());

ItemService is = ctx.getBean("itemService", ItemService.class);

is.addEntity(new Item());

}

}

八 测试

调用org.crazyit.app.dao.impl.UserDaoImpl@b7dd107保存实体:org.crazyit.app.domain.User@42eca56e调用org.crazyit.app.dao.impl.ItemDaoImpl@52f759d7保存实体:org.crazyit.app.domain.Item@7cbd213e

更多关于java相关内容感兴趣的读者可查看本站专题:《Spring框架入门与进阶教程》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》

希望本文所述对大家java程序设计有所帮助。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Spring实战之Qualifier注解用法示例
下一篇:SpringBoot基于数据库的定时任务统一管理的实现
相关文章

 发表评论

暂时没有评论,来抢沙发吧~