springboot-web总结

一、web概述

  1. 基本概念

Java Web 开发是指使用 Java 技术开发 Web 应用程序的过程。Web 应用程序是指通过浏览器访问的应用程序,通常包括前端页面和后端服务两个部分。

  1. 技术栈

Java Web 开发主要使用的技术栈包括 Java EE、Servlet、JSP、Spring、Hibernate 等技术。其中,Java EE 是 Java Enterprise Edition 的缩写,是一套用于企业级应用开发的规范和标准;Servlet 是 Java Web 开发中最基本的组件之一,用于处理 HTTP 请求和响应;JSP 是 Java Server Pages 的缩写,是一种在 HTML 页面中嵌入 Java 代码的技术;Spring 是一款轻量级的 Java 开发框架,提供了依赖注入、AOP 等功能;Hibernate 是一款 ORM 框架,用于将 Java 对象映射到数据库表中。

二、Web 应用程序的架构

Web 应用程序的架构通常包括用户界面层、业务逻辑层和数据访问层三个部分。用户界面层负责展示前端页面,业务逻辑层负责处理业务逻辑,数据访问层负责与数据库进行交互。下面我将结合代码来详细介绍这三个部分。

1·用户界面

用户界面层负责与用户进行交互,展示前端页面。通常使用 HTML、CSS 和 JavaScript 进行开发。以下是一个简单的用户界面层的代码示例:

  1. <!DOCTYPE html>
    <html>
    <head>
        <title>Web应用程序</title>
        <link rel="stylesheet" href="styles.css">
    </head>
    <body>
        <h1>欢迎访问Web应用程序</h1>
        <form action="/login" method="post">
            <label for="username">用户名:</label>
            <input type="text" id="username" name="username" required><br>
            <label for="password">密码:</label>
            <input type="password" id="password" name="password" required><br>
            <input type="submit" value="登录">
        </form>
        <script src="script.js"></script>
    </body>
    </html>

    以上代码是一个简单的 HTML 页面,包含了一个表单用于用户登录。用户可以输入用户名和密码,并点击登录按钮提交表单/

2·业务逻辑

业务逻辑层负责处理应用程序的业务逻辑,对用户的请求进行处理和相应。在 Java Web 开发中,通常使用 Servlet 或 Spring MVC 来实现业务逻辑层。以下是一个使用 Servlet 实现的业务逻辑层的代码示例:

@WebServlet("/login")
public class LoginServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        String username = request.getParameter("username");
        String password = request.getParameter("password");
        
        if ("admin".equals(username) && "123456".equals(password)) {
            response.sendRedirect("/home");
        } else {
            response.sendRedirect("/error");
        }
    }
}

以上代码是一个简单的 Servlet 类,处理了用户登录的请求。从请求中获取到用户名和密码,并进行验证。如果用户名和密码正确,则重定向到主页;否则重定向到错误页面

3·数据访问层

数据访问层负责与数据库进行交互,执行数据库操作。在 Java Web 开发中,通常使用 JDBC 或者 ORM 框架(如 Hibernate)来实现数据访问层。以下是一个使用 JDBC 实现的数据访问层的代码示例:

public class UserDao {
    public boolean checkUser(String username, String password) {
        // 连接数据库,执行查询操作
        // ...
        // 返回查询结果
        // ...
    }
}

以上代码是一个简单的 UserDao 类,提供了一个方法用于检查用户是否存在。在该方法中,可以编写 JDBC 代码连接数据库并执行查询操作,然后返回查询结果。

综上所述,Web 应用程序的架构包括用户界面层、业务逻辑层和数据访问层三个部分。用户界面层负责展示前端页面,业务逻辑层负责处理用户的请求并执行相应的业务逻辑,数据访问层负责与数据库进行交互。通过这种架构,可实现良好的分层和解耦,提高代码的可维护性和可扩展性。

三、Java Web 应用程序的开发流程

1·阶段分析

Java Web 应用程序的开发流程通常包括项目搭建、设计数据库、编写后端代码、编写前端代码、测试和部署等步骤。

在需求分析阶段,需要明确应用程序的功能和需求;在设计阶段,需要设计应用程序的架构和模型;在编码阶段,需要编写代码实现功能;在测试阶段,需要对应用程序进行测试,包括单元测试、集成测试和系统测试等;在部署阶段,需要将应用程序部署到服务器上进行运行。

2·开发流程

  • 项目搭建

