package com.graduation.project.dataCollector.service;
import com.graduation.project.dataCollector.service.pojo.User;
import com.graduation.project.dataCollector.service.dao.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.junit.runner.RunWith;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = { "classpath:spring-mybatis.xml" })
public class SpringMyBatisTest {
@Autowired
private UserService userService;
public static void main(String[] args) {
User user = userService.getUserByUsername("abc");
System.out.println(user.getUsername());
System.out.println(user.getPassword());
}
}
问题补充
如果用单元测试可以运行
package com.graduation.project.dataCollector.service;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import com.graduation.project.dataCollector.service.pojo.User;
import com.graduation.project.dataCollector.service.dao.UserService;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = { "classpath:spring-mybatis.xml" })
public class SpringMyBatisTest {
@Autowired
private UserService userService;
@org.junit.Test
public void test1() {
User user = userService.getUserByUsername("abc");
System.out.println(user.getUsername());
System.out.println(user.getPassword());
}
}
但是放到main里面就报错了
package com.graduation.project.dataCollector.service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import com.graduation.project.dataCollector.service.pojo.User;
import com.graduation.project.dataCollector.service.dao.UserService;
@ContextConfiguration(locations = { "classpath:spring-mybatis.xml" })
public class SpringMyBatisTest {
@Autowired
private UserService userService;
public static void main(String[] args) {
new SpringMyBatisTest().test();
}
public void test() {
User user = userService.getUserByUsername("abc");
}
}
问题补充
@ContextConfiguration(locations = { "classpath:spring-mybatis.xml" })
public class SpringMyBatisTest {
@Autowired
private UserService userService;
public static void main(String[] args) {
SpringMyBatisTest main = new SpringMyBatisTest();
main.test();
}
public void test() {
User user = userService.getUserByUsername("abc");
}
}
怎么初始化
userService
是一个非静态变量(static
)不能在静态方法(static method
)中使用。建议题主要补一下 Java 基础。