spring boot框架搭建_springboot工作原理

spring boot框架搭建_springboot工作原理公司大部分的应用程序都使用springboot开发,作为测试人员,学习了解该框架也势在必行。此外作为想成长为测试开发的同学来说,使用springboot开发后端服务也是一项基本的技能。

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

大家好,我是杨叔。每天进步一点点,关注我的微信公众号【程序员杨叔】,获取更多测试开发技术知识!今天分享的内容是:从零开始搭建springboot框架

一、为什么要学习springboot?

SpringBoot是目前最流行和使用最广泛的Java框架,其强大的自动配置机制使基于Spring的应用程序入门非常容易,大大降低了新手的入门门槛。Springboot作为一个微服务框架,延续了spring框架的核心思想IOC和AOP,简化了应用的开发和部署。程序员们使用它可以做到专注于Spring应用的开发,而无需过多关注XML的配置。

而当大部分公司的应用程序都使用springboot开发时,作为测试人员,学习了解该框架也势在必行了。此外作为想成长为测试开发的同学来说,使用springboot开发后端服务也是一项基本的技能。

有的测试同学可以会觉得作为测开,掌握Python难道还不够吗?Python不也能开发后端服务吗?但现实情况往往是当公司整个研发体系主要是使用Java时,为了适配公司整体的框架体系,比如一些流程、监控体系的接入,最终测试开发人员还是得选用Java作为测试相关平台的开发语言。

因此如果你想成为一名优秀的测试开发人员,不止步于仅仅写一些脚本,想进行更多平台级的开发,那么学习并拥抱Java,会使你的测开之路更加顺畅!

二、项目结构

Idea直接创建一个springboot项目,创建时勾选上spring web, mybatis framework依赖
在这里插入图片描述
项目自动生成后,构建如下的项目目录:
在这里插入图片描述
具体每一层目录&文件含义解释如下:

├── bean						
	├──User                     		User PoJo对象,映射对应数据库字段
├── common               		
	├──WebMvcConfig             		WebMvc配置类,用于重写addViewControllers方法配置映射关系,实现页面路由
├── config                      
	├──SwaggerConfig            		Swagger配置类,配置只有在方法上使用@ApiOperation注解才会暴露给swagger 
├── controller                  
	├──UserController           		controller层,定义前端请求与后端接口的映射关系 
├── dao                         
	├──UserDao           				数据持久层,定义数据库相关接口方法 
├── services                   
	├──UserServices           			接口层,定义后端接口
	├──impl           	
		├──UserServicesImpl     		接口实现类,后端接口的具体方法实现
├── SpringbootmybatisxmlApplication     Springboot启动类
├── resources      						资源类文件夹            
	├──mapper           			
		├──UserMapper           		Mybatis mapper配置文件,管理数据相关方法具体语句实现
├── static                        	    前端页面相关的静态js/css文件、字体、图片等                   
├── templates                 			前端页面HTML文件
├── application.properties         		配置文件,用于配置数据库、Redis等相关的配置信息

Pom.xml文件中maven依赖如下:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.2.2.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.yy</groupId>
    <artifactId>springbootmybatisxml</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>springbootmybatisxml</name>
    <description>Demo project for Spring Boot</description>

    <properties>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jdbc</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.1.1</version>
        </dependency>

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.16.12</version>
            <scope>provided</scope>
        </dependency>

        <!--swagger依赖-->
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>2.9.2</version>
        </dependency>
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger-ui</artifactId>
            <version>2.9.2</version>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
            <exclusions>
                <exclusion>
                    <groupId>org.junit.vintage</groupId>
                    <artifactId>junit-vintage-engine</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>

三、具体代码分析

