Camel

vue.js小总结

China☆狼群 提交于 2020-04-22 03:12:42
Vue.js 的核心是一个允许采用简洁的模板语法来声明式地将数据渲染进 DOM 的系统; 指令带有前缀 v-,以表示它们是 Vue 提供的特殊特性; v-for 指令可以绑定数组的数据来渲染一个项目列表; 为了让用户和你的应用进行交互,我们可以用 v-on 指令添加一个事件监听器,通过它调用在 Vue 实例中定义的方法; Vue 还提供了 v-model 指令,它能轻松实现表单输入和应用状态之间的双向绑定。 可以使用 v-bind 指令将待办项传到循环输出的每个组件中; 一个 Vue 应用由一个通过 new Vue 创建的根 Vue 实例,以及可选的嵌套的、可复用的组件树组成。 除了数据属性,Vue 实例还暴露了一些有用的实例属性与方法。它们都有前缀 $,以便与用户定义的属性区分开来。 一般来说,v-if 有更高的切换开销,而 v-show 有更高的初始渲染开销。因此,如果需要非常频繁地切换,则使用 v-show 较好;如果在运行时条件很少改变,则使用 v-if 较好。 当 v-if 与 v-for 一起使用时,v-for 具有比 v-if 更高的优先级。 <div v-for="item in items" :key="item.id"> <!-- 内容 --> </div> 建议尽可能在使用 v-for 时提供 key,除非遍历输出的 DOM 内容非常简单

SpringBoot中mybatis配置自动转换驼峰标识没有生效

ぐ巨炮叔叔 提交于 2020-04-19 10:19:34
mybatis提供了一个配置: # 开启驼峰命名转换 mybatis .configuration.map-underscore-to-camel-case =true 使用该配置可以让mybatis自动将SQL中查出来的带下划线的字段,转换为驼峰标志,再去匹配类中的属性。 即: @Select("select phone_num,card_num from xxx where id=#{id}" ) public User getUserInfo(String id); 查出来的结果,会被自动转换成 phonenum 和 cardnum, 再和结果类(这里就是 User )中的属性进行匹配。 更多和自动转换驼峰标志相关的详细源码分析可以参考: 传送门 ————————————————————分割线————————————————— 下面我们说说我这次碰到的奇怪问题: 在我的项目中,明明在application.properties中将这个属性设为了true,结果运行到上文截图57行代码时始终为false,导致后边无法找到匹配的属性。 经过一番DEBUG分析,发现项目为了做多数据源,将生成 org.apache.ibatis.session.SqlSessionFactory 的配置抽出到使用 @Configuration 修饰的配置类中。 application

MyBatis-Plus Generator oracle 没有错误 没有文件

◇◆丶佛笑我妖孽 提交于 2020-04-17 23:27:54
表名字小写 ###### strategy.setInclude( "DC_SE_TEST" ); pom.xml <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-generator</artifactId> <version>3.3.1.tmp</version> </dependency> <dependency> <groupId>org.freemarker</groupId> <artifactId>freemarker</artifactId> <version>2.3.30</version> </dependency> public class MabatisPlusGenerator { public static void main(String[] args) { // 代码生成器 AutoGenerator mpg = new AutoGenerator(); // 全局配置 GlobalConfig gc = new GlobalConfig(); gc.setOutputDir("d:/src/main/java"); gc.setAuthor("jobob"); gc.setOpen(false); // gc.setSwagger2(true); 实体属性

JavaScript 开发必须掌握技能(二)- 更好的使用数组方法

扶醉桌前 提交于 2020-04-13 16:32:24
【今日推荐】:为什么一到面试就懵逼!>>> 数组是用于储存多个相同类型数据的集合,JavaScript 开发中数组开发是必须掌握技能,工作学习中没少和数组打交道,所以重中之重必须掌握,以下是数组中常用方法及实例。 数组常用操作 1、创建数组   直接定义数组项方法;   构造函数 new Array ( 'Apple' , 'Banana' ) ;    定义一个空数组,我们在push进想要的数组项。 const fruits = ['Apple', 'Banana' ] console.log(fruits); // [ 'Apple', 'Banana' ] console.log(fruits.length); // 3 2、访问(索引到)数组项 通过下标定位到数组项, JavaScript数组的索引为零:数组的第一个元素在index 0 ,最后一个元素在index等于数组l ength 属性 值 减去1。但是 使用无效的索引号将返回 undefined 。 console.log(fruits[0]) // Apple console.log(fruits[fruits.length-1]) // Banana 3、遍历数组 Array.forEach() ,遍历数组的方法很多,我将在往后的随笔中更新。 fruits.forEach( function (item,

Camel概念【Camel’s message model(消息体模型)】

房东的猫 提交于 2020-03-02 08:33:20
Camel’s message model In Camel, there are two abstractions for modeling messages, both of which we’ll cover in this section .(Camel中有两个抽象的消息体模型) org.apache.camel.Message —The fundamental entity containing the data being carried and routed in Camel (Message 是数据承载和路由交换的基本单元) org.apache.camel.Exchange —The Camel abstraction for an exchange of messages. This exchange of messages has an “in” message and as a reply, an “out”message ( Exchange 是camel抽象出来用于Message之间的信息传递的,它有一对“in”message 和“out”message ) We’ll start by looking at Message to understand how data is modeled and carried in Camel. Then we

