当前位置: 首页 > 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”;
}
}

http://www.lryc.cn/news/409431.html

相关文章:

  • 《计算机网络》(学习笔记)
  • 指针函数和函数指针
  • Elasticsearch跨集群搜索
  • 基于FPGA的数字信号处理(19)--行波进位加法器
  • 树莓派下,centos7操作系统, TensorFlow java版实现植物分类功能
  • 开源一个react路由缓存库
  • go-kratos 学习笔记(7) 服务发现服务间通信grpc调用
  • SPSS个人版是什么软件
  • Minos 多主机分布式 docker-compose 集群部署
  • Unity + Hybridclr + Addressable + 微信小程序 热更新报错
  • 鸿蒙开发—黑马云音乐之Music页面
  • IsaacLab | 如何在Manipulation任务中添加新的目标(target)
  • 【Python从入门到进阶】61、Pandas中DataFrame对象的操作(二)
  • Linux(虚拟机)的介绍
  • CSS(九)——CSS 轮廓(outline)
  • Unity Timeline:构建复杂动画序列的利器
  • C# 与C++ cli
  • Linux文件编程--打开及创建
  • Vue3点击按钮实现跳转页面并携带参数
  • 探索Linux-1-虚拟机远程登陆XShell6远程传输文件Xftp6
  • SpringBoot中使用监听器
  • mybatise全接触-面试宝典-知识大全
  • Catalyst优化器:让你的Spark SQL查询提速10倍
  • 【Hot100】LeetCode—416. 分割等和子集
  • 前端开发知识-vue
  • 【嵌入式硬件】快衰减和慢衰减
  • C语言 | Leetcode C语言题解之第275题H指数II
  • 速盾:网络安全和 CDN 之间的关系是怎样的?
  • 数据库安全:MySQL安全配置,MySQL安全基线检查加固
  • 【SpringBoot】参数传递