bean==>User.java
User PoJo对象,映射对应数据库字段:
在这里插入图片描述
common==>WebMvcConfig.java
WebMvc配置类,用于重写addViewControllers方法配置映射关系,实现页面路由:
在这里插入图片描述
config==>SwaggerConfig
Swagger配置类,配置只有在方法上使用@ApiOperation注解才会暴露给swagger
在这里插入图片描述
controller==>UserController
controller层,定义前端请求与后端接口的映射关系, 主要是两个接口,注册和登录:
在这里插入图片描述
在这里插入图片描述
dao==>UserDao
数据持久层,定义数据库相关接口方法:
在这里插入图片描述
services==>UserServices
接口层,定义后端接口,注册和登录接口:
在这里插入图片描述
impl==>UserServicesImpl
接口实现类,注册和登录后端接口的具体方法实现:
在这里插入图片描述
在这里插入图片描述
SpringbootmybatisxmlApplication
Springboot启动类,标准写法:
在这里插入图片描述
resources==>mapper==>UserMapper
Mybatis mapper配置文件,管理数据相关方法具体语句实现
在这里插入图片描述

static: 存放前端页面相关的静态js/css文件、字体、图片等
在这里插入图片描述
templates: 前端注册、登录页面HTML文件
在这里插入图片描述
application.properties:配置文件,用于配置数据库、Redis等相关的配置信息,里面地址、用户名、密码记得换成你自己的可用的信息
在这里插入图片描述

四、启动运行效果

运行springboot的启动类:
在这里插入图片描述
可以看到tomat服务器已经成功启动,端口就是上面配置文件里面配置的80:
在这里插入图片描述
访问注册页面:http://localhost/registerNew
在这里插入图片描述
注册成功:
在这里插入图片描述
访问登录页面:http://localhost/loginNew
在这里插入图片描述
登录成功:
在这里插入图片描述
项目源码已上传至我的百度网盘,地址在我的微信公众号同篇文章文末处,需要的朋友可以关注我的微信公众号,查看文章获取~

=========================================================
以上,如果对你有帮助,

欢迎搜索关注我的微信公众号【程序员杨叔】,免费了解获取更多测试相关干货内容资料,一起交流学习~
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/171556.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • jquery仿搜狐投票动画代码

    体验效果:http://hovertree.com/texiao/jquery/21/这是一款基于jquery实现的仿搜狐投票动画特效源码,运行该源码可见VS图标首先出现在中间位置,紧接着随着投票比例

    2021年12月21日
    40
  • 平衡二叉树与红黑树的区别_平衡二叉树怎么构造

    平衡二叉树与红黑树的区别_平衡二叉树怎么构造平衡二叉树与红黑树一、红黑树的性质:二、红黑树的主要用途,和其他树的比较:三、运用场景一、红黑树的性质:  红黑树是一颗二叉搜索树,通过对任何一条从根到叶子的简单路径上各个结点的颜色进行约束,红黑树确保没有一条路径会比其他路径长出2倍,因而是近似于平衡的。  树的每个结点包含5个属性,color,key,left,right,p。如果一个结点没有子结点或父结点,则该结点的响应指针属性的指为…

    2022年10月21日
    4
  • pycharm激活码最新【在线注册码/序列号/破解码】

    pycharm激活码最新【在线注册码/序列号/破解码】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月20日
    45
  • centos 6.5安装c++ folly库

    centos 6.5安装c++ folly库一 引言 Folly 是一个在 Facebook 内部广泛和可重复使用的 C 库组件大集合 wangle C 网络库 proxygen C http 框架在安装所有的库之前请检查你系统里面的基础编译工具 cmake autoconfcmak version 版本号 2 8 12autoconf version 版本号 2 69autoconf 我使用 2 63 时总出现 configure

    2025年9月18日
    3
  • SVM SMO算法代码详细剖析

    SVM SMO算法代码详细剖析算法实现一:本文要结合SVM理论部分来看即笔者另一篇https://blog.csdn.net/weixin_42001089/article/details/83276714二:有了理论部分下面就是直接代码啦,本文用四部分进行介绍:最简版的SMO,改进版plattSMO,核函数,sklearn库的SVM,四部分以%%%%%%%分开,采取的顺序是先给代码及结果,然后分析三:这里代码大…

    2022年6月17日
    36
  • jdk阅读xml文件

    jdk阅读xml文件

    2022年1月3日
    160

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号