Camel In Action 读书笔记 (2)

假装没事ソ 提交于 2020-02-29 09:00:35
<p><span>在1.4中介绍了</span>Camel的整体架构,以及Camel中的一些概念.</p> <p><strong>架构图</strong></p> <p><img src="file:///C|/Users/vastdream/AppData/Roaming/Zoundry/Zoundry%20Raven/My%20Profile/resourcestore/zrclip_001p6bc60906.png" height="352" width="787"/></p> <p>关于各个概念不在此详述.</p> <p><strong>Camel的主要流程:</strong></p> <p>1:创建CamelContext</p> <blockquote style="MARGIN-RIGHT: 0px" dir="ltr"> <p><em>CamelContext context = new DefaultCamelContext();</em></p> </blockquote> <p>2.添加Component</p> <blockquote> <p><em><em>context.addComponent("direct", new DirectComponent());</em></em></p> <p><em style="COLOR: #ff0000">注

Camel In Action 读书笔记 (5)

纵然是瞬间 提交于 2020-02-29 08:50:22
<p>接下来说说第四章,</p> <p>第四章介绍如何在Camel中使用普通bean,关于bean的使用方式前面已有介绍:javaDSL和SpringDSL两种方式。</p> <p>下面讲下bean的Camel中的使用模式。</p> <h3><em>The Service Activator pattern</em></h3> <p>翻译过来喂服务激活模式,感觉有点别扭,说成服务代理模式貌似更好些理解些。如下图:</p> <p><a href="http://static.oschina.net/uploads/img/201306/09113459_SJBm.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://static.oschina.net/uploads/img/201306/09113459_fOtB.png" width="591" height="158" /></a> </p> <p>service是一个POJO,service activator 作为Camel的一个中间代理,接受请求request

Camel In Action 读书笔记 (8)

删除回忆录丶 提交于 2020-02-29 08:19:08
第8章 Enterprise integration patterns 是core Camel的最后一章了,第二章已经介绍了一部分camel在eip中的应用。这一章全部都是讲eip. 看来eip确实是camel的核心,camel确实是基于eip的。 这一章包含了5方面的EIP问题: ■ The Aggregator EIP 消息合并 ■ The Splitter EIP 消息分拆 ■ The Routing Slip EIP 根据消息标签进行路由(也是一种路由) ■ The Dynamic Router EIP 动态路由 ■ The Load Balancer EIP 负载均衡 The Aggregator EIP 消息合并模式,如下图所示,只有当接收到三个标识相同的消息合并完成后再发送出去。1为消息标识,ABC为消息内容。 关于消息合并我们需要关注三个方面: 1.Correlation identifier 消息合并的标识,即如何确定这几个消息是一组的。如上图标识的1,2 2.Completion condition 消息合并完成的条件,即多少个消息,多长时间内的消息合并。如上图3个消息合并完成。 3.Aggregation strategy 消息合并的策略,即消息是如何合并的。这个需要自己实现接口 AggregationStrategy。 public void

Camel In Action 读书笔记 (6)

拈花ヽ惹草 提交于 2020-02-28 21:42:28
今天继续学习第五章, Error handling . Camel作为一个集成框架,需要与外部系统对接。外部系统的不稳定因素导致其异常处理也相对复杂些。 Camel将异常分为两大类: 一是 irrecoverable error (不可恢复),比如数据库异常不能存取了。 二是recoverable error(可恢复),比如与外部系统进行TCP通讯时不稳定。 关于这两种异常的处理方式也是不一样的: irrecoverable error 的处理方式一般是调用Exchange的两个 void setException(Throwable cause); 处理异常 Exception getException();获取异常 recoverable error的处理方式是: Message msg = Exchange.getOut(); msg.setFault(true); msg.setBody("Unknown customer"); Error handlers in Camel Camel提供了四种error handle来处理异常。 1.The default error handler 这是Camel默认的处理方式,我们不需额外添加代码。默认的设置是:不重新发起;异常会返回给调用者。 2.The dead letter channel error handler

获取枚举值的属性

痴心易碎 提交于 2020-02-26 21:46:23
我想知道是否可以获取枚举值而不是枚举本身的属性? 例如,假设我有以下枚举: using System.ComponentModel; // for DescriptionAttribute enum FunkyAttributesEnum { [Description("Name With Spaces1")] NameWithoutSpaces1, [Description("Name With Spaces2")] NameWithoutSpaces2 } 我想要的是枚举类型,产生2个元组的枚举字符串值及其描述。 价值很容易: Array values = System.Enum.GetValues(typeof(FunkyAttributesEnum)); foreach (int value in values) Tuple.Value = Enum.GetName(typeof(FunkyAttributesEnum), value); 但是,如何获取描述属性的值以填充Tuple.Desc? 我可以考虑如果Attribute属于枚举本身,那么该怎么做,但是我对如何从枚举的值中获取它感到困惑。 #1楼 您还可以定义一个枚举值,例如 Name_Without_Spaces ,当需要描述时,请使用 Name_Without_Spaces.ToString().Replace('