Java
mybatis之OGNL表达式
对象导航图语言(Object Graph Navigation Language),简称OGNL, 是应用于Java中的一个开源的表达式语言(Expression Language) 这里制作简单的了解,知道是什么。 OGNL表达式 OGNL 常用表达式 e1 or e2 e1 and e2 e1 == e2, e1 eq e2 e1 != e2, e1 neq e2 e1 < e2, e1
mybatis控制动态SQL拼接标签之if test标签
if标签通常用于WHERE语句、UPDATE语句、INSERT语句中, 通过判断参数值来决定是否使用某个查询条件、判断是否更新某一个字段、判断是否插入某个字段的值。 mybatis是一个天才设计,面向对象未必就是真理,相对于JPA等框架,具有更大的自由度和灵活度。 简单示例 if标签的test属性必填,该属性值是一个符合OGNL要求的判断表达式,一般只用true或false作为结果。 判
Mybatis 常用传参方式
虽然了解Mybatis 的底层原理,技术架构,各种对接搭建才是高大上,但是对于业务实现的高频率散点的汇总,更加有实用价值,规避常见问题,一步到位精准快速开发,可以节省生命。 单个简单参数 1、单个参数传递可以直接用变量名,可以支持多种类型。 2、select 中的parameterType="String" 可以省略 单个实体对象参数 Java是面向对象开发,我们很多数据传递的是一个VO,例如搜
mybatis 动态sql语句拼接
mybatis常用占位符的方式传递参数,比较安全,可以防止sql注入。 有些时候,特殊逻辑需要java封装好一些特殊的查询条件,然后和mybatis一起封装成特殊sql进行执行。 {param}:替换参数 ${sql}:拼接sql语句。 遇到一些模板类的功能,例如用户选择查询条件,或者查询语句,就需要动态sql技术。 这个玩意本身在技术上是不安全的,需要全面的sql校验才能避免数据库的渗透。 一般
Salesforce LWC学习(四十三) lwc 零基础学习路径的视频已上传B站
本篇参考:https://www.bilibili.com/video/BV1QM411G7pN/ 还记得salesforce零基础学习(一百二十五)零基础学习SF路径 中描述的那样,预计今年年底以前基于0基础学习的内容录制成视频,更好的更方便的进行学习和互动。当时的一个动机是以前公司做veeva的同事或者java以及.net转过来的同事对lightning下的知识并不特别多,而且对于l
通过git删除Github上的文件夹
一、背景 使用IDEA开发Java项目时,不小心将.idea这个文件夹上传到Github上去了 二、删除流程 (1)首先,将Github上的内容同步至本地库 其中,origin是远程库的别名,在添加Github远程库,或第一次pull远程库的时候会配置。main是远程库的分支。 (2)删除.idea文件夹 (3)重新提交至远程库 三、可能会遇到的问题
Windows安装JDK 8/11/17教程
JDK,全称Java Development Kit,即Java开发工具包,它是整个Java开发的核心,包含了Java运行环境(JVM+Java系统类库)和Java工具。目前JDK 8、11、17是长期稳定支持的版本。 接下来为大家讲解一下JDK如何安装与使用。 一、下载JDK 有两种方式,二选一下载即可: 第一种方式:网盘下载 请选择任意一个链接,选择任意一个安装包下载即可: 点击下载
.NET Core部署到linux(CentOS)最全解决方案,入魔篇(使用Docker+Jenkins实现持续集成、自动化部署)
通过前面三篇: .NET Core部署到linux(CentOS)最全解决方案,常规篇 .NET Core部署到linux(CentOS)最全解决方案,进阶篇(Supervisor+Nginx) .NET Core部署到linux(CentOS)最全解决方案,高阶篇(Docker+Nginx 或 Jexus) 通过前面三篇文章的介绍,我们已经对.net core多方案部署到linux下有了非常全
SpringBoot大致启动流程
以main方法为入口进入: ↓ ↓ ↓ 主线流程到此结束,接下来重点看 6,7,8这三个方法中详细的代码流程,首先是prepareContext进行上下文预处理: 之后是refreshContext进行上下文更新: ↓ public void refresh() throws BeansException, Ille
数据交换格式:XML、JSON
XML XML是什么 可扩展标记语言(XML)是存储和交换数据的重要方法。它文档的形式类似于HTML,不过比HTML低级,都是标签里放内容。XML只包含少量的预定义标签,其他都由程序员来定义,只要数据的读者和编写者都知道标签的含义,标签就可以包含任何设计者希望的有用信息。XML的标签有单双,双标签包含数据,像HTML的<p>自定义内容</p>一样,单标签像HTML中的<
dockerfile概念简介——镜像分层
一、dockerfile概念 dockerfile是自定义镜像的一套规则 dockerfile由多条指令构成,Dockerfile中的每一条指令都会对应于Docker镜像中的每一层 1.1docker镜像的分层 dockerfile的原理就是镜像分层。 Dockerfile 中的每个指令都会创建一个新的镜像层(是一个临时的容器,执行完后将不再存在,再往后进行重新的创建与操作)
Spring Security 报:Encoded password does not look like BCrypt
SpringBoot 集成 Security 时,报 Encoded password does not look like BCrypt 原因:SecurityConfig 必须 Bean 的形式实例化 解决方案
eclipse中使用maven创建springmvc项目
第一步,eclipse---File---New---Maven Project 第二步,如图直接Next 第三步,如图直接Next 第四步,Group Id一般写公司域名的反转,Artifact Id写项目名称,然后点击Finish 第五步,创建好项目后,开始修改配置文件 以上是pom.xml文件 以上是web.x
XXL-JOB 入门学习
参考教程 主要参考了 xxl-job快速入门指南,写的很详细,可以一步步按教程的走。 项目环境搭建 下载项目 先到 xxl-job GitHub 地址 下载 RELEASE 的 ZIP 包。解压后,到 MySQL 执行 doc 目录下的 db 文件。 视图页面 打开 xxl-job-admin 模块。 然后修改 application.properties 配置的数据库连接: 显式的加上登录调度
Oracle GoldenGate Free 安装
一些预备 安装了docker 网络可以连接容器仓库(oracle的) 包含oracle 账户 运行 拉取docker 镜像 docker pull container-registry.oracle.com/goldengate/goldengate-free:21.9.0.0-oracle 启动 version: '3' se
Java 语言实现 IPv6 是否ping通
Java 语言实现 IPv6 是否ping通 1、导入相关的 Java 网络库 2、定义 ping 方法,传入目标 IPv6 地址 3、在方法中,使用 InetAddress 类中的 getByName 方法获取目标 IPv6 地址的 InetAddress 实例。 4、使用 InetAddress 实例的 isReachable 方法来判断
使用 Stream API 简化集合操作
使用 Stream API 简化集合操作 在 Java 8 中,引入了 Stream API,使得我们可以通过链式调用来进行集合操作,避免了传统的循环迭代方式。本文将介绍如何使用 Stream API 简化集合操作,并通过代码示例进行演示。 一、常用的 Stream API 操作 在 Stream API 中,常用的操作包括: map:对集合中的元素进行映射操作;
Java 实现 LRU 缓存算法
Java 实现 LRU 缓存算法 一、什么是 LRU LRU(Least Recently Used,最近最少使用)是一种缓存算法,其核心思想是将最近最少使用的缓存项移除,以便为更常用的缓存项腾出空间。 在实际应用中,LRU 算法被广泛用于缓存和页面置换。 二、Java 实现 LRU 缓存算法 在 Java 中,可以使用 LinkedHashMap 来实现 LRU 缓
Java 实现 FIFO 缓存算法
Java 实现 FIFO 缓存算法 一、什么是 FIFO FIFO(First In, First Out)是一种常见的数据结构,也叫做先进先出队列。它的特点是先进入队列的数据最先出队。 类似于现实中排队买东西的场景,先来的人先排队,先买完商品的人先离开。 在计算机领域,FIFO常用于缓存管理、进程调度等场景中。 在缓存管理中,先进入缓存的数据将被优先保留,后进入的数据会被淘汰
Java 实现 二叉树的 前序遍历
Java 实现 二叉树的 前序遍历 解析: 首先,定义了一个 Node 类表示二叉树的节点。节点包含了一个整型的 val 值,以及左右两个子节点的引用。 然后,定义了 BinaryTree 类,该类包含了一个方法 preorderTraversal,用于实现前序遍历。 前序遍历的顺序是:先遍历根节点,然后遍历左子树,最后遍历右子树。 如果二叉树为空,则直接返
Java 实现 二叉树的 后序遍历
Java 实现 二叉树的 后序遍历 解析: 首先,定义了一个 Node 类表示二叉树的节点。节点包含了一个整型的 val 值,以及左右两个子节点的引用。 然后,定义了 BinaryTree 类,该类包含了一个方法 postorderTraversal,用于实现后序遍历。 后序遍历的顺序是:先遍历左子树,然后遍历右子树,最后遍历根节点。 如果二叉树为空,则直接返回。否则,先输出左子树的值,
Clang前端源码分析
Clang前端源码分析 C语言编译器之二,Clang Clang编译器是由APPLE公司的编译器大牛ChrisLattner主导下编写的,其目标是替换大名鼎鼎的GCC编译器; 2.1、Clang和GCC编译器架构 从源代码到可执行程序一般经过预处理、编译、链接过程,而编译是编译器的工作,编译分为三个阶段,分别为前端、优化器、后端。 i.编译前端:将源代码转化成中间代码。其详细过程包括
Java 实现 二叉树的 中序遍历
Java 实现 二叉树的 中序遍历 解析: 首先,定义了一个 Node 类表示二叉树的节点。节点包含了一个整型的 val 值,以及左右两个子节点的引用。 然后,定义了 BinaryTree 类,该类包含了一个方法 inorderTraversal,用于实现中序遍历。 后序遍历的顺序是:先遍历左子树,然后遍历根节点,最后遍历右子树。 如果二叉树为空,则直接返回。否则,先输出左