Les étudiants qui ne sont pas clairs sur OpenFeign peuvent se référer à mon article: Springboot ~ OpenFeign dit au revoir à HttpClient à partir de maintenant
Pour OpenFeign, cela nous aide à résoudre le problème du serveur de serveur. Vous n'avez pas besoin de vous soucier de l'URI du serveur, il vous suffit de connaître son nom de service dans Eureka. Dans le même temps, après avoir déterminé les paramètres et la valeur de retour de la méthode de service avec le serveur, nous pouvons se moquer de ces méthodes de serveur lors des tests unitaires, et vraiment obtenir des tests unitaires sans interagir avec les ressources externes.
Aujourd'hui, nous parlerons principalement du problème de la lecture des fichiers JSON dans OpenFeign. Nous stockons les données requises pour le test dans le fichier, et l'accent est relativement simple lors de la modification.
La classe d'aide JSON utilise principalement l'objet ObjectMapper
/ ** * Convertir JSON en un objet. * * @Param Path Fichier Path * / public <T> t Fromjson (String Path, class <T> CLS) {try {return objectMapper.readValue (this.fromresource (path, charsets.utf_8), cls); } catch (exception e) {lancer un nouveau illégalStateException ("lire JSON a échoué:" + path, e); }} / ** * Convertir le tableau JSON en liste d'objets. * * @Param Path Fichier Path * / public <T> list <T> listFromjson (String Path, typereference typereference) {try {return objectMapper.readValue (fromSource (path, charsets.utf_8), typereference); } catch (exception e) {lancer un nouveau illégalStateException ("lire JSON a échoué:" + path, e); }}Dans le type simulé, vous pouvez utiliser cette méthode pour lire le contenu du fichier JSON
@ Configuration @ Profil ("Integtest") classe publique ServiceClientMock {@Bean public ServeClient RegisterserviceClient () {accountClient client = mock (accountClient.class); quand (client.del (anyString (), anyString (), anyString (), anyMap ())). thereraturn (fromjson ("order / orders.json", map.class)); }}Le code ci-dessus simule principalement la méthode del dans l'objet ServiceClient. Il a trois paramètres d'entrée de caractères et la valeur de retour est lue à partir du fichier JSON. Dans le test unitaire, l'objet ServiceClientMock est directement injecté.
Comme vous pouvez le voir à partir de l'annotation @profile, il fonctionne dans l'environnement entier et dans l'environnement de production, il utilisera de vrais services.
Résumer
Ce qui précède est le Springboot OpenFeign Reading Data des fichiers JSON introduits par l'éditeur. J'espère que ce sera utile à tout le monde. Si vous avez des questions, veuillez me laisser un message et l'éditeur répondra à tout le monde à temps. Merci beaucoup pour votre soutien au site Web Wulin.com!