首先,我们需要创建一个新的 Java Web 项目。可以使用 IDE(如 Eclipse、IntelliJ IDEA)来创建项目,也可以使用命令行工具(如 Maven)来创建项目。以下是一个使用 Maven 创建 Java Web 项目的代码示例:

<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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.example</groupId>
    <artifactId>my-web-app</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>war</packaging>

    <dependencies>
        <!-- 添加所需的依赖 -->
    </dependencies>

    <build>
        <plugins>
            <!-- 配置构建插件 -->
        </plugins>
    </build>
</project>

在以上代码中,我们使用 Maven 创建一个名为 "my-web-app" 的 Java Web 项目,并指定了一些基本配置,例如项目的 groupId、artifactId 和版本号

  • 设计数据库

接下来,我们需要设计和创建数据库。可以使用关系型数据库(如 MySQL、Oracle)或非关系型数据库(如 MongoDB)来存储数据。以下是一个简单的 MySQL 数据库表的创建语句的代码示例:

CREATE TABLE users (
    id INT PRIMARY KEY AUTO_INCREMENT,
    username VARCHAR(50) NOT NULL,
    password VARCHAR(50) NOT NULL
);

以上代码创建了一个名为 "users" 的表,包含了 id、username 和 password 字段。

  • 编写后端代码

接下来,我们需要编写后端代码,处理用户的请求和执行相应的业务逻辑。在 Java Web 开发中,通常使用 Servlet 或 Spring MVC 来实现后端代码。以下是一个使用 Servlet 实现用户登录功能的代码示例:

@WebServlet("/login")
public class LoginServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        String username = request.getParameter("username");
        String password = request.getParameter("password");
        
        // 验证用户名和密码,代码略
        
        if (isValidUser) {
            // 登录成功,重定向到主页
            response.sendRedirect("/home");
        } else {
            // 登录失败,重定向到错误页面
            response.sendRedirect("/error");
        }
    }
}

创建了一个名为 "LoginServlet" 的 Servlet 类,处理了用户登录的请求。从请求中获取到用户名和密码,并进行验证。根据验证结果,可以重定向到主页或错误页面。

  • 编写前端代码

然后,我们需要编写前端代码,与用户进行交互并展示页面。通常使用 HTML、CSS 和 JavaScript 来编写前端代码。以下是一个简单的登录页面的代码示例:

<!DOCTYPE html>
<html>
<head>
    <title>登录页面</title>
    <link rel="stylesheet" href="styles.css">
</head>
<body>
    <h1>欢迎登录</h1>
    <form action="/login" method="post">
        <label for="username">用户名:</label>
        <input type="text" id="username" name="username" required><br>
        <label for="password">密码:</label>
        <input type="password" id="password" name="password" required><br>
        <input type="submit" value="登录">
    </form>
    <script src="script.js"></script>
</body>
</html>

创建了一个简单的登录页面,包含了一个表单用于用户输入用户名和密码,并提交表单进行登录。

  • 测试和部署

最后,我们需要对应用程序进行测试,并将其部署到服务器中。可以使用单元测试框架(如 JUnit)对后端代码进行测试,使用浏览器或其他工具对前端页面进行测试。部署时,可以将项目打包为 WAR 文件,并将其部署到 Web 服务器(如 Tomcat)中。

综上所述,Java Web 应用程序的开发流程包括项目搭建、设计数据库、编写后端代码、编写前端代码、测试和部署等步骤。通过以上步骤,我们可以开发出一个完整的 Java Web 应用程序。

四、springboot开发入门


1.概述


做Java开发的人一提起Spring,首先在脑海中浮现出的就是“IoC”,“AOP”,“Spring MVC”,“Spring Security”等等这些名词,甚至大有“无Spring不Java”的感慨。
实际上,时至今日Spring已不再是一个简单的编程框架了,从最初的“SSH框架”发展到今天,Struts和Hibernate都几乎快要从程序员视野中消失了,而Spring却发展成了一个非常庞大且完整的生态。
所以说,除非特别指明是Spring生态中的某个具体框架,否则提起“Spring”应该指的是整个Spring生态。
说句不夸张的话,Java程序员只要精通了Spring,也就掌握了Java开发的精髓。

在整个Spring生态中包含了许多应用在特定场景的具体框架,如:“Spring Framework”,“Spring Security”,“Spring Boot”,“Spring Cloud”等等,其中“Spring Framework”框架是整个生态的核心基础,其他框架都需要依赖“Spring Framework”提供的基础功能,而且每个框架都有自己独立的代码仓库。

2. Spring 框架介绍


Spring是一个开源的Java应用程序框架,由Rod Johnson创建并首次发布于2003年。它提供了一种全面的编程和配置模型,旨在简化企业级应用程序的开发。

Spring框架的核心特性是依赖注入(Dependency Injection)和面向切面编程(Aspect-Oriented Programming)。依赖注入通过解耦组件之间的依赖关系,使得代码更加可测试、可维护,并且降低了组件之间的耦合度。面向切面编程允许开发者将与业务逻辑无关的横切关注点(如事务管理、安全性等)从核心业务逻辑中分离出来,以提高代码的可重用性和可维护性。

Spring框架还提供了许多其他功能和模块,如数据访问、Web开发、消息传递、任务调度等。它支持各种应用程序类型,包括传统的单体应用、分布式系统、微服务架构等。

随着时间的推移,Spring框架的生态系统不断壮大,涌现出许多与Spring集成的项目和解决方案。例如,Spring Boot是Spring生态系统中的一个子项目,旨在简化Spring应用程序的开发和部署。Spring Cloud则提供了一套用于构建分布式系统的工具和组件。此外,Spring框架还与其他流行的开源技术(如Hibernate、MyBatis、Thymeleaf等)集成,以提供更全面的解决方案。

总之,Spring框架通过提供强大而灵活的特性,帮助开发者构建高效、可扩展且易于维护的Java应用程序。它在Java开发社区中具有广泛的影响力,并被许多企业和开发团队广泛采用。

五、 Spring Boot框架


1. Spring Boot框架介绍


Spring Boot是一款用于简化Java应用程序开发的开源框架,它是由Pivotal软件公司(现为VMware)的工程师们开发的。Spring Boot的目标是简化传统Spring框架的配置和部署过程,提供一个更快速、更易于使用的开发环境。

Spring Boot的发展可以追溯到2013年。当时,Spring框架已经成为Java开发领域最受欢迎的框架之一,但在配置和部署方面存在一些繁琐的问题。为了解决这些问题,Spring团队决定开发一个新的框架,即Spring Boot。

Spring Boot的设计初衷是让开发者能够以最小的配置快速搭建一个可运行的Java应用程序。它通过自动配置和约定大于配置的原则,减少了开发者在项目配置方面的工作量,并提供了丰富的特性和开箱即用的功能,如自动化的依赖管理、内嵌服务器、健康检查、监控等。同时,Spring Boot也保留了Spring框架的优势,如依赖注入、AOP等。

随着时间的推移,Spring Boot逐渐获得了广泛的认可和应用。它的简洁性和高效性使得开发者能够更专注于业务逻辑的实现,而无需过多关注配置和部署的细节。Spring Boot也积极采纳了开发者的反馈和贡献,不断更新和改进自身的功能。

截至当前,Spring Boot已经成为Java应用程序开发中最流行的框架之一。许多企业和开发团队都在使用它来开发各种类型的应用,包括Web应用、批处理应用、微服务等。同时,Spring Boot也与其他技术生态系统(如Spring Cloud、Spring Data等)密切结合,为开发者提供了全面的解决方案。

2.Spring Boot的缺点


学习曲线:尽管Spring Boot简化了配置和开发过程,但仍然需要掌握Spring框架的基础知识。对于初学者来说,仍需要一定的学习曲线和理解Spring框架的概念和原则。

复杂性:尽管Spring Boot简化了很多配置,但对于复杂的应用场景,仍然需要深入了解底层的Spring框架和原理。在某些情况下,需要手动进行配置或调整。

内置容器限制:Spring Boot内嵌的Web服务器默认适合开发和测试环境使用,对于高并发或特殊需求的生产环境可能不够灵活。在这种情况下,可能需要考虑使用自定义的容器进行部署。

六、Spring boot核心配置


1.启动器:  

<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

2.Spring boot基本的包


1.Entity层


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

2.Service层


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

3.Controller层


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

4.Dao(Mapper)层


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

5.连接数据库

引入依赖:

<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的原理和简单使用


1. mybatis依赖

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>


2.JPA

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项目,其模板语法并不会破坏文档的结构,使用方便。

1.Thymelea依赖:

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

