Maison >Java >javaDidacticiel >Analyse de l'exemple d'utilisation de la mise en route de Springboot
La création de projets peut être créée dans IDEA.
Remarques :
1. Tous les fichiers doivent être placés dans :
Fichier d'application au même niveau ou dans le répertoire de niveau inférieur
2. projet de démarrage, et il ne peut y avoir qu'un seul fichier de configuration principal.
3. Pour l'utilisation des fichiers de configuration de base dans plusieurs environnements, le nom du fichier doit commencer par application-!
application-xxx.properties
(1) Environnement de développement
# 开发环境配置文件 server.port=9000 server.servlet.context-path=/
(2) Tests
# 测试环境配置文件
(3) Environnement de production
# 生产环境配置文件 server.port=7000
Activez notre fichier de configuration personnalisé dans le fichier de configuration principal :
#激活我们编写的application-xxx.properties配置文件 spring.profiles.active=dev
4, @Value annotation
propriétés de configuration personnalisées du fichier de configuration principal spring-boot, comment les obtenir
La méthode suivante ne peut obtenir qu'un seul attribut à la fois !
Par exemple : une configuration website=http://www.baidu.com est personnalisée dans le fichier application.properties
Obtenez cette configuration personnalisée dans le projet :
Utilisez l'annotation @Value("${website}" )
Vous pouvez également écrire une valeur par défaut. Si l'élément de configuration n'existe pas, la valeur par défaut @Value("${website: default value}") sera utilisée
package com.lxc.sprint_boot_01.web; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import javax.management.ValueExp; import javax.print.DocFlavor; // 声明控制层 @Controller public class IndexController { @Value("${website:values}") private String name; // 此时website值会赋给name属性 @RequestMapping(value = "/self") @ResponseBody public String self() { return name; } }
5, @Component et @ConfigurationProperties(prefix=). "xxx") Annotation
Le fichier de configuration de base de spring-boot mappe nos propriétés de configuration personnalisées à un objet (ce qui est obtenu est un objet). La condition préalable pour utiliser cette méthode : les propriétés du fichier de configuration doivent être préfixées !
fichier application.properties
# 属性前边必须要有前缀,我这里前缀是user user.name=lxc user.password=123456
config -> fichier user.java
package com.lxc.sprint_boot_01.config; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component; @Component // 将此类交给spring容器管理 @ConfigurationProperties(prefix = "user") // 配置属性注解,参数前缀必须有值,值为我们定义的前缀 // 配置完上边的两个注解,下边把配置文件中的属性映射到下边类中去 public class User { private String username; private String password; public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } }
Propriétés d'appel
6. Ajoutez l'annotation @ConfigurationProperties, et l'avertissement rouge ci-dessus apparaîtra. vous devez ajouter un package de dépendances :
package com.lxc.sprint_boot_01.web; import com.lxc.sprint_boot_01.config.User; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import javax.management.ValueExp; import javax.print.DocFlavor; import java.util.HashMap; import java.util.Map; // 声明控制层 @Controller public class IndexController { @Autowired // @Autowired 把User类注入进来 private User user; @RequestMapping(value = "/many") @ResponseBody public String many() { return "user为:"+user.getUsername() + ",密码为:"+user.getPassword(); } }
7. S'il y a des caractères chinois dans application.properties, des caractères tronqués apparaîtront. Résolvez le problème des caractères chinois tronqués dans IDEA :
. 8. Propriétés dans le fichier de configuration La paire clé-valeur ne peut pas avoir d'espaces, sinon il y aura des problèmes d'analyse !
9. JSP intégré Spring-boo
Créez d'abord le dossier webapp sous le dossier principal, puis cliquez surfichier -> structure du projet -> Modules comme indiqué ci-dessous :
Cliquez ensuite sur le fichier à droite dans la boîte de dialogue contextuelle, recherchez le dossier webapp que nous venons de créer et confirmez. Les détails sont les suivants : À ce stade, la webapp deviendra la suivante. Configurez le fichier pom.xml (1) Commencez par introduire la dépendance intégrée de Spring-boot à l'analyse jsp. Jsp ne peut pas être analysé sans l'ajouter
<dependency> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-configuration-processor</artifactid> </dependency>(2) Spring-boot utilise le front-. moteur de fin par défaut thymeleaf, maintenant nous voulons utiliser springboot pour hériter de jsp, nous devons spécifier manuellement le chemin de la dernière jsp compilée, et le chemin pour que springboot hérite de jsp est l'emplacement spécifié par springboot : META-INF/resources
<!--引入spring-boot内嵌的tomcat对jsp的解析依赖,不添加解析不了jsp--> <dependency> <groupid>org.apache.tomcat.embed</groupid> <artifactid>tomcat-embed-jasper</artifactid> </dependency>La dernière étape : configurer la vue dans application.properties Parser
<build> <!--spring-boot默认使用的是前端引擎thymeleaf,现在我们要使用springboot继承jsp,需要手动指定jsp最后编译的路径,而且springboot继承jsp的路径是springboot规定好的位置:META-INF/resources--> <resources> <resource> <!--源文件--> <directory>src/main/webapp</directory> <!--指定编译路径:--> <targetpath>META-INF/resources</targetpath> <!--指定源文件夹中的哪些资源需要被编译--> <includes> <include>*.*</include> </includes> </resource> </resources> <plugins> <!-- ··· --> </plugins> </build>crée une page .jsp, tester :
# 配置视图解析器 spring.mvc.view.prefix=/ # 前缀 spring.mvc.view.suffix=.jsp # 后缀
<title>Title</title> <h2>${msg}</h2>Première méthode d'écriture : Deuxième méthode d'écriture :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!