bind

SpringBoot整合Mybatis-Plus 实战之动态SQL,Mybatis最拿得出手的功能之一

ε祈祈猫儿з 提交于 2020-12-03 18:52:05
MyBatis的动态SQL是最令人喜欢的功能 在了解 动态SQL之前,你首先得知道一个表达式 OGNL,这个是基础! 面试常问问题 : Mybatis 中$与#的区别? #是将传入的值当做字符串的形式,select id,name,age from test where id =#{id}, 当把id值传入到后台的时候,就相当于 select id,name,age from test where id =‘1’. " "是将传入的数据直接显示生成sql语句,selectid,name,agefromtestwhereid="是将传入的数据直接显示生成sql语句,select id,name,age from test where id = " 是 将 传 入 的 数 据 直 接 显 示 生 成 s q l 语 句 , s e l e c t i d , n a m e , a g e f r o m t e s t w h e r e i d = {id}, 当把id值1,传入到后台的时候,就相当于 select id,name,age from test where id = 1. 使用#可以很大程度上防止sql注入。(语句的拼接) if 标签 mapper select from test where 1=1 and username like concat('%', #

【Vue,自学第二天】

回眸只為那壹抹淺笑 提交于 2020-12-03 07:45:28
今天,我准备跟着官方文档在走一遍,巩固一下,加深记忆。 两种引入Vue的方式: 1 < script src ="https://cdn.jsdelivr.net/npm/vue/dist/vue.js" ></ script > 1 < script src ="https://cdn.jsdelivr.net/npm/vue" ></ script > 一、声明式渲染 Vue.js 的核心是一个允许采用简洁的模板语法来声明式地将数据渲染进 DOM 的系统: 1 < div id ="app" > 2 {{ message }} 3 </ div > 1 var app = new Vue({ 2 el: '#app' , 3 data: { 4 message: 'Hello Vue!' 5 } 6 }) 结果: 二、绑定元素特性: 1 < div id ="app-2" > 2 < span v-bind:title ="message" > 3 鼠标悬停几秒钟查看此处动态绑定的提示信息! 4 </ span > 5 </ div > 1 var app2 = new Vue({ 2 el: '#app-2' , 3 data: { 4 message: '页面加载于 ' + new Date().toLocaleString() 5 } 6 }) 结果: 三、条件与循环

内网穿透工具——FRP

瘦欲@ 提交于 2020-12-02 07:41:11
使用内网穿透工具——FRP,以及一台云服务器当做服务端,进行简单配置后即可远程访问 配置 FRP 服务端的前提条件是需要一台具有**公网 IP **的设备,得益于 FRP 是 Go 语言开发的,具有良好的跨平台特性。你可以在 Windows、Linux、MacOS、ARM等几乎任何可联网设备上部署。 FRP软件下载地址: https://github.com/fatedier/frp/releases 2 | 1 架构 如图,在这里,客户端即被远程的机器,service我们使用3389远程控制 一台云服务器,比如 CentOS7 一个公网IP,带宽视情况而定,公网IP地址以 117.73.3.210 为例 3 | 0 服务端配置 3 | 1 服务端下载FRP及配置 服务端下载Linux版的FRP工具,比如 frp_0.30.0_linux_amd64.tar.gz ,为了方便管理,这里进行了重命名为frp wget https://github.com/fatedier/frp/releases/download/v0.30.0/frp_0.30.0_linux_amd64.tar.gz tar -zxvf frp_0.30.0_linux_amd64.tar.gz mv frp_0.30.0_linux_amd64 frp 进入frp目录: cd frp ,如图 3 | 2

润小云解读鸿蒙OS系列(六):分布式软总线之discovery+COAP全流程

