La démo de cet article est basée sur le cas d'entrée sur le site officiel du printemps. Bien sûr, j'ai apporté quelques modifications.
La structure de mon projet Web Maven est la suivante :
Ajouter des dépendances Spring dans pom.xml :
接下来我们开始创建需要用到的类:
package com.mm.service; public interface MessageService { String getMessage(); }
package com.mm.service.impl; import com.mm.service.MessageService; public class MessageServiceImpl implements MessageService{ @Override public String getMessage() { return "hello mm"; } }
Je n'ai pas besoin d'injection sous forme de fichier de configuration Spring ici, j'ai donc créé une nouvelle classe de fichier de configuration
package com.mm.main.spring; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import com.mm.service.MessageService; import com.mm.service.impl.MessageServiceImpl; @Configuration @ComponentScan(basePackages = "com.mm") public class ApplicationConfig { @Bean MessageService messageService() { return new MessageServiceImpl(); } }
Créer un nouveau bean pour appeler le service
package com.mm.main.spring; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import com.mm.service.MessageService; @Component public class MessagePrinter { @Autowired private MessageService messageService; public void printMessage() { System.out.println(this.messageService.getMessage()); } }
Terminer enfin le travail d'écriture du client
package com.mm.main.spring; import org.springframework.context.ApplicationContext; import org.springframework.context.annotation.AnnotationConfigApplicationContext; public class Client { public static void main(String[] args) { ApplicationContext context=new AnnotationConfigApplicationContext(ApplicationConfig.class); MessagePrinter messagePrinter=context.getBean(MessagePrinter.class); messagePrinter.printMessage(); } }
L'impression en arrière-plan est la suivante :
Ensuite, nous l'injectons à l'aide d'annotations. Tout d'abord, supprimez le bean MessageService dans la classe du fichier de configuration
<.>@Configuration @ComponentScan(basePackages = "com.mm")public class ApplicationConfig {// @Bean// MessageService messageService() {// return new MessageServiceImpl();// }}
@Service//注解方式public class MessageServiceImpl implements MessageService{ @Overridepublic String getMessage() {return "hello mm"; } }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!