国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

企業(yè)級web開發(fā)框架-期中測試(答案由chatgpt被動提供)

這篇具有很好參考價值的文章主要介紹了企業(yè)級web開發(fā)框架-期中測試(答案由chatgpt被動提供)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

企業(yè)級web開發(fā)框架-期中測試

選擇題

  • 哪個注解用于處理請求  url  映射,可用于類或方法上
    
    
    A、
    @Controller
    
    
    B、
    @RequestMapping
    
    
    C、
    @RequestParam
    
    
    D、
    @ResponseBody
    

B、@RequestMapping

  • 下列關(guān)于SpringBoot配置文件描述錯誤的一項是(  )
    
    
    A、
    SpringBoot默認不支持日志配置
    
    
    B、
    application配置文件中可使用server.port=8081修改Tomcat端口。
    
    
    C、
    SpringBoot中配置文件支持.properties和yml兩種格式。
    
    
    D、
    SpringBoot的核心理念是約定優(yōu)于配置,約定了配置文件默認可以是application.yml
    

A、SpringBoot默認不支持日志配置是錯誤的描述。SpringBoot默認使用Logback作為日志框架,并且可以通過配置文件進行日志的配置。

  • SpringBoot中使用學習三方框架如security可以方便配置的切換日志級別輔助調(diào)試:logging.level.org.springframework.security=debug。請問,按照如上配置,下面那種日志級別的信息不會被輸出到控制臺( )
    
    
    A、
    trace
    
    
    B、
    warn
    
    
    C、
    danger
    
    
    D、
    info
    

B、warn

  • 你確定嗎
    

我之前的回答有誤,正確答案是D、info。因為debug級別包含了info級別,所以配置了debug級別后,info級別的日志信息也會被輸出到控制臺。

  • 下列關(guān)于SpringBoot描述錯誤的一項是( )
    
    
    A、
    SpringBoot使用默認配置可以提高軟件開發(fā)效率,尤其契合微服務和敏捷開發(fā)模式。
    
    
    B、
    @SpringBootApplication注解是一個復合注解,內(nèi)部包含了@ComponentScan注解,因此包掃描自動生效。
    
    
    C、
    SpringBoot中,默認的包掃描自動開啟,可以掃描到本項目中任意層級任意位置的@Component注解標注的Java類,從而實例化對象放入容器中。
    
    
    D、
    SpringBoot的核心理念是約定優(yōu)于配置,約定了配置文件默認可以是application.yml
    

C、SpringBoot中,默認的包掃描并不會掃描到本項目中任意層級任意位置的@Component注解標注的Java類,而是只會掃描啟動類所在的包及其子包中的組件。如果需要掃描其他包中的組件,需要使用@ComponentScan注解或者在啟動類上使用@Import注解手動導入其他配置類。

  • 5、
    經(jīng)典MVC中完成視圖View中自動綁定Model中的數(shù)據(jù)的第三方依賴庫如Jsp /Thymeleaf /Freemaker 等統(tǒng)稱為?
    
    
    A、
    數(shù)據(jù)容器
    
    
    B、
    模板文件
    
    
    C、
    模板引擎
    
    
    D、
    項目依賴
    

C、模板引擎

判斷題

  • 1、
    SpringBoot項目只能支持前后端分離工程,不能支持JSP等模板引擎下的經(jīng)典MVC工程。( )
    
    正確
    錯誤
    

錯誤。SpringBoot項目不僅支持前后端分離工程,也支持經(jīng)典MVC工程??梢允褂肨hymeleaf、Freemarker等模板引擎來完成視圖層的開發(fā)。同時,SpringBoot也提供了對JSP的支持,但需要注意的是,使用JSP需要額外配置,而且在SpringBoot 2.4.0版本之后,不再默認支持JSP。

  • springboot應用只能以 Maven 作為項目構(gòu)建方式(     )
    
    正確
    錯誤
    

