摘要:
主键映射 主键映射作用 当数据插入操作不关心插入后数据的主键(唯一标识),那么建议使用 不返回自增主键值 的方式来配置插入语句,这样可以避免额外的SQL开销. 当执行插入操作后需要立即获取插入的自增主键值,比如一次操作中保存一对多这种关系的数据,那么就要使用 插入后获取自增主键值 的方式配置. 阅读全文
摘要:
动态SQL简介 MyBatis 的强大特性之一便是它的动态 SQL。如果你有使用 JDBC 或其他类似框架的经验,你就能体会到根据不同条件拼接 SQL 语句有多么痛苦。拼接的时候要确保不能忘了必要的空格,还要注意省掉列名列表最后的逗号。利用动态 SQL 这一特性可以彻底摆脱这种痛苦。 通常使 阅读全文
摘要:
假设有这样两条数据: (表名为user) 1) username=admin,password=000000 2) username=admin,password=123456 我们要实现的效果是可以输入多个关键字查询,多个关键字间以逗号分隔。 使用上述表举例:输入单个关键字“admin”可查出这两 阅读全文
摘要:
简单查询 查询所有字段 select from 表名; 例: select from students; 查询指定字段 select 列1,列2,... from 表名; 例: select name from students; 使用 as 给字段起别名 select id as 序号, name 阅读全文
摘要:
//JSON串转实体类 实体类 javaBean = JSON.parseObject(json, 实体类.class); //JSON串转带泛型的List的集合 List list = JSON.parseObject(json, new TypeReference (){}); // 对象转JS 阅读全文
摘要:
背景:从数据库获取时间传到前端进行展示的时候,我们有时候可能无法得到一个满意的时间格式的时间日期,在数据库中显示的是正确的时间格式,获取出来却变成了很丑的时间戳,@JsonFormat注解很好的解决了这个问题,我们通过使用@JsonFormat可以很好的解决:后台到前台时间格式保持一致的问题,其次, 阅读全文
摘要:
package com.snake.test; import java.util.concurrent.Executors; import java.util.concurrent.ThreadPoolExecutor; / @Author Snake @Date 2019/11/24 14:21 阅读全文
摘要:
Lambda 表达式是 JDK8 的一个新特性,可以取代大部分的匿名内部类,写出更优雅的 Java 代码,尤其在集合的遍历和其他集合操作中,可以极大地优化代码结构。 JDK 也提供了大量的内置函数式接口供我们使用,使得 Lambda 表达式的运用更加方便、高效。 对接口的要求 虽然使用 Lambda 阅读全文
摘要:
threadlocal使用方法很简单 threadlocal而是一个线程内部的存储类,可以在指定线程内存储数据,数据存储以后,只有指定线程可以得到存储数据,官方解释如下。 大致意思就是ThreadLocal提供了线程内存储变量的能力,这些变量不同之处在于每一个线程读取的变量是对应的互相独立的。通过g 阅读全文
摘要:
函数式编程最近几年越炒越热,有函数式编程的语言鄙视没有函数式编程的语言,纯函数式编程的语言鄙视不纯的函数式编程的语言。 那么,到底什么是函数式编程,函数式编程的核心思想又是什么? 函数式编程的第一个特点就是可以把函数作为参数传递给另一个函数,也就是所谓的高阶函数。例如,对数组进行排序,可以传入一个排 阅读全文
摘要:
一般性的指南和建议 容器应该是短暂的 通过 Dockerfile 构建的镜像所启动的容器应该尽可能短暂(生命周期短)。「短暂」意味着可以停止和销毁容器,并且创建一个新容器并部署好所需的设置和配置工作量应该是极小的。 使用 .dockerignore 文件 使用 Dockerfile 构建镜像时最好是 阅读全文
摘要:
基本语法 Docker 命令有两大类,客户端命令和服务端命令。前者是主要的操作接口,后者用来启动 Docker Daemon。 客户端命令:基本命令格式为 docker [OPTIONS] COMMAND [arg...]; 服务端命令:基本命令格式为 dockerd [OPTIONS]。 可以通过 阅读全文
摘要:
Docker 底层的核心技术包括 Linux 上的命名空间(Namespaces)、控制组(Control groups)、Union 文件系统(Union file systems)和容器格式(Container format)。 我们知道,传统的虚拟机通过在宿主主机中运行 hypervisor 阅读全文
摘要:
术语 首先介绍几个术语。 服务 (service):一个应用容器,实际上可以运行多个相同镜像的实例。 项目 (project):由一组关联的应用容器组成的一个完整业务单元。 可见,一个项目可以由多个服务(容器)关联而成,Compose 面向项目进行管理。 场景 最常见的项目是 web 网站,该项目应 阅读全文
摘要:
命令对象与格式 对于 Compose 来说,大部分命令的对象既可以是项目本身,也可以指定为项目中的服务或者容器。如果没有特别的说明,命令对象将是项目,这意味着项目中所有的服务都会受到命令影响。 执行 docker compose [COMMAND] help 或者 docker compose he 阅读全文
摘要:
模板文件是使用 Compose 的核心,涉及到的指令关键字也比较多。但大家不用担心,这里面大部分指令跟 docker run 相关参数的含义都是类似的。 默认的模板文件名称为 docker compose.yml,格式为 YAML 格式。 version: "3" services: webapp: 阅读全文
摘要:
Compose 支持 Linux、macOS、Windows 10 三大平台。 Compose 可以通过 Python 的包管理工具 pip 进行安装,也可以直接下载编译好的二进制文件使用,甚至能够直接在 Docker 容器中运行。 前两种方式是传统方式,适合本地环境下安装使用;最后一种方式则不破坏 阅读全文
摘要:
Docker Compose 是 Docker 官方编排(Orchestration)项目之一,负责快速的部署分布式应用。 阅读全文
摘要:
Compose 项目是 Docker 官方的开源项目,负责实现对 Docker 容器集群的快速编排。从功能上看,跟 OpenStack 中的 Heat 十分类似。 其代码目前在 https://github.com/docker/compose 上开源。 Compose 定位是 「定义和运行多个 D 阅读全文
摘要:
容器中可以运行一些网络应用,要让外部也可以访问这些应用,可以通过 P 或 p 参数来指定端口映射。 当使用 P 标记时,Docker 会随机映射一个 49000~49900 的端口到内部容器开放的网络端口。 使用 docker container ls 可以看到,本地主机的 49155 被映射到了容 阅读全文