动态绑定

springBoot 动态绑定类

混江龙づ霸主 提交于 2020-01-16 18:26:45
深度好文 https://jiayouxujin.github.io/2019/04/20/java动态绑定和静态绑定详解/ 在写项目的时候,有一个项目是只能定义一个父类,但是根据数据类型的不同需要选取不同的子类。但是父类是不能访问子类的程序的,所以就必须在程序里去实现该功能。 第一步,将父类看做一种类型,循环缓存所有该类型的子类。 @Configuration public class Config { List<Class> protocols =new ArrayList<Class>(); @Bean public SpringInitializer springInitializer(){ protocols.add(DataProcess.class); return new SpringInitializer(protocols); } @Bean public CacheManagerHandler cacheManagerHandler(){ return new CacheManagerHandler(); } @Bean public ICache cmdCacheProvider(){ return new RamCacheProvider(); } } @Service public class DataProcess implements

vue-动态绑定属性v-bind

邮差的信 提交于 2020-01-16 01:54:37
1.v-bind动态绑定属性 比如动态绑定a元素的href属性,img元素的src属性 2.v-bind动态绑定class对象 3.v-bind动态绑定class数组语法 4.v-bind动态绑定style 来源: CSDN 作者: 米儿web 链接: https://blog.csdn.net/qq_24767091/article/details/103977313

Mybatis框架相关知识详解

旧巷老猫 提交于 2020-01-14 03:17:03
Mybatis框架 1、什么是Mybatis? 2、Mybatis的优点 3、Mybatis的缺点 4、Mybatis框架的适用场合 5、#{}和${}的区别是什么 6、实体类中的属性名和表中的字段名不一样,怎么办? 8、编写模糊查询like语句 9、Dao接口的工作原理 10、Mybatis分页原理 11、Mybatis的映射形式 12、使用MyBatis的mapper接口调用时有哪些要求? 13、resultType与resultMap的区别 14、在mapper中如何传递多个参数? 15、Mybatis的Executor执行器 16、Mybatis的动态sql 17、Mybatis的关联查询和实现方式以及区别 18、Mybatis的Xml映射文件和Mybatis内部数据结构之间的映射关系 19、Mybatis的接口绑定以及其实现方式 20、Mybatis缓存 21、Mybatis延迟加载 22、Mybatis的基本工作流程 23、Mybatis实行一对多的操作方式 24、Mybatis实行一对一的操作方式 1、什么是Mybatis? (1)Mybatis是一个半ORM(对象关系映射)框架,它内部封装了JDBC,开发时只需要关注SQL语句本身,不需要花费精力去处理加载驱动、创建连接、创建statement等繁杂的过程。程序员直接编写原生态sql,可以严格控制sql执行性能

vue element UI 动态生成的表单,绑定表单校验

戏子无情 提交于 2020-01-11 13:42:12
动态生成的表单,绑定表单校验 需求获取记录并支持修改 并进行表单验证 创建rules 和 from表单 绑定 from的:model 和 rules 即可 1.1 创建rules return { ruleForm:[ { xm: '', dw: '', dh: '' }, { xm: '', dw: '', dh: '' } ], rules: { xm: [ {required: true, message: '请输如姓名', trigger: 'blur'}, ], dw: [ {required: true, message: '请输入单位', trigger: 'blur'}, ], dh: [ {required: true, message: '请输入电话', trigger: 'blur'}, ] } }; }, 1.2 创建form表单 <el-form style="height: 744px;overflow-y: scroll" :model="ruleForm" :rules="rules" ref="ruleForm"> <div v-for="(item,index) in ruleForm" :key="index"> <el-row > <el-col :span="span"> <el-form-item label="姓名:" label

动态SQL+变量绑定:解决ORA-01704: 字符串文字太长的问题

