Springboot总结

目录

一、Springboot由来及入门

为什么要使用Springboot?它有什么优点?

二、Spring boot核心配置 

三、连接数据库

四、mybatis、mybatis-plus、Jpa的原理和简单使用

五、前端模板引擎Thymeleaf的整合和使用

六、常用注解


一、Springboot由来及入门

        随着Node.js、Ruby、Groovy、PHP、Scala等脚本语言和敏捷开发渐呈主流之势,使Spring开发应用程序显得十分繁琐,大量的配置文件与第三方框架的整合,使得开发和部署效率较低。于是,Springboo应运而生。

为什么要使用Springboot?它有什么优点?

因为它简化了代码开发,避免了繁琐的配置工作。

优点:

1.约定优于配置

2.创建独立运行的Spring应用程序

3.内嵌Servlet容器

4.提供starter简化Maven配置

5.自动配置Spring

6.准生产的应用监控

7.无代码生成和XML配置

二、Spring boot核心配置 

   启动器:  

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

   pom.xml:项目依赖文件

配置文件application.properties

#设置端口号
server.port=8082
#设置访问应用的上下文路径,contextpath
server.servlet.context-path=/myboot

yml不是以键=值的方式,而是 键:值,并且还有层级关系。

推荐使用yml的方式来写,删除application.properties

配置文件的优先级:application.properties>application.yml>appllication.yaml

 Spring boot基本的包

1.Entity层

entity层又被称为实体类层,实体类通常包含私有成员变量和公共访问方法(getter 和 setter)可以用@Data注解轻松实现,用于存储和访问数据。在实体类中,成员变量通常与表中的列相对应,而访问方法则用于操作这些数据。

2.Service层

Service层通常是用来处理业务逻辑的部分,它还负责调用dao层,实现对数据的处理和业务逻辑的实现,然后返回给controller层。

3.Controller层

Controller层又称为控制类,处理HTTP请求。

4.Dao(Mapper)层

Dao又称为数据访问层,主要作用是实现对数据库的增删改查操作。 

三、连接数据库

引入依赖:

<dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.28</version>
        </dependency>
        <!-- 导入Mybatis-Plus依赖 -->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.4.0</version>
        </dependency>
        <!-- 导入lombok依赖 -->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <scope>provided</scope>
        </dependency>

 .yml连接数据库:

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/db02?ServerTimezone=UTC
    username: root  
    password: ***
    driver-class-name: com.mysql.cj.jdbc.Driver
spring:
  #  mysql配置信息
  datasource:
  	#                 数据库地址  端口  数据库名
    url: jdbc:mysql://127.0.0.1:3306/springboot_demo?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=GMT%2B8
    username: root	# 账号
    password: root	# 密码
    driver-class-name: com.mysql.cj.jdbc.Driver
mybatis-plus:
  mapper-locations: mapper/*.xml #这个配置是用来连接mapper接口和mapper配置类的
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl #运行日志
    map-underscore-to-camel-case: true #驼峰转换
  type-aliases-package: com.example.springbootdemo.model #实体类扫描包

四、mybatis、mybatis-plus、Jpa的原理和简单使用

mybatis:是一个优秀的持久层的框架, 通过Dao层将业务逻辑和数据访问逻辑分离,是系统的设计更清晰,系统更容易维护和进行单元测试。它对JDBC操作数据库的过程进行封装,使得开发者只需要关注SQL语句本身,不需要再花费精力去处理其他的东西,如:注册驱动、创connection、创建statement、手动设置参数、结果集检索等JDBC繁杂的过程代码。mybatis通过XML配置文件或注解的方式配置要执行的各种Statement或preparedStatement,并通过Java对象和Statement中的SQL语句进行映射,最终生成执行的SQl语句,最后由mybatis执行SQL语句并将结果映射成Java对象返回。

 mybatis依赖:

<dependency>
    <groupId>org.mybatis.spring.boot</groupId>
    <artifactId>mybatis-spring-boot-starter</artifactId>
    <version>1.3.2</version>
</dependency>

 而mybatis-plus是一个增强工具,它在mybatis的基础上只做增强不做改变,是为简化开发、提高效率而生。

使用spring-boot整合mybatis时,要注意mybatis的映射文件的位置,而mybatis-plus不同,它里面包含了常见的数据库核心操作,一般不需要配置映射文件。

 mybatis-plus依赖:

<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.3.1</version>
</dependency>

JPA:是一种规范或标准,用来操作实体对象,执行CRUD操作,使得框架在后台替代用户完成所有事情,Spring Data JPA是Spring提供的一套简化JPA开发的框架,提供了许多功能,如:分页、排序以及复杂查询等···

 JPA为我们提供以下功能:                                                                                                                ORM元数据:JPA支持XML和注解两种元数据形式,元数据用来描述对象和关系表之间的映射关系,框架据此将实体对象持久化到数据库中,如@Entity、@Table、@Transient等注解。

        JPA的API:用来操作实体对象,执行CRUD操作,使框架在后台替我们完成所有的事情,是开发者从烦琐的JDBC和SQL代码中解脱出来

        JPQL:通过面向对象而非面向数据库的查询语言来查询数据,避免程序的SQL语句过于读。

JPA依赖:

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

JPA配置:

#jpa配置
  jpa:
    show-sql: false
    hibernate:
      ddl-auto: create
     
    properties:
      hibernate:
        dialect: org.hibernate.dialect.MySQL5Dialect

五、前端模板引擎Thymeleaf的整合和使用

         Thymeleaf:是一款支持HTML、XML、TEXT、Javascript、CSS、raw等的模板引擎,它可以完全取代JSP,与其他模板引擎相比,Thymeleaf是开箱即用的,不需要启动整个Web项目,其模板语法并不会破坏文档的结构,使用方便。

Thymelea依赖:

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

Thymelea模板:

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <link href="https://cdn.staticfile.org/twitter-bootstrap/5.1.1/css/bootstrap.min.css" rel="stylesheet">
    <script src="https://cdn.staticfile.org/twitter-bootstrap/5.1.1/js/bootstrap.bundle.min.js"></script>
</head>
<body>

</body>
</html>

 

六、常用注解

基础注解:

@Service: 注解在类上,表示这是一个业务层bean

@Controller:注解在类上,表示这是一个控制层bean

@Repository: 注解在类上,表示这是一个数据访问层bean

@Component: 注解在类上,表示通用bean ,value不写默认就是类名首字母小写

@Autowired:按类型注入.默认属性required= true

@Resource: 按名称装配。

启动注解:

@SpringBootApplication:包含了@ComponentScan@Configuration@EnableAutoConfiguratio注解。

@ComponentScan:让spring Boot扫描到Configuration类并把它加入到程序上下文。

@SpringBootConfiguration :等同于spring的XML配置文件;使用Java代码可以检查类型安全。

@EnableAutoConfiguration :自动配置。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

卡匹

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值