1: Когда используются несколько клиентов, интерфейс Feign извлечен в публичную банку. В настоящее время класс стартапа клиента должен отсканировать пакет, где притворство находится в банке. Он должен быть зарегистрирован весной и притворяться одновременно. В противном случае оно будет сообщено при запуске: «Подумайте о определении боба типа '****** Fail' в вашей конфигурации».
@SpringbootApplication@enableTrancactionManagement@enabletiscoveryclient@componentscan (basepackages = {"com.lcamtech.aidis.feign", "com.lcamtech.aids.dts"})@enablefeignclients (basepackages = {"com.lcamtech.aidis.feign"})@enablecaching@mapperscan (basepackages = "com.lcamtech.aids.dts.mapper") Приложение открытого класса расширяет springbootservletinitializer {public static void main (string [] args) {Springapplication.run (Application.class, args); }}Ключевые моменты:
@Componentscan (basepackages = {"com.lcamtech.aidis.feign", "com.lcamtech.aids.dts"})@enablefeignclients (basepackages = {"com.lcamtech.aidis.feign"})Пакет Aidis - это банка, содержащая притворство. В настоящее время @componentscan также должен одновременно сканировать пакет этого проекта.
2: при использовании Fegin для передачи значения Get становится почтой
@Feignclient (value = "service-name") public interface userAccountfeign {@Requestmapping (value = "/ac/существует", method = requestmethod.get) public baseresult isexist (@requestparam ("mobile") String mobile);};};};};};};};};};};};};};};};};};Когда Feign будет передаваться, данные будут размещены в запросе по умолчанию по умолчанию, поэтому это приведет к запросу по умолчанию по умолчанию (бесполезно писать Get вовремя. В настоящее время @RequestParam должен быть объявлен в списке параметров, чтобы сделать нормальные запросы на получение GET.
3: Когда запрос Feign возвращает сложный объект
нравиться:
Результат открытого класса {частный строковый код; Приватное строковое сообщение; данные частного объекта; // get/set}Описание задачи: Когда запрос возвращает объект результата, значение данных внутри объекта станет LinkedHashmap и не будет преобразовано в соответствующий объект класса. Если передача будет непосредственно вынуждена, будет сообщена ошибка типа.
Решение 1: простое преобразование
/** * @description: преобразовать данные в соответствующий контейнер * @param bean * @param clazz * @return * @Throws * @Author sunf * @date 2018/6/20 10:28 */public static <t> t convertValue (Object Bean, Class <T> clazz) {try {objectMapper mapper = new objectmapper ();); return mapper.convertvalue (bean, clazz); } catch (Exception e) {log.Error ("Orring Oversion: beanUTil.convertValue () --->" + e.getMessage ()); вернуть ноль; }}Выше всего содержание этой статьи. Я надеюсь, что это будет полезно для каждого обучения, и я надеюсь, что все будут поддерживать Wulin.com больше.