>Java >java지도 시간 >Springboot 시작하기 사용 예 분석

Springboot 시작하기 사용 예 분석

王林
王林앞으로
2023-05-11 14:22:061142검색

Springboot 시작하기

프로젝트 생성은 IDEA에서 생성할 수 있습니다.

참고:

1. 모든 파일은 다음 위치에 있어야 합니다.

동일한 수준 또는 하위 수준 디렉터리에 있는 응용 프로그램 파일

2 application.properties는 스프링의 주요 핵심 구성 파일입니다. 부트 프로젝트, 코어 구성 파일은 하나만 있을 수 있습니다.

Springboot 시작하기 사용 예 분석

3. 핵심 구성 파일을 여러 환경에서 사용하려면 파일 이름이 application-!으로 시작해야 합니다.
application-xxx.properties

Springboot 시작하기 사용 예 분석

(1) 개발 환경

# 开发环境配置文件
server.port=9000
server.servlet.context-path=/

(2) 테스트

# 测试环境配置文件

(3) 프로덕션 환경

# 生产环境配置文件
server.port=7000

메인 코어 구성 파일에서 맞춤형 구성 파일 활성화:

#激活我们编写的application-xxx.properties配置文件
spring.profiles.active=dev

4, @Value 주석

spring-boot 핵심 구성 파일 사용자 정의 구성 속성, 얻는 방법
다음 방법은 한 번에 하나의 속성만 얻을 수 있습니다!
예: 구성 website=http://www.baidu.com은 application.properties 파일에서 사용자 정의됩니다
프로젝트에서 이 사용자 정의 구성을 가져옵니다:

주석 @Value("${website}" ) 사용

기본값을 작성할 수도 있습니다. 구성 항목이 없으면 기본값 @Value("${website: default value}")가 사용됩니다.

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 및 @ConfigurationProperties(prefix= "xxx") Annotation

spring-boot 코어 구성 파일은 사용자 정의된 구성 속성을 객체에 매핑합니다(얻은 것은 객체입니다). 이 방법을 사용하기 위한 전제 조건: 구성 파일의 속성 앞에는 접두사가 붙어야 합니다!

application.properties 파일

# 属性前边必须要有前缀,我这里前缀是user
user.name=lxc
user.password=123456

config -> 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;
    }
}

Call Properties

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();
    }
 
}

Springboot 시작하기 사용 예 분석

6. @ConfigurationProperties 주석을 추가하면 위의 빨간색 경고가 표시됩니다. 하나의 종속성 패키지를 추가해야 합니다:

<dependency>
    <groupid>org.springframework.boot</groupid>
    <artifactid>spring-boot-configuration-processor</artifactid>
</dependency>

Springboot 시작하기 사용 예 분석7. application.properties에 중국어 문자가 있는 경우 IDEA에서 중국어 문자가 깨져서 나타나는 문제를 해결합니다.

Springboot 시작하기 사용 예 분석 8. 구성 파일의 속성 키-값 쌍에는 공백이 있어서는 안 됩니다. 그렇지 않으면 구문 분석에 문제가 발생합니다!

9. Spring-boo 통합 JSP

먼저 기본 폴더 아래에 webapp 폴더를 만든 다음 아래와 같이 file

->

프로젝트 구조 -> 모듈 을 클릭합니다.

그런 다음 팝업 대화 상자에서 오른쪽 파일을 클릭하고 방금 생성한 webapp 폴더를 찾아 확인합니다. Springboot 시작하기 사용 예 분석

이때 webapp은 다음과 같습니다. Springboot 시작하기 사용 예 분석

pom.xml 파일 구성Springboot 시작하기 사용 예 분석

(1) 먼저 jsp 구문 분석에 대한 spring-boot의 내장 tomcat 종속성을 소개합니다. Jsp는 추가하지 않고는 구문 분석할 수 없습니다.

<!--引入spring-boot内嵌的tomcat对jsp的解析依赖,不添加解析不了jsp-->
<dependency>
    <groupid>org.apache.tomcat.embed</groupid>
    <artifactid>tomcat-embed-jasper</artifactid>
</dependency>
(2) spring-boot는 프런트 엔드 엔진을 사용합니다. 기본적으로 thymeleaf, 이제 springboot를 사용하여 jsp를 상속하려고 합니다. 마지막으로 컴파일된 jsp의 경로를 수동으로 지정해야 하며 springboot가 jsp를 상속할 경로는 springboot에서 지정한 위치입니다: META-INF/resources

<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>
마지막 단계: application.properties에서 보기 구성 파서

# 配置视图解析器
spring.mvc.view.prefix=/ # 前缀
spring.mvc.view.suffix=.jsp # 后缀
가 .jsp 페이지를 생성하고 테스트:



    <title>Title</title>


  <h2>${msg}</h2>

package com.lxc.boot_02;
 
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
 
@Controller
public class controller {
    // 写法一:
    @RequestMapping(value="/say")
    public ModelAndView say() {
        ModelAndView mv = new ModelAndView();
        // 给视图传值
        mv.addObject("msg", "hello");
        // 设置 最终视图的名称
        mv.setViewName("say");
        return mv;
    }
 
    // 写法二:把视图和模型拆分开,返回一个视图(return的是视图的名字)
    @RequestMapping(value = "/index")
    public String index(Model model) {
        model.addAttribute("msg", "lxc;");
        return "say";
    }
}
작성 방법 1:

작성 방법 2: Springboot 시작하기 사용 예 분석

위 내용은 Springboot 시작하기 사용 예 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제