Cinq minutes pour apprendre Java: Un article avec un printemps, vous apprenez à connaître le seau de la famille Paquet

Déclaration originale

Cet article a paru dans le numéro de micro-chaîne publique [programmeurs] Huang oblique

Auteur: Huang oblique

Réimpression s'il vous plaît indiquer la source et l'auteur au début de l'article.

Cet article Mind Mapping

Qu'est-ce printemps, pourquoi ne voulez-vous apprendre printemps?

Votre premier ressort de contact est dans ce laps de temps? Je crois que beaucoup de gens comme moi, la première fois de savoir le printemps ne fait pas le projet à utiliser, mais a vu ou entendu est un cadre appelé le printemps de l'Internet, connu sous le cadre fini avant les struct d'explosion et structs2, d'attirer beaucoup de l'attention des gens.

Donc, il n'y a pas de printemps magique à la fin de celui-ci, selon les dossiers, le délai est apparu au printemps 2002, quand il encombrant pour cadre EJB sans fin de vives critiques, mais aussi pour struct ces cadres ont aussi une attitude défavorable, cette fois-ci dès le premier jour du printemps et, parmi le grand nombre de développeurs Java sauver des misères indicibles.

Jetons un coup d'oeil à Baidu Encyclopédie de la définition du printemps, le printemps est cadre en raison de la complexité du développement logiciel créé. Le printemps est la JavaBean de base utilisé pour faire des choses auparavant uniquement être effectuées par EJB. Cependant, le printemps ne se limite pas à l'utilisation de développement côté serveur. La grande majorité des applications Java peuvent bénéficier de la simplicité, la testabilité et le couplage lâche du point de vue du printemps.

◆ Objectif: Pour faire face à la complexité du développement d'applications d'entreprise

◆ Fonction: au lieu d'utiliser la base JavaBeans EJB, et fournit plus d'applications d'entreprise

◆ Gamme: Toute application Java

Le ressort est une inversion légère de commande (COI) et la section de face (AOP) du cadre du conteneur.

cadre de printemps pour aborder les points de douleur existe deux programmeurs dans le développement Java et à long terme, qui est, le haricot et la section de gestion unifiée, et au printemps le CIO et AOP résout simplement les deux problèmes.

image

En fait, le contenu de l'écologie du printemps coloré, en plus des modules mentionnés sur la carte, et maintenant le printemps a été développé pour springboot et springcloud, fournir de très hautes solutions de qualité pour les micro-services, pile technologique back-end.

Aujourd'hui, le cadre de printemps est devenu un programmeur Java doit connaître le contenu sera, alors apprendre comment démarrer le cadre du printemps, est devenu un sujet dont nous discutons aujourd'hui.

Tout d'abord, jetez un oeil à la façon dont la partie de base de printemps devrait apprendre.

base de ressort

image

Le ressort de base est le CIO et AOP, et de connaître ces deux choses, vous pouvez dire qu'ils ont appris au printemps (mais pas)

Tout d'abord, nous allons jeter un oeil à l'essence de la COI, la COI est le cadre de gestion des haricots pour le faire, le printemps lui-même maintient un conteneur de haricots, tous les haricots sera la gestion unifiée, de cette façon, la nécessité d'utiliser toutes les instances ne ont pas besoin d'écrire lourde scène et répété code instanciation, mais simplement une déclaration terminée et le haricot d'injection dépendant.

Voici un exemple de simple.

S'il n'y a pas de printemps de la COI, nous pouvons être peu pratique lorsque des exemples de gestion, comme le morceau de code suivant, nous devons être instancié à UserService et Bookservice dans la méthode constructeur, l'injection et la dépendance correspondante, sinon il n'y a aucun moyen de compléter sa propre initialisation a. Même lorsque nous devons utiliser propre instanciation du contrôleur il.

class QueryController{
    UserService userService;
    BookService bookservice;
    QueryController() {
        userService = new UserService;
        userService.setUserDao(new UserDap()); bookservice = new BookService; bookservice.setBookDao(new BookDao()); } public static void main(Strings[] args) { QueryController queryController = new QueryController(); } } 

Une fois que nous utilisons le cadre du printemps, en utilisant ses fonctions d'injection de dépendance, vous pouvez économiser beaucoup de choses. Comme le montre le code suivant.

@Controller
class QueryController{
    @Autowired
    UserService userService;
    
    @Autowired
    BookService bookservice;
}

Bien sûr, ici aussi muni d'une annotation fonction de ressort, comme annotation @Controller cela, une classe peut être déclarée en tant que contrôleur, le réservoir à grains ressort instancier et à un traitement spécial conformément au contrôleur, et le @ Autowired annotations, vous pouvez mettre exemple UserService et Bookservice sont injectés dans des années QueryController, et tout cela, parce que le printemps de la COI pour vous aider à réaliser la gestion des haricots.

Bien sûr, Bookservice de UserService lui-même et peut également compter sur leur dao couche (couche de persistance) correspondante est injecté par la manière du CIO.

Ensuite, le CIO, AOP est un regard sur la façon d'y parvenir.

AOP essence est l'utilisation de la section proxy dynamique pour compléter l'unification de la fonction, l'utilisation de l'AOP, nous pouvons mettre quelques-uns des mêmes types de réutilisation de code transversal, comme l'interception de connexion, la vérification de l'identité, la gestion de la sécurité, etc., qui ne nécessitent pas le code embarqué dans les affaires quand, mais ils utilisent souvent quelque chose, vous pouvez utiliser AOP pour faire une coupe, puis spécifiez la méthode exige que l'interception, ajoutée à l'objet proxy AOP via un proxy dynamique coupera le code, de sorte que vous exécutez le code d'entreprise, plutôt à la mise en œuvre de l'objet proxy, il appellera la section de la méthode en conséquence.

L'un des plus dynamiques proxy simple à réaliser ce qui suit:

import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;
public class Main { public static void main(String[] args) { InvocationHandler handler = new InvocationHandler() { [@Override](https://my.oschina.net/u/1162528) public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { System.out.println(method); if (method.getName().equals("morning")) { System.out.println("Good morning, " + args[0]); } return null; } }; Hello hello = (Hello) Proxy.newProxyInstance( Hello.class.getClassLoader(), // 传入ClassLoader new Class[] { Hello.class }, // 传入要实现的接口 handler); // 传入处理调用方法的InvocationHandler hello.morning("Bob"); } } interface Hello { void morning(String name); } 

Les résultats seront sortie

public abstract void test.Hello.morning(java.lang.String) Good morning, Bob 

InvocationHandler qui est le code de la classe proxy et AOP proxy dynamique est l'occasion de réaliser, vous pouvez jouer gratuitement, vous voulez utiliser le code dans la classe proxy.

En fait, en plus du CIO et AOP, le printemps il y a encore beaucoup d'entre nous utilisent souvent des composants et des modules, comme les transactions, telles que JDBC, un autre JMS exemple (service de messagerie) et ainsi de suite, ces composants technologiques communs ont été intégrés dans le cadre du printemps dans notre très facile à utiliser.

SpringMVC

ressort terminé, l'étape suivante a été le SpringMVC talk,

Selon l'introduction Baidu Baike, une partie Spring MVC du produit suivi SpringFrameWork a été intégré à l'intérieur Spring Web Flow. Spring fournit un cadre pour la création d'applications Web Module MVC complet. Utilisez l'architecture Spring connectable MVC pour utiliser Spring lorsque le développement WEB, vous pouvez choisir d'utiliser le framework Spring MVC ou intégration de printemps avec d'autres cadres de développement MVC, comme Struts1 (maintenant faire généralement pas), Struts 2 (ancienne utilisation générale du projet) et ainsi de suite.

image

En tant que développeur web, le ressort de la COI et la lumière AOP Je crains que vous ne pouvez pas soutenir le développement d'une page, le rôle SpringMVC est de vous aider à atteindre le plus le développement web efficace, fait ses adieux à cadre de struct.

En bref, SpringMVC fournit un modèle de développement typique mvc, m est la couche de modèle, est chargé de fournir le modèle de données et d'interagir avec la base de données, et C représente le contrôleur, et responsable du processus de distribution des requêtes web, appelé ici le demande HTTP, le contrôleur général traite la requête correspondant à l'URL Web, et renvoie le contenu correspondant, et en retour le contenu de cette partie de la fonction, vous devez v est la couche de vue fournit, après avoir rendu la page est très gênant les choses, retourner l'objet pourrait être, pourrait être JSON, il est peut-être une page html, couche de vue sur gérer ces tâches.

modèle de développement MVC ne résout beaucoup de problèmes ingénieurs web, SpringMVC comme cadre de mvc pionnier est aussi très naturel pour devenir la domination de Java.

Avec le développement de la technologie Java et le changement, a Java peut faire beaucoup plus que le développement web, et maintenant les micro-services, middleware, dont beaucoup sont mises en œuvre en Java populaires, et source naturellement le développement écologique par cela semble springboot, springcloud est devenu la référence du cadre open-source de l'industrie.

Le temps est limité, le contenu restant dans l'avenir, nous continuerons de lancer, restez à l'écoute.

Ressources recommandées

printemps livres, didacticiels vidéo sont en fait beaucoup, je pense aussi ici pour ramasser quelque chose de bon recommander à tout le monde.

En fait, le printemps est les meilleures ressources techniques officielles: https: //spring.io/

Bon étudiants anglais voudront peut-être aller directement à la documentation officielle.

Livres

Boot combat printemps, Ding Xuefeng (traducteur)

une analyse approfondie source de printemps

vidéo

Ici, je mets ensemble une vidéo pour partager une assez bonne ressource pour tout le monde, comme décrit dans [programmeurs] Huang réponse oblique dans un numéro public « printemps » pour voir

Blog

entrepôt de la technologie Java « Guide d'examen de Java Programmer »

https://github.com/h2pl/Java-Tutorial

Java ensemble du réseau de vous apprendre le contenu à l'aide de haute qualité intégrée de base à un examen systématique Java avancée

Guide d'entretien

Le réseau entier Guide Java le plus chaud Interview, un total de plus de 200 pages, très pratique, que ce soit pour examen ou la préparation des entrevues sont bons. la technologie Java dans les rivières et les lacs publics [n] répondre « PDF » pour recevoir gratuitement.

Écrit dans la dernière

Si vous pensez que cet article est utile pour vous, vous ne voulez pas dire votre « belle » Ha, cercle avant d'amis est mon plus grand soutien que vous, votre soutien est mon plus grand encouragement.

Toutes les suggestions et commentaires sur cette série d'articles, les commentaires sont également les bienvenus pour me dire, attendons avec impatience vos commentaires.

Source: http://www.1994july.club/

Je suppose que tu aimes

Origine www.cnblogs.com/1994jinnan/p/12578065.html
conseillé
Classement