被刻印的时光 ゝ 提交于 2020-12-01 21:10:40
简介 Discovery 是一种基于coap 通信协议的设备发现机制; Coap (Constrained Application Protocol)是一种可以使用在资源受限的物联网设备上,并支持可靠传输的轻量化类web协议。它详细规范定义在 RFC 7252, coap 协议支持IP多播, 即可以同时向多个设备发送请求,鸿蒙OS的设备发现功能也是基于这个特性; 用户使用discovery功能时,需要保证发现端设备与被发现端设备在同一个局域网内,并且都能收到对方coap协议报文;目前discovery服务仅支持基于Wi-Fi通信方式的设备发现机制。 代码分析 代码目录结构如下图: Discovery 对外提供PublishService() 接口来实现设备的发现功能,其函数实现解读如下: PublishService主要的代码流程图如下,由于篇幅有限我们本次不做详细的介绍。 被发现端主要是通过PublishService()这个函数发布服务。PublishService()函数的实现在discovery_service.c文件中,我们来看看这个函数的主流程代码; 函数参数三个: moduleName:调用者的模块名称 info:PublishInfo结构体,发布的信息 cb:发布成功或者失败的回调函数 在函数实现中,我们可以看到权限检查,参数检验,信号量创建之类等代码

Spring Data R2DBC快速上手指南

故事扮演 提交于 2020-11-30 13:45:14
关注 “Java艺术” 我们一起成长! R2DBC 基于 Reactive Streams 反应流规范,它是一个开放的规范,为驱动程序供应商和使用方提供接口( r2dbc-spi ),与 JDBC 的阻塞特性不同,它提供了完全反应式的非阻塞 API 与关系型数据库交互。 简单说, R2DBC 项目是支持使用反应式编程 API 访问关系型数据库的桥梁,定义统一接口规范,不同数据库厂家通过实现该规范提供驱动程序包。 R2DBC 定义了所有数据存储驱动程序必须实现的 SPI ,目前实现 R2DBC SPI 的驱动程序包括: r2dbc-h2 :为 H2 实现的驱动程序; r2dbc mariadb :为 Mariadb 实现的驱动程序; r2dbc mssql :为 Microsoft SQL Server 实现的本机驱动程序; r2dbc mysql :为 Mysql 实现的驱动程序; r2dbc postgres :为 PostgreSQL 实现的驱动程序; 同时, r2dbc 还提供反应式连接池r2dbc-pool( https://github.com/r2dbc/r2dbc-pool )。 本篇内容: 使用r2dbc-mysql驱动程序包与mysql数据库建立连接 使用r2dbc-pool获取数据库连接 Spring-Data-R2DBC增删改查API 事务的使用 R2DBC

VUE3快速入门(五)---组件进阶与插槽

生来就可爱ヽ(ⅴ<●) 提交于 2020-11-30 12:08:42
组件进阶与插槽 组件进阶 局部注册和全局注册 局部注册 全局注册 方式一 方式二 方式二好处 Props 静态传值 动态传值 传值类型 数字 字符 布尔值 数组 对象 自定义事件 插槽 信息插槽 代码插槽 使用例子 例一---简单弹窗 例二---数据弹窗 组件进阶 命名注意: MyTest/my-test 小写-小写或者大写加大写 局部注册和全局注册 以这两个组件为例 局部注册 在需要用的页面import引入 在components注册 < template > < div > < test-com > </ test-com > </ div > </ template > < script > import TestCom from "../components/testCom" ; export default { name : "Test1125" , components : { TestCom } , } ; </ script > 全局注册 方式一 在main.js中 import buttonMy from './components/button-my' Vue.component("button-my", buttonMy); 方式二 自己写个js文件 import ButtonMy from "./button-my"; ButtonMy.install =

界面编程之QT的Socket通信20180730

删除回忆录丶 提交于 2020-11-30 05:44:23
/*******************************************************************************************/ 一、linux下的tcp通信过程 其中bind绑定,会固定一个端口,否则是随机的。 一个链接是由双方的ip和端口组成的,固定端口保证源的不变性, 这样另一端在任何时候访问的目的都是一致的,也可以说这个端口提供了什么服务。 同时绑定后直接操作socket id就可以操作对应的链接了。 /*******************************************************************************************/ 二、QT下的TCP通信过程 Qt中提供的所有的Socket类都是非阻塞的。 Qt中常用的用于socket通信的套接字类: QTcpServer 用于TCP/IP通信, 作为服务器端套接字使用 QTcpSocket 用于TCP/IP通信,作为客户端套接字使用。 QUdpSocket 用于UDP通信,服务器,客户端均使用此套接字。 1.QT下的服务端 1).socket函数变为QTcpServer 2).bind ,listen 统一为listen 同时没有accept,当有一个链接过来的时候,会产生一个信号:newconnection

