MyBatis-SringBoot基础-01

1. 1 SpringBoot 概述

1.1.1 什么是SpringBoot

SpringBoot是Spring平台的一个全新的框架。目的是简化Spring框架应用中的初始化搭建和开发过程。SpringBoot基于Spring4进行的设计。它使用“习惯优于配置”(项目中存在大量的配置,此外还内置一个习惯性的配置,让你无需手动进行配置)的理念让你的项目快速运行起来。使用SpringBoot很容易创建一个独立运行(运行jar,内嵌Servlet容器) 、准生产级别的基于Spring框架的项目,使用SpringBoot你可以不用或者只需要很少的Spring配置。

1.1.2 SpringBoot 核心功能

1、独立运行的Spring项目

  SpringBoot可以以jar包的形式独立运行,运行一个SpringBoot项目只需要通过java -jar xx.jar来启动。

2、内嵌Servlet容器

  SpringBoot 可以选择内嵌Tomcat、Jetty或者Undertow,这样可以无需以war包形式部署项目。

3、提供starter简化Maven配置

  Spring提供了一系列的starter pom 来简化Maven的依赖加载

4、自动配置Spring

  SpringBoot会根据在类路径中的jar包、类,为jar包里的类自动配置Bean,这样可以极大地减少用户使用的配置。当时SpringBoot中只考虑了大多数的开发场景,并不是所有的场景,在需要手动配置Bean的时候,使用自定义配置。

5、准生产级别的监控

  SpringBoot提供基于http、ssh、telnet对运行时的项目进行监控

6、无代码生产和xml配置

  SpringBoot的功能实现主要通过条件注解来实现。这是Spring4.x提供的新特性。

  Spring4.x提倡使用Java配置和注解配置组合,而SpringBoot不需要任何xml配置即可实现Spring的所有配置。

1.1.3 SpringBoot 的优缺点

Spring Boot的优点:

  1. 快速构建项目:提供了一些非常方便的starter pom,可以快速集成常用的第三方库,例如 Spring Data, JPA, Security 等。

  2. 自动配置:基于Spring应用的通用场景,提供了自动配置的功能,简化了开发人员的配置工作。

  3. 无代码生成和XML配置:主张无XML配置,不要求你写任何XML。

  4. 应用监控:提供了actuator模块,可以快速地监控和管理应用。

  5. 多环境支持:可以方便地开发多环境配置,例如开发环境、测试环境、生产环境等。

Spring Boot的缺点:

  1. 过于冗余的配置:Spring Boot的自动配置可能不适合所有的应用,导致有些时候需要覆盖或者调整它的默认配置。

  2. 版本更新可能带来不兼容的变化:随着Spring Boot版本的更新,可能会有不兼容的API变化。

  3. 缺乏灵活性:Spring Boot限制了很多框架的灵活性,例如不能完全控制Spring MVC的配置。

1.2 SpringBoot 快速搭建

在使用SpringBoot框架进行各种开发体验之前,要先配置好开发环境。首先安装 JDK,然后选择一个开发工具,如Eclipse IDE 和 Intellij IDEA(以下简称 IDEA )都是不错的选择。对于开发工具的选择,鼠鼠推荐使用使用 IDEA,因为它为 SpringBoot 提供了许多更好和更贴切的支持,鼠鼠的所有实例都是使用 IDEA 创建的。

1.2.1 使用 Maven 新建项目

使用Maven创建一个项目主要有三个步骤。

1. 选择项目类型

在图中的 Project SDK 下拉框中选择运行环境的版本,鼠鼠的是java 1.8,如果下拉框中没有内容,可以单击New按钮,找到自己安装的java位置,选择它。然后在左面侧边栏的项目类型中,选择Maven项目,即可使用Maven作为项目的管理工具。然后勾选Create from archetype 则可以跟据一个项目骨架(项目模板)来创建一个新的工程

2. 指定项目名称和路径

在Name编辑框中输入项目名称,在Location编辑框中选择和更改路径,单击Finish,完成项目创建

 1.2.2 使用 MyBatis

MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录

1.加入依赖(jar)

使用 Maven 来构建项目,则需将下面的依赖代码置于 pom.xml 文件中:

<!--jar-->
 <dependency>
   <groupId>org.mybatis</groupId>
   <artifactId>mybatis</artifactId>
   <version>3.5.3</version>
 </dependency>

<!-- 允许了可以通过java去操作mysql数据库。mysql-connector-java相当于是mysql数据库的客户端-->
 <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
 <dependency>
   <groupId>mysql</groupId>
   <artifactId>mysql-connector-java</artifactId>
   <version>8.0.28</version>
 </dependency>

2. Mybatis的配置文件

在main目录下创建resources目录,在resources创建File文件 将配置文件放入File文件

配置文件:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "https://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <!-- 环境   default=development   使用的默认的环境的id是development-->
    <environments default="development">
        <environment id="development">
            <!-- 事务管理器-->
            <transactionManager type="JDBC"/>
            <!-- 数据源   type =pooled -->
            <dataSource type="POOLED">
                <!-- basedb  driver mysql8的jar 必须是加cj-->
                <property name="driver" value="com.mysql.cj.jdbc.Driver"/>
                <!-- mysql8的时候一定要加时区不加的话 时间会错8个小时   2024-5-28 10:53:00 -->
                <property name="url" value="jdbc:mysql://localhost:3306/sanqi?useSSL=false&amp;serverTimezone=Asia/Shanghai"/>
                <!-- 连接数据库的名字-->
                <property name="username" value="root"/>
                <!--                 连接数据库的密码-->
                <property name="password" value="root"/>
            </dataSource>
        </environment>
    </environments>
    <mappers>
        <mapper resource="org/mybatis/example/BlogMapper.xml"/>
    </mappers>
</configuration>

 3. Mybatis和SpringBoot

Mybatis和SpringBoot的关系

Spring Boot和MyBatis是两个常用的开源框架,它们可以一起用来简化Java企业级应用的开发。Spring Boot提供了快速构建、配置和启动生产级应用的一种方法,而MyBatis是一个优秀的持久层框架,它可以用简单的XML或注解来配置和映射SQL语句。

1.2.3 ORM对象关系映射

1. 认识ORM

ORM是一种描述对象与关系数据库之间映射的规范,像上面的MyBatis就是一种半自动 ORM 实现

2. ORM的作用

主要作用是简化数据库操作、提高开发效率、减少重复代码,从而提高软件开发的效率和质量,简单来说就是用面向对象的方式去操作数据库的创建表以及增删改查等操作。

  • 17
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值