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
在这里插入图片描述
登录成功:
在这里插入图片描述
项目源码已上传至我的百度网盘,地址在我的微信公众号同篇文章文末处,需要的朋友可以关注我的微信公众号,查看文章获取~

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

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

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • APP推送系统工作原理

    APP推送系统工作原理一、传统APP架构下的信息传送APP主动向服务器请求数据,服务器被动的提供数据。步骤如下:然而,如果此时服务器又有了新的新闻,在用户没有主动刷新的情况下,服务器是不会主动推送给用户的。推送解决了这个困境,它让服务器主动连接APP,通知APP有了新的新闻,可以再请求。收到推送的APP(即使已关闭)又去服务器请求最新的新闻,用户就能看到了。二、实现推送的方法实现一个推送系统需要服务器端和…

  • WPF中WrapPanel、StackPanel等添加滚动条ScrollViewer

    WPF中WrapPanel、StackPanel等添加滚动条ScrollViewerwpf中,在控件中直接设置ScrollViewer.HorizontalScrollBarVisibility和ScrollViewer.VerticalScrollBarVisibility属性,并不能显示滚动条。因为在wpf中,想要显示滚动条,需要把控件放在滚动条视图控件(ScrollViewer)中。ScrollViewer属性说明:VerticalScrollBarVisibili

  • python破解版激活码【中文破解版】

    (python破解版激活码)这是一篇idea技术相关文章,由全栈君为大家提供,主要知识点是关于2021JetBrains全家桶永久激活码的内容IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.cn/100143.html83PVI25FMO-eyJsaWN…

  • ubuntu18.04 LTS安装ROS图文教程「建议收藏」

    ubuntu18.04 LTS安装ROS图文教程「建议收藏」没有安装Ubuntu18.04LTS的自行安装,安装过程祥见我的另一篇文章,地址如下https://blog.csdn.net/u014453443/article/details/88049804下面开始记录ubuntu18.04LTS安装ROS的详细图文教程…

  • vue父组件操作子组件的方法_vue父组件获取子组件数据

    vue父组件操作子组件的方法_vue父组件获取子组件数据父组件和子组件我们经常分不清什么是父组件,什么是子组件。现在来简单总结下:我们将某段代码封装成一个组件,而这个组件又在另一个组件中引入,而引入该封装的组件的文件叫做父组件,被引入的组件叫做子组件。具

  • ajax parsererror报错,jQuery为ajax请求返回“ parsererror”[通俗易懂]

    ajax parsererror报错,jQuery为ajax请求返回“ parsererror”[通俗易懂]我一直在从jquery收到针对Ajax请求的“parsererror”,我尝试将POST更改为GET,以几种不同的方式(创建类等)返回数据,但我似乎无法弄清楚问题出在哪里。我的项目在MVC3中,我使用的是jQuery1.5,我有一个Dropdown,并且在onchange事件上,我触发了一个调用,以根据所选内容获取一些数据。下拉列表:(这会从Viewbag的列表中加载“Views”,并触发事…

发表回复

您的电子邮箱地址不会被公开。

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