Docker

落花浮王杯 提交于 2020-11-29 01:51:38
了解 Consul Consul 是一个支持多数据中心分布式高可用的 服务发现 和 配置共享 的服务软件,由 HashiCorp 公司用 Go 语言开发, 基于 Mozilla Public License 2.0 的协议进行开源。 Consul 支持 健康检查 ,并允许 HTTP 、 GRPC 和 DNS 协议调用 API 存储键值对. 命令行超级好用的虚拟机管理软件 vgrant 也是 HashiCorp 公司开发的产品. 一致性协议采用 Raft 算法,用来保证服务的高可用. 使用 GOSSIP 协议管理成员和广播消息, 并且支持 ACL 访问控制. Consul 使用场景 Docker 实例的注册与配置共享 Coreos 实例的注册与配置共享 SaaS 应用的配置共享、服务发现和健康检查。 vitess 集群 与 confd 服务集成,动态生成 nginx 和 haproxy 配置文件 Consul 优势 市面现在有很多类似的软件比如: zookeeper 、 Etcd 、 doozerd 、 eureka ,Consul 相比这些软件有什么优势呢? 官方出了相比较这些软件区别的一篇 Consul vs. ZooKeeper,doozerd,etcd 文章。 下面总结一下 Consul 的优势有那几点: 使用 Raft 算法来保证一致性, 比复杂的 Paxos 算法更直接.

OpenLDAP 2.4.44 安装部署避坑指南

别说谁变了你拦得住时间么 提交于 2020-11-27 02:31:13
写在前面: 有关openLDAP的部署文档在网上随意能找到很多,但是最近用到才发现网上的教程多数是旧版的用法,例如"/etc/openldap/slapd.conf “早已弃用,更有甚者直接修改/etc/openldap/slapd.d/下的文件,打开的时候上面明确写着不能修改此文件,那是多大的勇气能写成文档出来分享呢? 通过参考官方文档并且借鉴了两位前辈的文档,我整理出来如下步骤,并经过验证 一、环境准备 1. 操作系统: CentOS 7.x 2. 关闭防火墙、selinux 3. yum源(略) 忘了用不用依赖epel-release 自己试试 二、OpenLDAP服务安装 1. 服务安装 yum install -y openldap openldap-servers openldap-clients openldap-devel 2. 生成OpenLDAP管理密码 [root@localhost ~]# slappasswd New password: //此处输入密码 Re-enter new password: //再次密码 {SSHA}CrdqT5EAh8H2y2SorEUbuxP3R5eOggjb 记录好生成的密码,后面用得到 3. 配置OpenLDAP OpenLDAP 2.3之后的版本取消了/etc/openldap/slapd.conf的配置方式

python安装readline模块

别来无恙 提交于 2020-11-25 18:29:31
yum安装readline、readline-devel #yum install -y readline-devel 下载安装setuptools #wget http://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c11.tar.gz#md5=7df2a529a074f613b509fb44feefe74e --no-check-certificate #tar -zxvf setuptools-0.6c11.tar.gz #cd setuptools-0.6c11 #python setup.py install 下载安装readline #wget https://pypi.python.org/packages/source/r/readline/readline-6.2.4.1.tar.gz#md5=578237939c81fdbc2c8334d168b17907 --no-check-certificate #tar -zxvf readline-6.2.4.1.tar.gz #cd readline-6.2.4.1 #python setup.py install # python Python 2.7.5 (default, Sep 27 2014, 17:30:23) [GCC 4.4