当前位置: 首页>编程语言>正文

springboot 知识库管理系统源码 springboot 博客园

一、SpringBoot 入门简介

整体讲解内容概况:

springboot 知识库管理系统源码 springboot 博客园,springboot 知识库管理系统源码 springboot 博客园_java,第1张

1.1 简介

简化Spring应用开发的一个框架;

整个Spring技术栈的一个大整合;

J2EE开发的一站式解决方案。

springboot 知识库管理系统源码 springboot 博客园,springboot 知识库管理系统源码 springboot 博客园_spring_02,第2张

Spring Boot通过整合Spring整个技术栈,来简化企业级应用的开发。

Spring Boot自动配置。

优点:

springboot 知识库管理系统源码 springboot 博客园,springboot 知识库管理系统源码 springboot 博客园_java_03,第3张

1.2 微服务

微服务:架构风格

一个应用应该是一组小型服务;可以通过HTTP的方式进行互通;

单体应用:ALL IN ONE

springboot 知识库管理系统源码 springboot 博客园,springboot 知识库管理系统源码 springboot 博客园_spring boot_04,第4张

微服务:每一个功能元素最终都是一个可独立替换、可独立升级的微化单元。

springboot 知识库管理系统源码 springboot 博客园,springboot 知识库管理系统源码 springboot 博客园_spring_05,第5张

详细参照微服务文档

1.3 Spring Boot HelloWorld

一个功能:

浏览器发送hello请求,服务器接受请求并处理,响应HelloWorld字符串。

1、 创建一个Maven工程:

选择Maven工程,选择jdk1.8,创建后点击右下角的Enable Import Changes。

springboot 知识库管理系统源码 springboot 博客园,springboot 知识库管理系统源码 springboot 博客园_spring boot_06,第6张

2、 导入Spring Boot相关依赖

3、编写一个主程序:启动Spring Boot 应用

package com.ckh;

/*
* @SpringBootApplication来标注这是一个主程序类,说明这是一个SpringBoot应用
* */
@SpringBootApplication
public class SpringBootApplication {
    public static void main(String[] args) {
        //spring 应用启动起来
        SpringApplication.run(SpringBootApplication,args);
    }
}

4、编写相关的Controller、Service

package com.ckh.controller;

@Controller
public class HelloController {
    
    @ResponseBody
    @RequestMapping("/hello")
    public String hello(){
        return "Hello World!";
    }
}

5、运行主程序测试

6、简化部署

<!--这个插件可以将应用打包成一个可执行的jar包-->
    <build>
        <plugins>
            <plugin>
                <groupId>org.spring.framework.boot</groupId>
                <artifactId>spring-boot-maven-project</artifactId>
            </plugin>
        </plugins>
    </build>

点package即可打包成jar包,保存到target中。

springboot 知识库管理系统源码 springboot 博客园,springboot 知识库管理系统源码 springboot 博客园_spring_07,第7张

进入jar包目录,执行java -jar命令。

springboot 知识库管理系统源码 springboot 博客园,springboot 知识库管理系统源码 springboot 博客园_jar包_08,第8张

1.4 Hello World探究

1、POM文件

1、父项目
<parent>
        <groupId>org.spring.framework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.5.9 RELEASE</version>
    </parent>

springboot 知识库管理系统源码 springboot 博客园,springboot 知识库管理系统源码 springboot 博客园_java_09,第9张

Spring Boot 的版本仲裁中心;

以后我们导入依赖,默认是不需要写版本的;(没有在dependencies中管理的依赖自然要写上相应的版本)

2、启动器
<dependency>
            <groupId>org.spring.framework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

spring-boot-starter-web:

spring-boot-starter: spring-boot场景启动器;帮我们导入了web模块正常运行所需要的组件;

Spring Boot 将所有的功能场景都抽取出来,做成一个个的starters(启动器),只需要在项目里面引入相关的依赖,要用什么功能就只需要导入相应的启动器依赖。

2、主程序类、主入口类

package com.ckh;

/*
* @SpringBootApplication来标注这是一个主程序类,说明这是一个SpringBoot应用
* */
@SpringBootApplication
public class SpringBootApplication {
    public static void main(String[] args) {
        //spring 应用启动起来
        SpringApplication.run(SpringBootApplication.class,args);
    }
}

@SpringBootApplication注解:表明该类为主程序类,是整个应用的入口类,运行其中的main方法,将应用启动起来。

点开,发现这是一个组合注解:

springboot 知识库管理系统源码 springboot 博客园,springboot 知识库管理系统源码 springboot 博客园_spring boot_10,第10张

@SpringBootConfiguration: Spring boot 的配置类;

标注在某个类上,表示这是一个Spring boot的配置类;

@Configuration:配置类上来标注这个注解;

