当前位置: 首页 > news >正文

1.Spring Boot 简介(Spring MVC+Mybatis-plus)

文章目录

    • 一,`Spring Boot` 简介
    • 二,搭建springboot项目并整合mybatis-plus框架
      • 1.pom导依赖
      • 2.添加启动项
      • 3.配置文件`.yml`
    • 三,springboot集成` Spring MVC`
      • 1.springmvc定义
      • 2.应用注解

一,Spring Boot 简介

SpringBoot是Spring的子工程(或是spring的脚手架),快速搭建spring项目,自动配置了Spring 应用程序和第三方库

(spring+mybaties+web(servlet)+ reids+ 消息中间件),而且使用很少xml配文件,提高开发效率。

二,搭建springboot项目并整合mybatis-plus框架

1.pom导依赖

  <!--  springboot项目依赖的父工程--><!--springboot项目依赖的父工程
父工程主要有市面上流行技术很多jar包,
自已项目使用的话,只需引入,不需要写版本号,好处解决了很多jar依赖版本问题
--><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><!--    不能版本3.0后,之后需要jdk17版本--><version>2.5.4</version></parent><dependencies><!--是springmvc依赖,也是springboot启动依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!--连接数据库--><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId></dependency><!--mybatis-plus依赖,对应yml文件的配置--><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.4.2</version></dependency><!--  druid: 数据库连接池--><dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId><version>1.2.6</version></dependency><!--测试依赖,集成多个测试库,例如: JUnit:Java的单元测试框架.......--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.34</version></dependency></dependencies>

2.添加启动项

/*** 启动类* * @SpringBootApplication:标识该类是启动类*/
@SpringBootApplication
//让Mybatis扫描接口路径 || 或者每个mapper接口加注解@Mapper
@MapperScan("com.woniuxy.mapper")
public class App {//    证明已经启动成功:
//    Tomcat initialized with port(s):8080 (http)
//    Tomcat started on port(s):8080 (http)with context path ''public static void main(String[] args) {SpringApplication.run(App.class);}
}

3.配置文件.yml

类似于jdbc | source.properties配置文件

注意事项:

  • 0: 注释是#
  • 1:使用换行加空格代表层级关系
  • 2:同级和同级之间要对齐
  • 3:值和属性名之间要有空格
#启动时: 端口号被占用,解决办法修改端口号 || 任务管理器结束jdk进程
#server:
#  port: 8081
spring:datasource:#连接数据库driver-class-name: com.mysql.cj.jdbc.Driver #连接驱动#连接数据库的路径url: jdbc:mysql://127.0.0.1:3306/community?useUnicode=true&characterEncoding=utf-8&serverTimezone=UTC&allowMultiQueries=trueusername: rootpassword: 123456type: com.alibaba.druid.pool.DruidDataSourcedruid:min-idle: 5 #最小连接数max-active: 20 #最大连接数max-wait: 6000 #连接等待超时时间,单位毫秒数
#      对应导入的依赖pom文件mybatis-plus
mybatis-plus:#指定映射文件路径mapper-locations: classpath:mapper/*.xml configuration:log-impl: org.apache.ibatis.logging.stdout.StdOutImpl #控制台日志输出sql语句内容#配置查询返回的实体类路径,ResultType可直接赋值对象type-aliases-package: com.woniuxy.entity

三,springboot集成 Spring MVC

1.springmvc定义

一款基于mvc模式、请求驱动、轻量级web框架(封装了Servlet)

  • 给予MVC模式
  • 请求驱动
  • 轻量级web框架
  • 封装了Servlet程序

2.应用注解

  1. @Controller

    申明此类是controller类, 接受客户端请求

  2. @RequestMapping

    设置可以访问该方法一个路径"浏览器请求的路径"__(类似@Webservlet);

  3. ReponseBody

    返回一个浏览器页面json数据,方法返回默认不是一个json, 是一个请求页面的路径