落爺英雄遲暮 提交于 2020-01-05 04:00:21
最近在做一个ESB项目,有一个trigger里面执行动态SQL的时候报错: ORA - 01704 : 字符串文字太长 经检查发现SQL里面有个字段是clob类型,内容长度4009,在oracle里面, 一对引号内的字符长度如果超过4000,就会报 ORA - 01704 : 字符串文字太长 的错误; 在网上查了一下资料,有大神提出了解决的方法:动态SQL+变量绑定: 什么是动态SQL、什么是变量绑定,度娘上有很多资料,这里就不解释了 下面例子测试通过了: EXECUTE IMMEDIATE 'insert into '||V_ROW.t_id||' VALUES(:1,:2,:3,:4,:5)' USING V_1, V_2, V_3, V_4, V_CLOB; 上面的:1,:2,:3,:4,:5就是绑定变量,using后面的几个变量就是和上面的几个绑定变量一一对应; 最后一个变量V_CLOB是一个内容长度超过4000的clob类型变量; 如果写成这样:会报 ORA - 01704 : 字符串文字太长 的错误; EXECUTE IMMEDIATE 'insert into '||V_ROW.t_id ||' VALUES('''||REPLACE(V_1,'''','''''') ||''','''||REPLACE(V_2,'''','''''') ||''','''|

基础知识《三》java修饰符

↘锁芯ラ 提交于 2020-01-01 02:04:36
一、修饰符 private 成员 随时都是“私有”的,任何人不得访问。但在实际应用中,经常想把某些东西深深地藏起来,但同时允许访问衍 生类的成员。 protected 关键字 可帮助我们做到这一点。它的意思是“它本身是私有的,但可由从这个类继承的任何东西或者同一个包内的其他任何东西访问” 采取的最好的做法是 保持成员的private 状态 ——无论如何都应保留对基 础的实施 细节进行修改的权利。在这一前提下,可通过 protected 方法 允许类的继承者进行受到控制的访问 final关键词 1、 final修饰用来表示常量 ,分为 编译期的常量 (永不改变)、 运行期的常量 (每运行一次值会改变) final可以修饰变量 (基本数据变量,引用数据变量--即对象句柄,数组等),都必须显式的赋初值。final修饰对象句柄时,对象句柄初始地指向一个对象后,不能指向其他对象,但是对象本身可以改变。 package lesson12Final关键词; public class FinalData { // Can be compile-time constants 编译期常数 无论运行多少次,值永远不变 int i0; final int i1;//被final修饰的变量必须显示的指定初始值 {i1=9;} final static int i2=99; // Cannot be

2019年mybatils面试高频题(java)

浪尽此生 提交于 2019-12-31 12:33:04
前言 2019即将过去,伴随我们即将迎来的又是新的一年,过完春节,马上又要迎来新的金三银四面试季。 那么,作为程序猿的你,是否真的有所准备的呢,亦或是安于本职工作,继续做好手头上的事情。 当然,不论选择如何,假如你真的准备在之后的金三银四跳槽的话,那么作为一个Java工程师,就不可不看了。 如何在几个月的时间里,快速的为即将到来的面试进行充分的准备呢? 一、什么是MyBatis? 答:MyBatis是一个可以自定义SQL、存储过程和高级映射的持久层框架。 二、讲下MyBatis的缓存 答:MyBatis的缓存分为一级缓存和二级缓存,一级缓存放在session里面,默认就有二级缓存放在它的命名空间里,默认是不打开的,使用二级缓存属性类需要实现Serializable序列化接口(可用来保存对象的状态),可在它的映射文件中配置 三、Mybatis是如何进行分页的?分页插件的原理是什么? 答: 1、Mybatis使用RowBounds对象进行分页,也可以直接编写sql实现分页,也可以使用Mybatis的分页插件。 2、分页插件的原理:实现Mybatis提供的接口,实现自定义插件,在插件的拦截方法内拦截待执行的sql,然后重写sql。 举例:select * from student,拦截sql后重写为:select t.* from (select * from student)t

动态内存与智能指针

*爱你&永不变心* 提交于 2019-12-27 21:37:11
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 前言 1.生命周期 全局对象: 程序启动时分配,程序结束时销毁 局部自动对象: 执行流进入其定义的块时分配,执行流退出其定义的块时销毁 局部static对象: 程序启动时分配(但在其定义的块或作用域内起作用),程序结束时销毁 动态分配的对象: 生命周期与创建地点无关,只有当显示的被释放时,才会被销毁 智能指针:标准库定义,用于管理动态分配的内存,当一个对象应该被释放时,指向它的智能指针可以确保自动的释放它 2.内存分类 静态内存: 用于存储局部static对象、类的static数据成员、全局变量 栈内存: 用于存储局部非static对象 堆内存(内存池): 用于存储动态分配的对象——动态分配的对象,其生命周期由程序控制,例如使用new或delete 3.动态内存 动态内存使用过程中容易产生的问题 内存泄露: 使用后忘记释放内存 引用非法内存: 在尚有指针引用内存的情况下就释放它 使用动态内存的原因: 程序不知道自己需要使用多少对象 程序不知道所需对象的准确类型 程序需要在多个对象间共享底层数据——若两个对象共享底层数据,当某个对象销毁时,我们不能单方面的销毁底层数据 4.智能指针 智能指针和常规指针直接的区别:智能指针能够自动释放所指向的内存(类似java中的垃圾回收机制),而常规指针不能。

jquery html 动态添加元素绑定事件

﹥>﹥吖頭↗ 提交于 2019-12-24 14:13:55
由于实际的需要,有时需要往网页中动态的插入HTML内容,并在插入的节点中绑定事件处理函数。我们知道,用Javascript向HTML文档中 插入内容,有两种方法, 一种是在写HTML代码写入JS,然后插入到文档中; 另外一种是通过ajax的方式,从服务器获取数据,然后用js把获取的数据经 过处理后插入文档中; 两种方法各有特点,本文将分析新插入到文档中的元素的事件绑定问题,并假定新插入的对象不做内联的事件绑定(即不用类似 <a onclick=””>的形式)。所有的示例将会用到jQuery和原生Javascript。 情况一: HTML代码存放在JS中,请看以下代码: <body> <p>第1行内容</p> <p>第2行内容</p> <p>第3行内容</p> <script> var appendhtml=document.createElement("p"); appendhtml.innerHTML="这是插入的内容"; document.body.appendChild(appendhtml); var nodep=document.getElementsByTagName("p"); for (var i=0;i<nodep.length;i++){ nodep[i].onclick=function(){ console.log("Click Event!"); } }

兼容动态绑定事件

两盒软妹~` 提交于 2019-12-21 04:01:04
此文章是帮助班上的一个同学学习,本人菜鸟,请各路大神指点或者绕道 动态绑定事件在IE内核 和 火狐等相同的内核下分为两种情况 , 1. attachEvent, 2.addEventListener 下面我们用代码的形式来演示 在火狐下运行:   <!DOCTYPE html> <meta charset="utf-8"> <html> <head> <title></title> <script type="text/javascript" src="NANF.js"></script> <script type="text/javascript"> function init(){ //初始函数 var testObj=document.getElementById("test"); //得到Id为test 的元素 testObj.addEventListener("click",function(){ alert("我在火狐下运行"); }); } </script> </head> <body onload="init()"> <input id="test" type="button" value="测试"> </body> </html> 注: addEventListener("click",function(){}) click 前面不用加 “on” 在IE下运行: