L'annotation est un mécanisme similaire aux commentaires. L'ajout d'annotations au code peut utiliser les informations ultérieurement. Contrairement aux annotations, les annotations sont à voir. La machine virtuelle Java ne sera pas compilée et les annotations ne seront pas compilées, mais nous pouvons lire les informations contenues dans les annotations via le mécanisme de réflexion. Les annotations utilisent le mot-clé @interface et héritent de java.lang.annotition.Annotition
Le framework Spring nous fournit la fonction d'annotation.
Utiliser la programmation d'annotations consiste principalement à remplacer les fichiers XML et à accélérer le développement. Cependant, l'utilisation de fichiers XML consiste à modifier le programme pour modifier le code source. Si vous n'utilisez pas de fichiers XML maintenant, cela ne violerait-il pas le principe d'ouverture et de fermeture ? Cependant, les annotations sont également meilleures que les annotations. L'utilisation d'annotations ne nécessite pas la configuration d'autant de fichiers XML. La chose la plus importante est une efficacité de développement élevée. .
Lorsque les annotations ne sont pas utilisées, de nombreuses balises 60e23eb984d18edbb092da6b8f295aba doivent être configurées dans le fichier de configuration applicationContext.xml du framework Spring pour déclarer les objets de classe. En utilisant les annotations, vous n'avez pas besoin d'ajouter des balises dans le fichier de configuration. Ajoutez plutôt des instructions à la position "annotation" de la classe correspondante. L'introduction spécifique est la suivante :
Le framework Spring utilise des annotations en couches.
Couche de persistance : @Repository ;
Couche de service : @Service
Couche de contrôle : @Controller
1 Pour utiliser des annotations, vous devez ajouter des fichiers d'espace de noms et de contraintes au fichier de configuration<.>
<beans ... xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation=" ... http://www.springframework.org/schema/contexthttp://www.springframework.org/schema/context/spring-context-2.5.xsd ">2, indiquez au framework quelles classes utilisent les annotations.
<context:component-scan base-package="com.lsz.spring" />3, annotation de couche de persistance
Package com.lsz.spring; @Repository public class UserDao{ //。。。。 }@Repository
est équivalent à
<bean id="userDao" class="com.lsz.spring.UserDao" />4 dans la configuration fichier , l'annotation de la couche de service
@Service(value="testService") public classTestService { @Resource//相当于自动装配 private UserDao userDao ; public UserDao getUserDao() { returnuserDao; } public void setUserDao(UserDao userDao) { this.userDao= userDao; } }@Resource est une combinaison de relations entre les objets. La méthode byName est utilisée par défaut pour l'assemblage. trouvé en fonction du nom, ByType sera à nouveau utilisé pour continuer la recherche.
<bean id="testService" class="com.lsz.spring.UserService" />5, l'annotation de la couche de contrôle
@Controller(value="ua") @Scope(value="prototype") public class UserAction { @Resource private UserService userService ; public UserService getUserService() { returnuserService; } }
L'annotation @Controller est équivalente à
<bean id="ua" class="com.lsz.spring.UserAction " />
ServletContext application =request.getSession().getServletContext(); ApplicationContextac = WebApplicationContextUtils.getWebApplicationContext(application); UserAction useraction = (UserAction)ac.getBean("ua");//获取控制层对象 response.setContentType("text/html;charset=GBK");//设置编码 PrintWriter out =response.getWriter(); //分别将三个层的对象打印出来。 out.println("Action:"+userAction); out.println("Service:"+userAction.getUserService()); out.println("Dao:"+userAction.getUserService().getUserDao());Ce qui précède est le contenu des annotations d'apprentissage du framework Spring (5). Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (www.php.cn) !