配置类—配置文件;配置类也是容器中的组件

@EnableAutoConfiguration:开启自动配置功能;

点开如下:

springboot 知识库管理系统源码 springboot 博客园,springboot 知识库管理系统源码 springboot 博客园_jar包_11,第11张

@AutoConfigurationPackage:自动配置包

@Import(AutoConfigurationPackage.Registrar.class);

Spring 的底层注解@import,给容器中导入一个组件;导入的组件由

AutoConfigurationPackage.Registrar.class决定。

将主配置类(@SpringBootApplication标注的类)所在包下面的所有子包里面的所有子类扫描到Spring容器中。

@Import(EnableAutoConfigurationImportSelector.class)

给容器导入组件:

EnableAutoConfigurationImportSelector.class:自动配置导入包的选择器

将所有需要导入的组件以全类名的方式返回;这些组件就会被添加到容器中。

会给容器中导入非常多的自动配置类:就是给容器中导入这个场景需要的所有组件,并配置好这些组件。

springboot 知识库管理系统源码 springboot 博客园,springboot 知识库管理系统源码 springboot 博客园_jar包_12,第12张

1.5 使用Spring Initializer快速地创建SpringBoot项目

1、初始项目的步骤

IDEA都支持使用Spring创建向导快速地创建一个springboot项目。

注意!!使用向导创建一定要连上网!!

1、New Project,点击Spring Initializer,选择jdk的版本。

springboot 知识库管理系统源码 springboot 博客园,springboot 知识库管理系统源码 springboot 博客园_微服务_13,第13张

2、填写包名、和项目名。注意我这里包名里的“helloWorld”写错了,不能有大写字母!!

springboot 知识库管理系统源码 springboot 博客园,springboot 知识库管理系统源码 springboot 博客园_微服务_14,第14张

3、这里都默认就好,点击Finish即可。

springboot 知识库管理系统源码 springboot 博客园,springboot 知识库管理系统源码 springboot 博客园_spring boot_15,第15张

4、创建完成后,右下角会弹出一个小框,点击Enable Auto-Import,以后pom.xml文件修改时就会自动地导入依赖。

如果没有出现这个小框框,那么右键点击pom.xml文件–>Maven–>Reimport.

springboot 知识库管理系统源码 springboot 博客园,springboot 知识库管理系统源码 springboot 博客园_spring boot_16,第16张

至此,一个初始版本地SpringBoot项目创建好了。

5、点击主程序,启动运行:

springboot 知识库管理系统源码 springboot 博客园,springboot 知识库管理系统源码 springboot 博客园_jar包_17,第17张

6、打开控制台窗口,若出现这两行表示运行成功:

springboot 知识库管理系统源码 springboot 博客园,springboot 知识库管理系统源码 springboot 博客园_微服务_18,第18张

2、编写Controller层

首先,在主程序类的包下,新建一个package–controller,再创建一个类—HelloController。

springboot 知识库管理系统源码 springboot 博客园,springboot 知识库管理系统源码 springboot 博客园_spring_19,第19张

package com.ckh.springboot01helloworldquick.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller
public class HelloController {

    /*
    * @ResponseBody注解:表示该方法return的内容直接返回给浏览器
    * @RequestMapping("/hello")注解:表示该方法接收浏览器“/hello”的请求
    * */
    @ResponseBody
    @RequestMapping("/hello")
    public String hello(){
        return "Hello,World!";
    }
    //RESTAPI的方式
}

还可以有另一种写法:

package com.ckh.springboot01helloworldquick.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;

/*
 * 在类上面加@ResponseBody注解,表示整个类中方法的返回值都写回浏览器中。
 * @RestController = @ResponseBody + @Controller
 **/

//@ResponseBody
//@Controller
@RestController
public class HelloController {

    /*
    * @RequestMapping("/hello")注解:表示该方法接收浏览器“/hello”的请求
    * */
    
    @RequestMapping("/hello")
    public String hello(){
        return "Hello,World!";
    }
    //RESTAPI的方式
}

3、运行,浏览器中输入http://localhost:8080/hello即可访问。

springboot 知识库管理系统源码 springboot 博客园,springboot 知识库管理系统源码 springboot 博客园_微服务_20,第20张

3、总结

默认生成的Spring Boot项目:

  • 主程序已经生成好了,我们只需要编写自己的逻辑;
  • resources文件夹中目录结构:
  • static:保存所有静态资源:js css images ;
  • templates:保存所有的模板页面;(Spring Boot默认jar包使用嵌入式的Tomcat,默认不支持JSP页面);可以使用模板引擎(freemarker、thymleaf);
  • application.properties:Spring Boot 应用的配置文件,可以更改默认配置。



https://www.xamrdz.com/lan/56e1963280.html

相关文章: