Dieser Artikel bietet Ihnen eine detaillierte Einführung (Codebeispiel) zum Laden von Submodul-Konfigurationsdateien. Ich hoffe, dass er Ihnen als Referenz dienen wird.
Ich habe in den letzten zwei Tagen begonnen, das SpringBoot-Framework zu erlernen. Laut der offiziellen Dokumentation bin ich jedoch auf das Problem gestoßen, dass ich mit Maven mehrere Module erstellt habe Die Konfigurationsdatei des Untermoduls wurde nicht geladen.
Die Projektstruktur ist wie folgt
zero |-ws |-service |-dao |-entity
<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies>
<dependencies> <dependency> <groupId>cn.xmcui.zero</groupId> <artifactId>service</artifactId> <version>1.0-SNAPSHOT</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <!--指定该class为全局唯一入口--> <mainClass>cn.xmcui.zero.Application</mainClass> <fork>true</fork> <layout>ZIP</layout> </configuration> <executions> <execution> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
ws' application.yml
server: port: 80 servlet: session: timeout: 60 tomcat: uri-encoding: utf-8
<dependencies> <dependency> <groupId>cn.xmcui.zero</groupId> <artifactId>entity</artifactId> <version>1.0-SNAPSHOT</version> </dependency> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.3.2</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.47</version> </dependency> </dependencies>
application.yml
spring: datasource: url: jdbc:mysql://localhost:3306/zero?useUnicode=true&characterEncoding=utf-8&useSSL=false username: root password: root driver-class-name: com.mysql.jdbc.Driver mybatis: mapper-locations: classpath:mapper/*.xml type-aliases-package: cn.xmcui.zero.entity
@SpringBootApplication(scanBasePackages = "cn.xmcui.zero") @MapperScan(basePackages = "cn.xmcui.zero.mapper") public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } }
Dann Der Willkommensfehler wird gemeldet
*************************** APPLICATION FAILED TO START *************************** Description: Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured. Reason: Failed to determine a suitable driver class Action: Consider the following: If you want an embedded database (H2, HSQL or Derby), please put it on the classpath. If you have database settings to be loaded from a particular profile you may need to activate it (no profiles are currently active).
Die Datenbankkonfigurationsdatei wurde nicht gefunden
Ich habe nach vielen Informationen gesucht und viele Umwege in Kauf genommen Schneiden Sie die gesamte application.yml der Dao-Ebene in die .yml-Anwendung ein. Dies bedeutet, dass die Konfigurationsdatei der Dao-Ebene nicht geladen wurde Ich habe eine Möglichkeit gefunden, die Konfigurationsdatei zu laden:
Ich werde die WS-Ebene anwenden. .yml in application-dev.yml umbenennen; die Konfigurationsdatei der Dao-Ebene in application-dao.yml umbenennen (damit die Konfigurationsdateien nicht den gleichen Namen haben, beachten Sie bitte, dass der Konfigurationsdatei nach dem Umbenennen das Präfix „application-“ vorangestellt werden muss); Zu ladende Konfigurationsdateien
Der Vorgang ist abgeschlossen und das System startet erfolgreich
Ursprünglich eine sehr einfache Frage, aber es hat lange gedauert. Es gibt noch eine Sache, über die ich mich beschweren muss . Die Qualität von SpringBoot-bezogenen Blogs ist derzeit sehr gemischt. Viele Leute verwenden es immer noch, aber die neuen Funktionen sind wirklich sinnlos
Das obige ist der detaillierte Inhalt vonDetaillierte Einführung in die Konfigurationsdatei des SpringBoot-Ladesubmoduls (Codebeispiel). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!