자바 기초 spring 5 새로운 기능 학습

머리말
1.전체 Spring 5 프레임 워 크 의 코드 는 자바 8 을 기반 으로 실 행 될 때 JDK 9 를 호 환 합 니 다.사용 하지 않 는 클래스 와 방법 은 코드 라 이브 러 리 에서 삭제 합 니 다.
2.Spring 5 프레임 워 크 는 일반적인 로그 패 키 지 를 가지 고 있 습 니 다.
Spring 5 는 Log4jConfigListener 를 제거 하 였 으 며,공식 적 으로 Log4j 2 를 사용 할 것 을 건의 합 니 다.
로그 설정
jar 가방

<!--    -->
        <!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-core -->
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-core</artifactId>
            <version>2.14.1</version>
        </dependency>

        <!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-api -->
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-api</artifactId>
            <version>2.14.1</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-slf4j-impl -->
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-slf4j-impl</artifactId>
            <version>2.14.1</version>
            <!--<scope>test</scope>-->
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-api -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>1.7.30</version>
        </dependency>
log4j2.xml 프로필

<?xml version= "1.0"  encoding= "UTF-8" ?>
<!--           : OFF > FATAL > ERROR > WARN > INFO > DEBUG > TRACE > ALL -->
<!--Configuration     status      log4j2          ,     ,      trace  ,     
    log4j2          -->
<configuration status="INFO">
    <!--       appender -->
    <appenders>
        <!--           -->
        <console name="Console" target="SYSTEM_OUT">
            <!--          -->
            <PatternLayout
                pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n" />
        </console>
    </appenders>
    <!--     logger,     logger      appender,appender      -->
    <!--root:          ,         Logger,     root            -->
    <loggers>
        <root level="info">
            <appender-ref ref="Console" />
        </root>
    </loggers>
</configuration>
수 동 로그 출력

public class UserLog {

    private static final Logger log=LoggerFactory.getLogger(UserLog.class);
    
    public static void main(String[] args) {
        log.info("        1");
        log.warn("        2");
        System.out.println("    ");
    }
}
Maven 개발,test 라면 주석 이 필요 합 니 다.
3.핵심 용기 지원@Nullable
@Nullable 주 해 는 방법 위,속성 위,매개 변수 위 에 사용 할 수 있 습 니 다.방법 반환 은 비어 있 고 속성 값 은 비어 있 으 며 매개 변수 값 은 비어 있 음 을 표시 합 니 다.
1.주 해 는 방법 에 사용 되 며,방법 반환 값 은 비어 있 습 니 다.
2.주 해 는 방법 매개 변수 에 사용 되 며 방법 매개 변 수 는 비어 있 습 니 다.
3.주 해 는 속성 위 에 사용,속성 값 은
4.핵심 용기 지원 함수 스타일
함수 스타일 GenericApplicationContext

//         ,   spring     
    @Test
    public void test4() {
        //1    GenericApplicationContext   
        GenericApplicationContext context =  new GenericApplicationContext();
        //2    context        
        context.refresh();
        context.registerBean( "user1",User. class,() ->  new User());
        //3     spring      
        // User user = (User)context.getBean("com.atguigu.spring5.test.User");
        User user = (User)context.getBean( "user1");
        System. out .println(user);
    }
5.통합 지원 JUnit 5
1.통합 JUnit 4
jar 가방

<dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-test</artifactId>
            <version>5.3.6</version>
        <!--    <scope>test</scope> -->
        </dependency>
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;

import cn.zj.service.UserService;

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:bean1.xml") //       
public class JTest4 {
    @Autowired
    private UserService userService;

    @Test
    public void test1() {
        userService.accountMoney();
    }
}
2.통합 JUnit 5
jar 패키지 도입
image.png
image.png

import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.junit.jupiter.SpringJUnitConfig;

import cn.zj.service.UserService;

//@ExtendWith(SpringExtension.class)
//@ContextConfiguration("classpath:bean1.xml")
@SpringJUnitConfig(locations="classpath:bean1.xml")
//                
public class JTest5 {
    
    @Autowired
    private UserService userService;

    @Test
    public void test1() {
        userService.accountMoney();
    }
}
자바 기반 spring 5 의 새로운 기능 학습 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 spring 5 의 새로운 기능 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 조회 하 시기 바 랍 니 다.앞으로 많은 응원 바 랍 니 다!

좋은 웹페이지 즐겨찾기