Maison >Java >javaDidacticiel >Analyse de l'exemple d'utilisation de la mise en route de Springboot

Analyse de l'exemple d'utilisation de la mise en route de Springboot

王林
王林avant
2023-05-11 14:22:061103parcourir

Démarrez avec 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.

Analyse de lexemple dutilisation de la mise en route de Springboot

3. Pour l'utilisation des fichiers de configuration de base dans plusieurs environnements, le nom du fichier doit commencer par application-!
application-xxx.properties

Analyse de lexemple dutilisation de la mise en route de Springboot

(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

Analyse de lexemple dutilisation de la mise en route de Springboot

6. Ajoutez l'annotation @ConfigurationProperties, et l'avertissement rouge ci-dessus apparaîtra. vous devez ajouter un package de dépendances :

Analyse de lexemple dutilisation de la mise en route de Springboot

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 :

Analyse de lexemple dutilisation de la mise en route de Springboot

. 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 sur

fichier -> structure du projet -> Modules comme indiqué ci-dessous :

Analyse de lexemple dutilisation de la mise en route de Springboot

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 :

Analyse de lexemple dutilisation de la mise en route de Springboot

À ce stade, la webapp deviendra la suivante.

Analyse de lexemple dutilisation de la mise en route de Springboot

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 :

Analyse de lexemple dutilisation de la mise en route de Springboot

Deuxième méthode d'écriture :

Analyse de lexemple dutilisation de la mise en route de Springboot

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer