工程spring-java
1)file-new -maven project-等-quick start-工程名spring-java-finish
2)建包com.neuedu.module.dao
com.neuedu.module.servie
3)把上个工程建的dao,service拷贝过来(强调一下,service中引入的dao包必须更改)
4)新建包com.neuedu.config
5)在com.neuedu.config包下新建ModuleConfig.java
package com.neuedu.config;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
//@Configuration表示该文件为配置文件
//@ComponentScan表示扫描哪些包下的注解
@Configuration
@ComponentScan(basePackages={"com.neuedu.module"})
public class ModuleConfig {
}
6)在dao类上加注解@Repository("userDao") 表明我是仓储类
@Repository("userDao")
public class UserDaoImpl implements IUserDao {
@Override
public int login(String username, String pwd) {
System.out.println(username+"登录"+"密码为:"+pwd);
return 0;
}
}
7)service类上加注解@Servcie("userService") 表明我是业务类
把userDao自动注入用@Autowired
完整代码:
package com.neuedu.module.service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.neuedu.module.dao.IUserDao;
@Service("userService")
public class UserServiceImpl implements IUserService {
@Autowired
private IUserDao userDao;
@Override
public int login(String username, String pwd) {
return userDao.login(username, pwd);
}
public IUserDao getUserDao() {
return userDao;
}
public void setUserDao(IUserDao userDao) {
this.userDao = userDao;
}
}
8)写测试类
package com.neuedu.spring_java;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import com.neuedu.config.ModuleConfig;
import com.neuedu.module.service.IUserService;
public class SpringJTest {
@Test
public void test1(){
//加载配置文件 (AnnotationConfigApplicationContext注解配置文件方式)
ApplicationContext ctx=new AnnotationConfigApplicationContext(ModuleConfig.class);
//读取bean
IUserService service=(IUserService) ctx.getBean("userService");
//调用bean里的方法
service.login("陈昊", "123456");
}
}
网友评论