La conveniencia de SpringBoot para el desarrollo del proyecto web no se describirá en este artículo. Principalmente quiere resumir y resumir la experiencia de construir proyectos de múltiples módulos basados en Springboot y Gradle en su trabajo.
1. Crea un proyecto
Primero, instale Java y Gradle. La versión Java seleccionada en este artículo es 1.8.0_40, y la versión de Gradle es 2.10. El proceso de instalación no se describirá en este artículo.
A continuación, cree el proyecto, llamado SpringBoot-Mm:
mkdir springboot-mm cd springboot-mm gradle init
La estructura del proyecto en este momento es la siguiente:
A continuación, cree múltiples módulos. Aquí, tome la web y los módulos como ejemplos, primero cree directorios relevantes.
Linux:
mkdir -p web/src/main/{java, recursos} web/src/test/{java, recurse} mkdir -p módulos/src/main/{java, recursos} módulos/src/test/{java, recursos}Windows:
mkdir web/src/main/java, web/src/main/recoutce, web/src/test/java, web/src/test/resurcemkdir módulos/src/main/java, módulos/src/main/resurce, módulos/str.
La estructura del directorio en este momento es la siguiente:
2. Modificar la configuración
Primero, modifique el archivo settings.gradle en el directorio raíz e introduce submódulos:
incluir 'web', 'módulos'
En segundo lugar, modifique el build.gradle en el directorio raíz:
// Configuración general de todos los subprojects subprojects {Aplicar complemento: 'java' aplicar complemento: 'idea' versión = '1.0.0' // El número de versión JVM requiere SourCompatibility = 1.8 TargetCompatibility = 1.8 // Cuando Java se compila, no se debe a los caracteres chinos por predeterminado [compilJava, compiletjava, javadoc]. 'UTf-8' repositorios {mavenLocal () maven {url "http://maven.aliyun.com/nexus/content/groups/public" "http://repo.spring.io/milestone" } maven { url 'http://maven.springframework.org/release' } maven { url 'http://maven.springframework.org/milestone' } } jar { manifest { attributes("Implementation-Title": "Gradle")}} // Mostrar todos los jars para compilar en el proyecto ListJars actual (descripción: 'Mostrar todos los jars de compilación.') << {configuratations.compile.each.each {archivo de archivo -> println file.name}} gradle.projectseValuate {tareas.withtype (javacompile) "-Xlint: deprecation"}}} A continuación, use IntelliJ (usando la versión 2016.3) para importar el proyecto. Después de que la importación sea exitosa, debe mostrarse de la siguiente manera:
Agregue el archivo web/build.gradle y modifíquelo para definir las dependencias del módulo web:
BuildScript {Repositories {mavenLocal () maven {url "http://maven.aliyun.com/nexus/content/groups/public"} Maven {url "http://repo.spring.io/snapshot" "http://repo.spring.io/milestone"} jcenter ()} dependencias {classpath ("org.springframework.boot: spring-boot-gradle-plugin: 1.4.5.release")}} Aplicar complemento: 'org.springframework.bootchivesbaseMeMe =' Web'ex '1.4.5.release'} dependencias {compilar proyecto (': módulos') // compilar de arranque de spring "org.springframework.boot: spring-boot-starter-web: $ springbootvar" testCompile "org.springframework.boot: spring-boot-starter-test: $ treingbootvar"}}}}}}}}}}}}}}}}Agregar módulos/build.gradle archivo. En este caso, los módulos son módulos dependientes de la web. Por lo general, puede poner funciones como ORM, pago, autenticación, etc. en diferentes módulos, lo que puede reducir el acoplamiento del programa y facilitar la expansión comercial. Los lectores pueden modificar módulos/compilación.
BootRepackage {habilitado = falso}Consulte las razones específicas aquí.
3. Agregar código de prueba
Agregar web/src/main/java/com/formalroom/application.java, el código de muestra es el siguiente
@ComponentsCan (BasePackages = {"com.formalroom"})@EnableautoconfigurationPublicPublic Class Application extiende SpringBootServletinitializer implementa IncreddedServletContainerCustomizer {public static void main (string args []) {springapplication.run (applicat.classs, args); } @Override public void personalizar (configurableRedDedServletContainer Container) {Container.SetPort (8081); }}Agregar web/src/main/java/com/formalroom/controlador/test1.java,
@ControllerPublic de clase test1 {@RequestMapping (value = "/test1", método = requestmethod.get) @ResponseBody public String test1 () {return "Spring Boot múltiples módulos Test"; }}Use un navegador para acceder a http://127.0.0.1:8081/test1, y se muestra lo siguiente:
El código de muestra completo está disponible aquí.
Lo anterior es todo el contenido de este artículo. Espero que sea útil para el aprendizaje de todos y espero que todos apoyen más a Wulin.com.