Spring filed

本文展示了如何在Spring框架中使用IUserDao和IUserService接口的实现,通过UserDaoImpl和UserServiceImpl类完成数据操作。在applicationContext.xml中配置了@Autowired和@Resource注解的使用,并创建了对应的bean。最后,提供了一个测试方法来验证字段注入的正确性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、编写IUserDao接口和对应的实现类UserDaoImpl

package com.gx.dao;

import com.gx.model.User;

public interface IUserDao {

boolean insert(User user);

User selectUserByName(String name);

}

package com.gx.dao.impl;

import com.gx.dao.IUserDao;

import com.gx.model.User;

public class UserDaoImpl implements IUserDao {

@Override

public boolean insert(User user) {

System.out.println("UserDaoImpl_insert :"+user);

return true;

}

@Override

public User selectUserByName(String name) {

System.out.println("UserDaoImpl_selectUserByName:"+name);

User user=new User();

user.setName(name);

user.setAge(33);

return user;

}

}

2、编写IUserService接口和对应的实现类UserServiceImpl

package com.gx.service;

import com.gx.model.User;

public interface IUserService {

boolean insert(User user);

User selectUserByName(String name);

}

package com.gx.service.impl;import com.gx.dao.IUserDao;

import com.gx.model.User;

import com.gx.service.IUserService;

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

import javax.annotation.Resource;

public class UserServiceImpl implements IUserService {

//使用注解注入userDao

//@Autowired

@Resource(name = "userDao")

private IUserDao userDao;

@Override

public boolean insert(User user) {

return userDao.insert(user);

}

@Override

public User selectUserByName(String name) {

return userDao.selectUserByName(name);

}

}

3、配置applicationContext.xml

beans 属性内部最上部 添加配置:

<!--Spring 容器注册 @Autowired @Resource 注解,

当使用 <context:component-scan/> 后,就可以将 <context:annotation-config/> 移除了

也可以同时保留-->

<context:annotation-config/>

注意:只有配置这部分的行才可以引入注解的命名空间,否则报错。以上的配置隐式的注册了多个对注

释进行解析的处理器:AutowiredAnnotationBeanPostProcessor

CommonAnnotationBeanPostProcessorPersistenceAnnotationBeanPostProcessor等。

如果配置了 context:component-scan 后, context:annotation-config 就可以省略。这是因为在搞

版本的Spring中, context:component-scan 配置项其实也包含了自动注入上述processor的功能

<!--使用Filed注入(用于注解方式)-->

<bean id="userDao" class="com.gx.dao.impl.UserDaoImpl"/>

<bean id="userService" class="com.gx.service.impl.UserServiceImpl"/>

4、编写测试方法:

/**

* 使用Filed注入方式测试

* 注意:本测试对应为 XML配置Bean+@Autowired(@Resource)的情况@Test

public void testFiledAnnotation(){

IUserService userService= (IUserService) context.getBean("userService");

//insert

User user=new User();

user.setName("Filed Insert");

user.setAge(34);

userService.insert(user);

//

User user1=userService.selectUserByName("Filed Select");

System.out.println(user1);

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值