2.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>


  • 21
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
第 1 章 入门 ................................................ 1 1.1 Spring 风云再起 ........................................ 1 1.1.1 重新认识 Spring ............................ 2 1.1.2 Spring Boot 精要 ........................... 3 1.1.3 Spring Boot 不是什么 ................... 6 1.2 Spring Boot 入门 ....................................... 6 1.2.1 安装 Spring Boot CLI .................... 7 1.2.2 使用 Spring Initializr 初始化 Spring Boot 项目 .......................... 10 1.3 小结 ......................................................... 18 第 2 章 开发第一个应用程序 .................... 19 2.1 运用 Spring Boot ..................................... 19 2.1.1 查看初始化的 Spring Boot 新项目 .......................................... 21 2.1.2 Spring Boot 项目构建过程 解析 .............................................. 24 2.2 使用起步依赖 .......................................... 27 2.2.1 指定基于功能的依赖 ................... 28 2.2.2 覆盖起步依赖引入的传递依赖 .... 29 2.3 使用自动配置 .......................................... 30 2.3.1 专注于应用程序功能 ................... 31 2.3.2 运行应用程序 .............................. 36 2.3.3 刚刚发生了什么 ........................... 38 2.4 小结 ......................................................... 41 第 3 章 自定义配置 .................................... 42 3.1 覆盖 Spring Boot 自动配置 ..................... 42 3.1.1 保护应用程序 .............................. 43 3.1.2 创建自定义的安全配置 ............... 44 3.1.3 掀开自动配置的神秘面纱 ........... 48 3.2 通过属性文件外置配置 ........................... 49 3.2.1 自动配置微调 .............................. 50 3.2.2 应用程序 Bean 的配置外置 ......... 55 3.2.3 使用 Profile 进行配置 .................. 59 3.3 定制应用程序错误页面 ........................... 62 3.4 小结 ......................................................... 64 第 4 章 测试 ............................................... 66 4.1 集成测试自动配置 .................................. 66 4.2 测试 Web 应用程序 ................................. 68 4.2.1 模拟 Spring MVC ........................ 69 4.2.2 测试 Web 安全 ............................. 72 4.3 测试运行中的应用程序 ........................... 74 4.3.1 用随机端口启动服务器 ............... 75 4.3.2 使用 Selenium 测试 HTML 页面 ............................................. 76 4.4 小结 ......................................................... 78 第 5 章 Groovy 与 Spring Boot CLI ......... 80 5.1 开发 Spring Boot CLI 应用程序 .............. 80 5.1.1 设置 CLI 项目 .............................. 81 5.1.2 通过 Groovy 消除代码噪声 ......... 81 5.1.3 发生了什么 .................................. 85 5.2 获取依赖 .................................................. 86 5.2.1 覆盖默认依赖版本 ....................... 87 5.2.2 添加依赖仓库 .............................. 88 5.3 用 CLI 运行测试 ...................................... 89 5.4 创建可部署的产物 .................................. 91 5.5 小结 ......................................................... 91 第 6 章 在 Spring Boot 中使用 Grails ...... 93 6.1 使用 GORM 进行数据持久化 ................. 93 6.2 使用 Groovy Server Pages 定义视图 ....... 98 6.3 结合 Spring Boot 与 Grails 3 ................. 100 6.3.1 创建新的 Grails 项目 ................. 100 6.3.2 定义领域模型 ............................ 103 6.3.3 开发 Grails 控制器 ..................... 104 6.3.4 创建视图 .................................... 105 6.4 小结 ....................................................... 107 第 7 章 深入 Actuator .............................. 108 7.1 揭秘 Actuator 的端点 ............................ 108 7.1.1 查看配置明细 ............................ 109 7.1.2 运行时度量 ................................ 115 7.1.3 关闭应用程序 ............................ 121 7.1.4 获取应用信息 ............................ 121 7.2 连接 Actuator 的远程 shell .................... 122 7.2.1 查看 autoconfig 报告 ........... 123 7.2.2 列出应用程序的 Bean ............... 124 7.2.3 查看应用程序的度量信息 ......... 124 7.2.4 调用 Actuator 端点 .................... 125 7.3 通过 JMX 监控应用程序 ....................... 126 7.4 定制 Actuator ......................................... 128 7.4.1 修改端点 ID ............................... 128 7.4.2 启用和禁用端点 ........................ 129 7.4.3 添加自定义度量信息 ................. 129 7.4.4 创建自定义跟踪仓库 ................. 132 7.4.5 插入自定义健康指示器 ............. 134 7.5 保护 Actuator 端点 ................................ 136 7.6 小结 ....................................................... 138 第 8 章 部署 Spring Boot 应用程序 ........ 139 8.1 衡量多种部署方式 ................................ 139 8.2 部署到应用服务器 ................................ 140 8.2.1 构建 WAR 文件 ......................... 141 8.2.2 创建生产 Profile ........................ 142 8.2.3 开启数据库迁移 ........................ 145 8.3 推上云端 ............................................... 150 8.3.1 部署到 Cloud Foundry ............... 150 8.3.2 部署到 Heroku ........................... 153 8.4 小结 ....................................................... 155 附录 A Spring Boot 开发者工具 .............. 157 附录 B Spring Boot 起步依赖 ................. 163 附录 C 配置属性 ...................................... 169 附录 D Spring Boot 依赖 ......................... 202
SpringBoot实战(第4版)清晰文字版,第 1 章 入门 ................................................ 1 1.1 Spring 风云再起 ........................................ 1 1.1.1 重新认识 Spring ............................ 2 1.1.2 Spring Boot 精要 ........................... 3 1.1.3 Spring Boot 不是什么 ................... 6 1.2 Spring Boot 入门 ....................................... 6 1.2.1 安装 Spring Boot CLI .................... 7 1.2.2 使用 Spring Initializr 初始化 Spring Boot 项目 .......................... 10 1.3 小结 ......................................................... 18 第 2 章 开发第一个应用程序 .................... 19 2.1 运用 Spring Boot ..................................... 19 2.1.1 查看初始化的 Spring Boot 新项目 .......................................... 21 2.1.2 Spring Boot 项目构建过程 解析 .............................................. 24 2.2 使用起步依赖 .......................................... 27 2.2.1 指定基于功能的依赖 ................... 28 2.2.2 覆盖起步依赖引入的传递依赖 .... 29 2.3 使用自动配置 .......................................... 30 2.3.1 专注于应用程序功能 ................... 31 2.3.2 运行应用程序 .............................. 36 2.3.3 刚刚发生了什么 ........................... 38 2.4 小结 ......................................................... 41 第 3 章 自定义配置 .................................... 42 3.1 覆盖 Spring Boot 自动配置 ..................... 42 3.1.1 保护应用程序 .............................. 43 3.1.2 创建自定义的安全配置 ............... 44 3.1.3 掀开自动配置的神秘面纱 ........... 48 3.2 通过属性文件外置配置 ........................... 49 3.2.1 自动配置微调 .............................. 50 3.2.2 应用程序 Bean 的配置外置 ......... 55 3.2.3 使用 Profile 进行配置 .................. 59 3.3 定制应用程序错误页面 ........................... 62 3.4 小结 ......................................................... 64 第 4 章 测试 ............................................... 66 4.1 集成测试自动配置 .................................. 66 4.2 测试 Web 应用程序 ................................. 68 4.2.1 模拟 Spring MVC ........................ 69 4.2.2 测试 Web 安全 ............................. 72 4.3 测试运行中的应用程序 ........................... 74 4.3.1 用随机端口启动服务器 ............... 75 4.3.2 使用 Selenium 测试 HTML 页面 ............................................. 76 4.4 小结 ......................................................... 78 第 5 章 Groovy 与 Spring Boot CLI ......... 80 5.1 开发 Spring Boot CLI 应用程序 .............. 80 5.1.1 设置 CLI 项目 .............................. 81 5.1.2 通过 Groovy 消除代码噪声 ......... 81 5.1.3 发生了什么 .................................. 85 5.2 获取依赖 .................................................. 86 5.2.1 覆盖默认依赖版本 ....................... 87 5.2.2 添加依赖仓库 .............................. 88 5.3 用 CLI 运行测试 ...................................... 89 5.4 创建可部署的产物 .................................. 91 5.5 小结 ......................................................... 91 第 6 章 在 Spring Boot 中使用 Grails ...... 93 6.1 使用 GORM 进行数据持久化 ................. 93 2 目 录 6.2 使用 Groovy Server Pages 定义视图 ....... 98 6.3 结合 Spring Boot 与 Grails 3 ................. 100 6.3.1 创建新的 Grails 项目 ................. 100 6.3.2 定义领域模型 ............................ 103 6.3.3 开发 Grails 控制器 ..................... 104 6.3.4 创建视图 .................................... 105 6.4 小结 ....................................................... 107 第 7 章 深入 Actuator .............................. 108 7.1 揭秘 Actuator 的端点 ............................ 108 7.1.1 查看配置明细 ............................ 109 7.1.2 运行时度量 ................................ 115 7.1.3 关闭应用程序 ............................ 121 7.1.4 获取应用信息 ............................ 121 7.2 连接 Actuator 的远程 shell .................... 122 7.2.1 查看 autoconfig 报告 ........... 123 7.2.2 列出应用程序的 Bean ............... 124 7.2.3 查看应用程序的度量信息 ......... 124 7.2.4 调用 Actuator 端点 .................... 125 7.3 通过 JMX 监控应用程序 ....................... 126 7.4 定制 Actuator......................................... 128 7.4.1 修改端点 ID ............................... 128 7.4.2 启用和禁用端点 ........................ 129 7.4.3 添加自定义度量信息 ................. 129 7.4.4 创建自定义跟踪仓库 ................. 132 7.4.5 插入自定义健康指示器 ............. 134 7.5 保护 Actuator 端点 ................................ 136 7.6 小结 ....................................................... 138 第 8 章 部署 Spring Boot 应用程序 ........ 139 8.1 衡量多种部署方式 ................................ 139 8.2 部署到应用服务器 ................................ 140 8.2.1 构建 WAR 文件 ......................... 141 8.2.2 创建生产 Profile ........................ 142 8.2.3 开启数据库迁移 ........................ 145 8.3 推上云端 ............................................... 150 8.3.1 部署到 Cloud Foundry ............... 150 8.3.2 部署到 Heroku ........................... 153 8.4 小结 ....................................................... 155 附录 A Spring Boot 开发者工具.............. 157 附录 B Spring Boot 起步依赖 ................. 163 附录 C 配置属性 ...................................... 169 附录 D Spring Boot 依赖 ......................... 202
Spring Cloud Alibaba学习笔记》其实是阿里的微服务解决方案,是阿里巴巴结合自身微服务实践,开源的微服务全家桶,在Spring Cloud项目中孵化成为Spring Cloud的子项目。第一代的Spring Cloud标准中很多组件已经停更,如:Eureak,zuul等。所以Spring Cloud Alibaba很有可能成为Spring Cloud第二代的标准实现,所以许多组件在业界逐渐开始使用,已有很多成功案例。值得一提的是Spring Cloud Alibaba对Dubbo做了很好的兼容,同时也提供了一些强大的功能,如 Sentinel 流控 ,Seata 分布式事务,Nacos 服务发现与注册等等。 但现在网上学习SpringCloudAlibab的资料要么不全要么很少,完整的就更别说了,所以今天给大家免费分享的正是Alibaba出品的Spring Cloud Alibaba 的学习文档,图文并茂,量身打造,非常适合再学习Spring Cloud Alibaba的朋友观看!下面来看看这份Spring Cloud Alibaba 学习文档吧. Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。 为什么使用Spring Boot?很简单,我仅仅只需要非常少的几个配置就可以迅速方便的搭建起来一套 Web 项目或者是构建一个微服务! 本文档主要介绍了Spring Boot 框架快速入门教程以大量示例讲解了 Spring Boot 在各类情境中的应用,让读者可以跟着笔者的思维和代码快速理解并掌握。感兴趣的可以了解一下
springboot vue-simple-uploader 是一个前后端分离的文件上传插件,在使用前需要进行相关配置和代码的编写。 首先,在后端部分,我们使用的是Spring Boot框架。需要导入spring-boot-starter-web依赖,并在配置文件中配置相关参数,例如设置文件上传临时目录、文件上传大小限制等。然后,我们需要编写一个处理文件上传请求的Controller类,使用@RequestBody注解接收前端传递的文件信息,并使用multipartFile.transferTo()方法保存文件到指定目录中。 在前端部分,我们使用的是Vue.js框架,并引入vue-simple-uploader插件。首先,我们需要安装该插件,可以使用npm安装或者直接引入插件的CDN地址。然后,在Vue实例中,我们可以通过配置uploaderOptions对象来进行插件的相关配置,例如设置上传的url、自定义headers、文件的最大数量和大小限制等。然后,在需要上传文件的组件中,我们可以通过引入uploader组件,并使用v-model绑定上传的文件列表。 通过上述配置和代码编写,我们就可以实现前后端分离的文件上传功能了。当用户选择上传的文件后,前端会将文件信息发送给后端后端接收到请求后进行文件保存操作,并返回相应的结果给前端,例如文件的保存路径或者上传成功的提示信息。 总结一下,springboot vue-simple-uploader是一个支持前后端分离的文件上传插件,通过在后端配置文件上传参数和编写Controller类,在前端通过配置uploaderOptions对象和使用uploader组件,我们可以实现文件的上传和保存功能。这样,我们就可以方便地在Spring Boot和Vue.js项目中实现文件上传的需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值