錯誤。Spring Boot 應用可以使用 Maven 或 Gradle 作為項目構(gòu)建方式。

  • SpringBoot簡化了xml配置,快速整合框架(  )
    
    正確
    錯誤
    

正確。Spring Boot 確實簡化了 XML 配置,同時也提供了自動配置和快速整合框架的功能,使得開發(fā)者可以更加快速地搭建項目。

  • SpringSecurity中匿名過濾器中匿名用戶的信息不能隨意個性化設置。( )
    
    正確
    錯誤
    

錯誤。Spring Security 中的匿名過濾器可以通過配置文件進行個性化設置,例如可以設置匿名用戶的用戶名、權(quán)限等信息??梢允褂?anonymous() 方法來配置匿名用戶的信息,例如:

@Override
protected void configure(HttpSecurity http) throws Exception {
    http
        .authorizeRequests()
            .antMatchers("/public/**").permitAll()
            .anyRequest().authenticated()
            .and()
        .formLogin()
            .loginPage("/login")
            .permitAll()
            .and()
        .logout()
            .permitAll()
            .and()
        .anonymous()
            .principal("guest")
            .authorities("ROLE_GUEST")
            .and()
        .csrf().disable();
}

在上面的例子中,我們設置了匿名用戶的用戶名為 “guest”,權(quán)限為 “ROLE_GUEST”。

  • SpringBoot 是 Spring 框架對“約定優(yōu)先于配置(Convention Over Configuration)”理念的最佳實踐的產(chǎn)物(   )
    
    正確
    錯誤
    

正確。Spring Boot 是 Spring 框架對“約定優(yōu)先于配置”理念的最佳實踐的產(chǎn)物。它通過提供默認的配置和自動配置的方式,使得開發(fā)者可以更加快速地搭建項目,同時也可以根據(jù)需要進行個性化的配置。

填空題

  • 1:
    前后端分離項目中,controller返回JSON數(shù)據(jù)格式一般用          注解
    

@RestController 注解。該注解是 @Controller 和 @ResponseBody 注解的組合,用于標識該類是一個控制器,并且其中的方法返回的是 JSON 格式的數(shù)據(jù)。

  • 2:
    標注了             注解的 Java 類定義都是一個 JavaConfig 配置類。
    

@Configuration 注解。該注解用于標識一個 Java 類是一個配置類,其中定義的方法可以用于配置應用程序上下文中的 bean。在 Spring Boot 中,通常使用 JavaConfig 的方式來進行配置,因此標注了 @Configuration 注解的 Java 類定義都是一個 JavaConfig 配置類。

  • 3:
    SpringBoot程序是通過              方法開始執(zhí)行的。
    

main() 方法。Spring Boot 程序是一個 Java 應用程序,因此它的入口點是 main() 方法。在 main() 方法中,我們可以通過 SpringApplication.run() 方法來啟動 Spring Boot 應用程序。例如:

@SpringBootApplication
public class MyApplication {
    public static void main(String[] args) {
        SpringApplication.run(MyApplication.class, args);
    }
}
  • 4:
    一個標注了           注解的方法,其返回值將作為一個 bean 定義注冊到 Spring 的 IoC 容器,           將默認成為該 bean 定義的 id。
    

@Bean 注解。一個標注了 @Bean 注解的方法,其返回值將作為一個 bean 定義注冊到 Spring 的 IoC 容器,方法名將默認成為該 bean 定義的 id。例如:

@Configuration
public class MyConfiguration {
    @Bean
    public MyBean myBean() {
        return new MyBean();
    }
}

在上面的例子中,我們定義了一個名為 myBean 的 bean,其類型為 MyBean,通過 @Bean 注解將其注冊到 Spring 的 IoC 容器中。由于方法名與 bean 的 id 相同,因此不需要指定 id。

簡答題

  • 簡述接口文檔Swagger3在前后端分離項目中的作用。(說出三點即可)
    

