Springboot 1——搭建环境以及第一个hello world

    科技2022-08-06  95

    根据编程不良人视频整理 2.2.5 官方文档 学习路线: 初级:springboot框架 what why reason 、官方项目构建约定、firstdemo&涉及的细节、官网提供的两种配置(java config、xml config不推荐)、标准的项目开发方式、对象的管理以及对象注入(injection)相关语法、集成jsp模板以及thymelaf模板、 整合mybatis框架简化数据操作、日志的基本使用、文件上传和下载、如何实现aop面向切面编程、如何使用拦截器 中级:综合案例 高级:springboot与redis数据库集成操作综合案例、springboot与elasticSearch分布式搜索引擎技术综合案例、与MongoDB nosql综合案例、与MQ(RAbbitMQ)集成综合案例(先学rabbitMQ)综合案例、自动配置原理以及官网细节

    springboot(微框架)=springmvc(控制器)+spring core(项目管理) SSM(Spring springmvc mybatis) SSM (Spring statuts2 mybatis) SSH(Spring Struts Hibernate)

    springboot设计目的是用来简化Spring应用的初始搭建以及开发过程。 特点:1.创建独立的spring应用程序 2.嵌入的Tomcat 无需部署war文件 3.简化Maven配置 4.自动配置Spring 没有XML配置

    约定>配置 约定: src/main/resources中书写运行时使用的配置文件 src/main/java中书写运行时java代码 约定中的两个要求: src/main/resources/application.yml或者application.properties 核心配置文件(必须在根目录中) src/main/java/com.estella/xxxApplication.java springboot项目全局的入口类(有且只有一个) 在入口类中可以让springboot运行在它内嵌的容器中(tomcat或其他容器)

    官方手册:https://docs.spring.io/spring-boot/docs/2.2.5.RELEASE/reference/html/getting-started.html#getting-started 环境搭建: 要求:requires Java 8 and is compatible up to Java 13(此电脑java14) Maven3.3+ Gradle 5.x and 6.x (4.10 is also supported but in a deprecated form)(此电脑mvn3.3.6) Spring Framework 5.2.4.RELEASE or above is also required.

    Servlet Containers: Tomcat 9.0 Jetty 9.4 Undertow 2.0

    开发工具idea 搭建开始: File->New->Module-Maven(挑勾create from archetype)->maven-archetype-webapp->next->起名->next

    创建项目报错警告:No archetype found in remote catalog. Defaulting to internal catalog. 可以不用管【因为使用了maven模版构建项目,要从网上获取模版,然而没有找到这个模版或者网络慢,导致获取失败 】,选择File —> 再选择Close Project,关闭项目后重启就可以了。

    在项目目录中补全结构: 1.src中补全test文件夹 2.main中补全java文件夹、resources文件夹 3.test中补全java文件夹、resources文件夹

    在main->java中右键 选择Make Directory as Sources Root 此时java文件夹由灰变蓝 main->resources中右键选择Make Directory as Resources Root test->java中右键选择Make Directory as Test Sources Root此时java文件夹由灰变绿 test->resources中右键选择Make Directory as Test Resources Root 此时调整为Maven的标准结构

    在pom.xml中添加依赖

    <!--继承Springboot父项目 --> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.2.5.RELEASE</version> </parent>

    可以去掉dependencies中的dependency->groupId->junit依赖

    <!--引入springboot的web支持--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>

    //点击maven 浮标按钮 更新下载依赖(类似于import change ,不确定)

    main->java中new->package->命名com.estella 在main->resources中new-file->application.yml 在项目中构建入口类main->java->com.estella中新建java class 命名项目名+application(dayApplication) dayApplication中写入main函数 //springApplication spring应用类,所谓启动springboot应用类的意思就是将当前这个应用部署到对应的web容器中,第一个参数要求传入口类的class类对象,第二个是main函数的参数(main函数的参数对应的就是args) SpringApplication.run(dayApplication.class,args); 要求必须在入口类上加上注解@EnableAutoConfiguration,作用:开启自动配置

    运行:右键 Run’dayApplication’

    如果遇到报错:Error:(3, 32) java: 程序包org.springframework.boot不存在 Error:(4, 46) java: 程序包org.springframework.boot.autoconfigure不存在 解决方案:setting->Build Excution deployment->build tools->maven->runner->勾选Delegate IDE build/run actions to Maven将IDE构建/运行操作委托给Maven

    @RestController代表当前的类是一个控制器类,日后可以在此类中写入springMVC的语法 @GetMapping("/hello")

    初步先将控制器写在入口类中,日后应将控制类进行分包处理 在浏览器中localhost:8080/hello

    Processed: 0.059, SQL: 8