springmvc的例子在调用action时spring注入成功,但是在访问时注入的东西是null
我在做一个基本的spring mvc的例子action是用注解的mvc。
接口
Java code
?
1
2
3
4
5
public inte易做图ce ITest {
public void say();
}
接口的实现类
Java code
?
1
2
3
4
5
6
public class TestImpl implements ITest{
public void say() {
System.out.println("I am TestImpl");
}
}
Action类的代码是
Java code
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
@Controller
@RequestMapping("person")
public class UrAction extends JdbcTem{
private ITest test;
@RequestMapping("/say")
public String say(){
test.say();
return null;
}
public ITest getTest() {
return test;
}
public void setTest(ITest test) {
System.out.println("--注解--"+test);
this.test = test;
}
}
配置文件的地方是
Java code
?
1
2
3
4
5
<bean id="test" class="com.ur.action.TestImpl"></bean>
<bean id="urAction" class="com.ur.action.UrAction">
<property name="test" ref="test"></property>
</bean>
服务器启动的时候,控制台打印出了如下信息,表示注解进去了
--注解--com.ur.action.TestImpl@c6f734
但是我网址访问
http://127.0.0.1:8080/SprintTest/person/say.do
确是null异常。如果加上@Autowired,可以注解进去,但是我不想用注解的方式注入
请问各位高手,我该怎么办。 --------------------编程问答-------------------- bean的id值和对应的对象相等就行了。 --------------------编程问答-------------------- 如果实在不喜欢注解,那就用传统的XML配置的方式在applicationContext.xml里面写Bean的配置进行注入呗。 --------------------编程问答-------------------- 类似的
<beans>
<bean id="dateBean" class="java.util.Date"/>
<bean id="helloBean" class="onlyfun.caterpillar.HelloBean" autowire="autodetect">
<property name="helloWord">
<value>Hello!</value>
</property>
</bean>
</beans>
http://www.cnblogs.com/kael/archive/2012/03/05/luojingqing.html
--------------------编程问答-------------------- 除 --------------------编程问答-------------------- 估计是你配置的解析器是根据注解去解析的 所以到值无法识别xml配置方式
吧你的配置发出来看看 --------------------编程问答-------------------- @Controller
你都使用的注解了,
初始化时不会去配置文件里找了
补充:Java , Java EE