Swagger3 是一個開源的 API 文檔工具,可以幫助開發(fā)者自動生成和維護 API 文檔。在前后端分離項目中,Swagger3 的作用如下:

  1. 自動生成 API 文檔:Swagger3 可以通過掃描代碼中的注解自動生成 API 文檔,包括 API 的請求地址、請求參數(shù)、響應數(shù)據(jù)等信息,使得開發(fā)者可以更加方便地查看和理解 API 的使用方式和規(guī)范。
  2. 接口測試和調(diào)試:Swagger3 提供了一個交互式的 UI 界面,可以讓開發(fā)者直接在瀏覽器中測試和調(diào)試 API 接口,不需要使用其他工具或者編寫測試代碼,提高了開發(fā)效率。
  3. 接口規(guī)范和約束:Swagger3 可以通過注解來定義 API 的請求和響應數(shù)據(jù)格式、參數(shù)校驗規(guī)則等約束,使得 API 接口的使用更加規(guī)范和統(tǒng)一,減少了開發(fā)者的錯誤和疏漏。同時,Swagger3 還可以通過配置文件來定義全局的 API 規(guī)范和約束,使得整個項目的 API 接口都具有一致的風格和規(guī)范。
  • 如何理解SpringBoot中的Starters?并列舉常用3中starters。
    

Spring Boot Starters 是一組預定義的依賴關(guān)系,可以幫助開發(fā)者快速地集成和使用各種常用的技術(shù)和框架。Starters 通常包含了一組相關(guān)的依賴關(guān)系,例如 Web Starter 包含了 Spring MVC、Tomcat、Jackson 等依賴,JPA Starter 包含了 Hibernate、Spring Data JPA 等依賴。使用 Starters 可以避免開發(fā)者手動添加依賴關(guān)系的繁瑣和錯誤,同時也可以保證依賴關(guān)系的版本兼容性和穩(wěn)定性。

常用的三種 Starters 如下:

  1. Spring Boot Starter Web:包含了 Spring MVC、Tomcat、Jackson 等依賴,用于開發(fā) Web 應用程序。
  2. Spring Boot Starter Data JPA:包含了 Hibernate、Spring Data JPA 等依賴,用于訪問和操作關(guān)系型數(shù)據(jù)庫。
  3. Spring Boot Starter Test:包含了 JUnit、Mockito、Hamcrest 等依賴,用于編寫和執(zhí)行單元測試和集成測試。
  • 3、
    列舉四方面SpringBoot做Web軟件開發(fā)的優(yōu)點?
    

Spring Boot 是一個快速開發(fā)框架,具有以下四個方面的優(yōu)點:

  1. 簡化配置:Spring Boot 提供了自動配置的功能,可以根據(jù)項目的依賴關(guān)系自動配置應用程序上下文,避免了繁瑣的配置過程。
  2. 快速開發(fā):Spring Boot 提供了大量的 Starter,可以快速集成和使用各種常用的技術(shù)和框架,例如 Web、JPA、Security 等,使得開發(fā)者可以更加專注于業(yè)務邏輯的實現(xiàn)。
  3. 易于部署:Spring Boot 應用程序可以打包成一個可執(zhí)行的 JAR 文件,可以直接通過 java -jar 命令啟動,無需安裝和配置 Tomcat 等 Web 服務器,使得部署和運維更加簡單和方便。
  4. 高度可定制:Spring Boot 提供了豐富的配置選項和擴展點,可以根據(jù)需要進行個性化的配置和擴展,同時也可以通過自定義 Starter 來實現(xiàn)對第三方技術(shù)和框架的集成和支持。
  • 4、
    SpringBoot的核心注解是哪個?它主要由哪幾個注解組成的?
    

Spring Boot 的核心注解是 @SpringBootApplication。它主要由以下三個注解組成:

  1. @SpringBootConfiguration:該注解是 @Configuration 注解的派生注解,用于標識該類是一個 Spring Boot 的配置類。
  2. @EnableAutoConfiguration:該注解用于啟用 Spring Boot 的自動配置功能,可以根據(jù)項目的依賴關(guān)系自動配置應用程序上下文。
  3. @ComponentScan:該注解用于掃描指定的包和類,將其中標注了 @Component、@Service、@Controller 等注解的類注冊為 Spring 的 bean,使得它們可以被應用程序上下文所管理和使用。

這三個注解的組合,可以讓 Spring Boot 應用程序自動配置和啟動,同時也可以掃描和注冊指定的 bean,使得開發(fā)者可以更加專注于業(yè)務邏輯的實現(xiàn)。

  • 5、
    請簡述Spring和SpringBoot的區(qū)別與聯(lián)系?
    

Spring 是一個開源的企業(yè)級應用程序開發(fā)框架,提供了一系列的組件和工具,用于簡化企業(yè)級應用程序的開發(fā)和集成。Spring Boot 是 Spring 的一個子項目,是一個快速開發(fā)框架,可以幫助開發(fā)者快速地創(chuàng)建和部署 Spring 應用程序。

區(qū)別:

  1. 配置方式不同:Spring 需要手動配置各種組件和依賴關(guān)系,而 Spring Boot 提供了自動配置的功能,可以根據(jù)項目的依賴關(guān)系自動配置應用程序上下文。
  2. 依賴管理不同:Spring 需要手動管理各種依賴關(guān)系和版本兼容性,而 Spring Boot 提供了 Starter 的功能,可以快速集成和使用各種常用的技術(shù)和框架。
  3. 開發(fā)效率不同:Spring 需要手動配置和管理各種組件和依賴關(guān)系,開發(fā)效率相對較低,而 Spring Boot 提供了自動配置和 Starter 的功能,可以大大提高開發(fā)效率。

聯(lián)系:

  1. Spring Boot 是 Spring 的一個子項目,是在 Spring 的基礎上進行的擴展和增強。
  2. Spring Boot 依賴于 Spring,可以使用 Spring 的各種組件和工具,例如 Spring MVC、Spring Data、Spring Security 等。
  3. Spring Boot 可以與 Spring 集成,使用 Spring 的各種組件和工具,同時也可以通過自定義 Starter 來擴展和增強 Spring Boot 的功能。

編程題

  • 只需要補全代碼,不需要其他說明
    1、
    以下程序為springBoot整合MyBatis實現(xiàn)查詢功能,請補全以下代碼。 (15分)
    
    (1)pom.xml文件
    
    ependencies>
    
         ......
    
        -- 添加springboot整合Mybatis -->
    
        ependency>
    
            roupId>org.mybatis.spring.bootroupId>
    
            rtifactId>                   rtifactId>
    
            ersion>1.2.2ersion>
    
        ependency>
    
        .......
    
    ependencies>
    
    (2)在application.properties配置文件中添加數(shù)據(jù)庫的支持
    
    #DB Configuration:
    
    #配置驅(qū)動類
    
    spring.datasource.             = com.mysql.jdbc.Driver
    
    #配置URL,鏈接本地數(shù)據(jù)庫test
    
            .        .url = jdbc:mysql://           /         ?useUnicode=true&characterEncoding=utf-8&useSSL=false
    
    #數(shù)據(jù)庫用戶名和密碼分別為root,123456
    
            .          .           = root
    
    spring.datasource.           =            
    
    (3)在SpringBoot的啟動類里面增加用來掃描Mapper接口的注解,用來掃描Mapper包下面的接口。
    
    //補全適當?shù)淖⒔?
                        
    
    @             ("com.qst.*")
    
    public class App {
    
    public static void main(String[] args) {
    
                                  
    
    }
    
    }
    
 ......

<!-- 添加springboot整合Mybatis -->

<dependency>

    <groupId>org.mybatis.spring.boot</groupId>

    <artifactId>mybatis-spring-boot-starter</artifactId>

    <version>1.2.2</version>

</dependency>

.......

#DB Configuration:

#配置驅(qū)動類

spring.datasource.driver-class-name = com.mysql.jdbc.Driver

#配置URL,鏈接本地數(shù)據(jù)庫test

spring.datasource.url = jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=utf-8&useSSL=false

#數(shù)據(jù)庫用戶名和密碼分別為root,123456

spring.datasource.username = root

spring.datasource.password = 123456

//補全適當?shù)淖⒔?/p>

@SpringBootApplication(scanBasePackages = “com.qst.*”)

public class App {

public static void main(String[] args) {

SpringApplication.run(App.class, args);

}

}

  • 編寫前后端分離的項目,自定義controller統(tǒng)一異常處理。(15分)
    
    用戶需求:當后端程序員在controller,service等地方手動拋出異常時,希望該異常信息能夠被前端接收,并進一步處理后顯示給用戶。要求自定義一個運行時異常(子類),任意controller中拋出該異常時異常被捕獲返回給前端信息和HTTP狀態(tài)碼700。
    
    //請于此自定義異常
    
     
    
     
    
     
    
    //請于此控制器統(tǒng)一異常處理
    

自定義異常:

public class CustomException extends RuntimeException {
    private Integer code;
    private String message;

    public CustomException(Integer code, String message) {
        this.code = code;
        this.message = message;
    }

    public Integer getCode() {
        return code;
    }

    public void setCode(Integer code) {
        this.code = code;
    }

    @Override
    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }
}

控制器統(tǒng)一異常處理:

@RestControllerAdvice
public class GlobalExceptionHandler {

    @ExceptionHandler(CustomException.class)
    public ResponseEntity<ErrorResponse> handleCustomException(CustomException e) {
        ErrorResponse errorResponse = new ErrorResponse(e.getCode(), e.getMessage());
        return new ResponseEntity<>(errorResponse, HttpStatus.valueOf(700));
    }

    @ExceptionHandler(Exception.class)
    public ResponseEntity<ErrorResponse> handleException(Exception e) {
        ErrorResponse errorResponse = new ErrorResponse(500, "服務器內(nèi)部錯誤");
        return new ResponseEntity<>(errorResponse, HttpStatus.INTERNAL_SERVER_ERROR);
    }
}

其中,ErrorResponse是一個自定義的響應實體類,用于封裝異常信息返回給前端。

  • 3、
    創(chuàng)建springBoot程序,完成頁面按鈕發(fā)送請求后,后端向前端頁面直接輸出“Hello,springBoot”,補全下面關(guān)鍵代碼即可。(15分)
    
    (1)pom.xml文件
    
    ependencies>
    
         ......
    
        -- 請補全springboot的web支持的配置 -->
    
        ependency>
    
          roupId>org.springframework.bootroupId>
    
          rtifactId>                    rtifactId>
    
        ependency>
    
        .......
    
    ependencies>
    
    (2)Controller
    
     
    
    //添加適當注解
    
                  
    
    public class HelloWorldController {
    
        //補全以下注解
    
        @            ("/hello")
    
        //添加適當注解
    
                  
    
        public           hello(){
    
            return "Hello,springBoot";
    
        }
    
    }
    
    (3)頁面
    
    orm action="      ">
    
    utton type="          ">springboot測試utton>
    
    orm> 
    

(1)pom.xml文件

<dependencies>

     ......

    <!-- 添加springboot的web支持的配置 -->

    <dependency>

      <groupId>org.springframework.boot</groupId>

      <artifactId>spring-boot-starter-web</artifactId>

    </dependency>

    .......

</dependencies>

(2)Controller

@RestController
public class HelloWorldController {

    //添加適當注解

    @GetMapping("/hello")

    //添加適當注解

    public String hello(){
        return "Hello,springBoot";
    }

}

(3)頁面文章來源地址http://www.zghlxwxcb.cn/news/detail-466358.html

<form action="/hello">
    <button type="submit">springboot測試</button>
</form>

到了這里,關(guān)于企業(yè)級web開發(fā)框架-期中測試(答案由chatgpt被動提供)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務器費用

相關(guān)文章

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包