@Controller //接受客户端请求
public class UserController {@RequestMapping("/hello")@ResponseBodypublic String sayHello() {return "hello SpringMvc!!!";}@RequestMapping("/queryById")//客户端请求路径__映射路径@ResponseBody//指定返回的是数据还是页面,不加此注解默认返回页面,在根路径下查找页面,此注解返回json数据//获取请求路径的参数: 路径?id=1//@RequestParam(value = "userId", defaultValue = "10"设置传递参数的默认值为10public String queryById(@RequestParam(value = "userId") int id) {//@RequestParam("userId")对应地址栏传递的参数的属性名6System.out.println(id);return "/hello";}
}

yId(@RequestParam(value = “userId”) int id) {//@RequestParam(“userId”)对应地址栏传递的参数的属性名6
System.out.println(id);
return “/hello”;
}
}

相关文章:

  • oracle 查询锁表
  • JS 鼠标拖动实现移动滚动条的滚动效果
  • pageoffice常见问题处理
  • 算法 —— 暴力枚举
  • Godot入门 04平台设计
  • UE4-构建光照后导入的静态网格体变黑
  • c++中的scanf
  • Midjourney绘画提示词精选
  • 使用 nmcli 管理网络连接
  • 【Python机器学习】决策树的构造——信息增益
  • 网络安全自学从入门到精通的制胜攻略!!!
  • 【调色板软件】免费、开源的调色板软件,焰火十二卷,提供了多种功能来生成一组调和色彩NO.108
  • vue3+vite 实现动态引入某个文件夹下的组件 - glob-import的使用
  • Unity UGUI 之 自动布局组件
  • 【Linux】进程信号 --- 信号处理
  • JavaScript 如何正确处理 Unicode 编码问题!
  • [译]Python中的类属性与实例属性的区别
  • 2017-08-04 前端日报
  • co.js - 让异步代码同步化
  • Hibernate【inverse和cascade属性】知识要点
  • IIS 10 PHP CGI 设置 PHP_INI_SCAN_DIR
  • MaxCompute访问TableStore(OTS) 数据
  • miniui datagrid 的客户端分页解决方案 - CS结合
  • mongodb--安装和初步使用教程
  • php ci框架整合银盛支付
  • React16时代,该用什么姿势写 React ?
  • vue-router的history模式发布配置
  • 笨办法学C 练习34:动态数组
  • 缓存与缓冲
  • 可能是历史上最全的CC0版权可以免费商用的图片网站
  • 聊聊redis的数据结构的应用
  • 融云开发漫谈:你是否了解Go语言并发编程的第一要义?
  • 软件开发学习的5大技巧,你知道吗?
  • 微信小程序--------语音识别(前端自己也能玩)
  • $Django python中使用redis, django中使用(封装了),redis开启事务(管道)
  • (C语言)输入一个序列,判断是否为奇偶交叉数
  • (HAL库版)freeRTOS移植STMF103
  • (Matlab)遗传算法优化的BP神经网络实现回归预测
  • (SpringBoot)第二章:Spring创建和使用
  • (超详细)语音信号处理之特征提取
  • (附源码)php投票系统 毕业设计 121500
  • (附源码)springboot猪场管理系统 毕业设计 160901
  • (附源码)ssm本科教学合格评估管理系统 毕业设计 180916
  • (附源码)ssm基于jsp的在线点餐系统 毕业设计 111016
  • (理论篇)httpmoudle和httphandler一览
  • (免费领源码)python#django#mysql公交线路查询系统85021- 计算机毕业设计项目选题推荐
  • (十八)devops持续集成开发——使用docker安装部署jenkins流水线服务
  • (贪心 + 双指针) LeetCode 455. 分发饼干
  • (已更新)关于Visual Studio 2019安装时VS installer无法下载文件,进度条为0,显示网络有问题的解决办法
  • (转)我也是一只IT小小鸟
  • .h头文件 .lib动态链接库文件 .dll 动态链接库
  • .NET Core 网络数据采集 -- 使用AngleSharp做html解析
  • .net core 微服务_.NET Core 3.0中用 Code-First 方式创建 gRPC 服务与客户端
  • .Net Core中的内存缓存实现——Redis及MemoryCache(2个可选)方案的实现
  • .NET Entity FrameWork 总结 ,在项目中用处个人感觉不大。适合初级用用,不涉及到与数据库通信。