最近使用SprintMVC框架做项目,想在一个实体类中调用Service服务操作数据库,实体类注解了@Component,Service注解了@Autowired,但使用Service就是不起作用。
后查找各种资料解决。
注解起作用的关键地方在于配置@PostConstruct:被@PostConstruct修饰的方法会在服务器加载Servlet的时候运行,并且只会被服务器调用一次,类似于Serclet的inti()方法。被@PostConstruct修饰的方法会在构造函数之后,init()方法之前运行。加上注解后服务就能正常使用了。
如下图所示:
使用服务操作数据库: