2020年10月31日星期六

Website load balance

The tests are based on a developed website, which is hostd on IIS 7.5. A static html page is under the tests via webbench 1.5.

Webbench simulated 1000 clients, running 300 sec. to access the website. Nginx is used to distribute web reqeusts to different websites.

This time, the tests are all running on the virtual machines. 

1 website:

Speed=91117 pages/min, 777535 bytes/sec. => 759KB/sec
Requests: 455587 susceed, 0 failed.

2 websites:

Speed=92961 pages/min, 793268 bytes/sec. => 775KB/sec

Requests: 464806 susceed, 0 failed.

 3 websites

Speed=94324 pages/min, 804899 bytes/sec. => 786KB/sec.
Requests: 471621 susceed, 0 failed.

 

Based on succeed requests, there is 2.02% and 3.52% increase. The more IIS websites added, the more throughput produced.

When more websites were added in different virtual machines, more throughput could be achived.

 

原文转载:http://www.shaoqun.com/a/485878.html

damai:https://www.ikjzd.com/w/1391

夸克:https://www.ikjzd.com/w/1237

智邦:https://www.ikjzd.com/w/2376


Thetestsarebasedonadevelopedwebsite,whichishostdonIIS7.5.Astatichtmlpageisunderthetestsviawebbench1.5.Webbenchsimulated1000clients,running300sec.toaccessthewebsite.Nginxisusedtodistributewebreqeuststo
auditor:https://www.ikjzd.com/w/2437
woot:https://www.ikjzd.com/w/604
英德九州驿站树屋村是怎么样的?:http://tour.shaoqun.com/a/1670.html
旺季选品谨防踩坑,已有88家店铺遭起诉!:https://www.ikjzd.com/home/128218
亚马逊PPC广告如何操作?盘点PPC广告投放的5种常见错误!:https://www.ikjzd.com/home/7747

2020年跨境电商成稳定全球贸易主力军 多国贸易迅速回暖

2020年跨境电商成稳定全球贸易主力军 多国贸易迅速回暖

今年全球贸易的反弹速度大幅快于2008年金融危机,不仅提振了全球经济许多领域,同时让更具增长活力的跨境电商成为各国瞩目的发展领域。业内人士认为,当下,各国政府应在发展跨境电商方面加强协作,探索制定全球规则,为未来全球贸易复苏贡献更多力量。

多国贸易迅速回暖

新冠肺炎疫情暴发后,国际商品贸易遭遇了自"大萧条"以来的最大同比降幅。当前,全球贸易仍低于疫情前的水平,不过已经实现强劲反弹。

根据德国智库基尔世界经济研究所数据,到6月时,今年全球贸易的历史性损失已经恢复了一半左右。研究机构IHS Markit追踪的38个经济体中,8月有14个经济体的新出口订单实现增长,而6月只有4个,其他经济体正朝着好的方向发展,可能很快就会开始增长。

全球货运量数据显示,美国、亚洲和欧洲其他一些港口的航运活动也已恢复正常。随着货物需求的回升,一些关键航线的运费水平已经远高于疫情之前。如果这一趋势持续下去,贸易在全球经济复苏中所发挥的作用可能会比预期的更大。

标普全球评级亚太区首席经济学家罗奇称:"事实证明,贸易是经济当中更具韧性的一个领域。"他说,"就算无法去度假,你也可以给自己买一台新笔记本电脑。"

《华尔街报》文章称,消费者在花钱购买进口商品方面热情不减,政府发放现金起到了一定的支撑作用。

基尔世界经济研究所所长费尔贝迈尔表示,在最近对全球贸易的分析中,该研究所研究了2008年至2009年衰退期间的数据,发现贸易额用了13个月才恢复到今年仅两个月就达到的水平。他说,其中一个原因是,今年的贸易萎缩并不是需求的长期崩溃。当政府重新开放边境并放松对社会活动的限制时,进出口可能会迅速恢复。

跨境电商势头正旺

当前,全球贸易复苏受到疫情反弹等不确定性因素威胁,而跨境电商凭线上交易、非接触式交货的优势成为稳定贸易形势的主力军。日前在郑州举行的第五届中国跨境电商50人论坛上,中外业界人士认为,加强跨境电商协作、探索制定全球规则是当务之急。

中国服务贸易协会顾问、原外经贸部副部长、博鳌亚洲论坛原秘书长龙永图表示,国际跨境电商的规则体系是在总结世界各国跨境电商经验、教训、做法中形成的。当前,我国跨境电商已经走在世界前列,探索形成了一些监管机制和其他相关机制,在这次疫情下,提出了新的举措,实现了新的发展。要在认真总结实践经验的基础上,努力形成真正切实可行、大家更能够接受的新的规则体系,为全球制定跨境电商规则体系作出中国贡献。

哈萨克斯坦驻华大使哈毕特霍伊什巴耶夫表示,没有国际消费支撑的国家难以进一步发展,跨境电商的进一步发展是大家共同的愿景。"哈萨克斯坦正在采取措施刺激电子商务发展,努力在国际电商平台推广不同企业,目前选择了十家公司作为黄金供应商与阿里巴巴进行合作。同时,积极创造哈萨克斯坦自己的数字交易平台。"他说。

河南保税集团总裁徐平以从业者的视角剖析跨境电商的现状,认为未来跨境电商将在垂直站点、全球72小时送达供应链、货到付款三个领域展开激烈角逐。她表示,加快发展跨境电商需要加强国际协同合作,国内应加大对跨境电商的征信服务、优惠税收政策以及平台支撑力度,同时建议中小电商企业差异化发展。

记者从论坛上获悉,河南省将发展跨境电商纳入对外开放总体格局,形成了网上、空中、路上、海上"四路"协同并进态势,积极探寻后疫情时代跨境电商新形势、新规则、新举措。

据了解,郑州经济技术开发区是河南省首家六星级产业集聚区,旨在围绕跨境电商新形势、新规则、新举措,共谋对外贸易新业态、新模式、新思路,充分发挥跨境电商在贸易全球化过程中的引领带动作用。

多举措促进行业发展

我国在跨境电商领域的实践和成果受到广泛关注,未来有望通过政策支持、人才培训、对外交流等措施提升行业影响力,引领全球行业发展。

龙永图表示,跨境电商是国内国际双循环的重要桥梁,从跨境电商进口方面来说,在疫情重挫全球贸易投资的大背景下,我国仍会持续扩大进口以满足国内多样化个性化需求,通过增加进口拉动周边国家、国际社会,进而带动世界经济的复苏;从跨境电商出口方面来说,我国将充分发挥跨境电商稳外贸促出口的作用,仍会以开放的姿态深度融入全球产业链供应链,以高水平开放助推国际经济大循环。

海关总署口岸监管司副司长党晓红认为,跨境电商是应对当前复杂外部环境的重要措施之一,在构建"双循环"新发展格局过程中,也大有可为。海关总署下一步将继续做好跨境电商监管服务,促进消费,做大国内市场,同时,总结跨境电商B2B出口改革试点成效,并在全国复制推广。

国务院参事室参事汤敏建议,进一步健全针对小微企业的股权融资机制,加大跨境电商人才培养力度。

"长期以来,跨境电商小微商户面临融资难。目前,腾讯的微众银行、阿里巴巴蚂蚁金服、敦煌网供应链金融、PingPong金融产品等正在尝试解决电商小微商户的贷款问题。同时,研究机构将根据数据分析,对小微企业的股权融资进行评估。"汤敏说。

汤敏表示,目前已经完成全球跨境电商研究院的结构搭建,成立了由联合国国际组织、国家部委、高等院校、跨境电商产业链龙头企业共同组成的专家委员。组织编写了一系列跨境电商教材、跨境电商人才标准,完成了跨境电商相关政策研究报告。

"我已提出建立跨境电商大学的建议,为中国乃至全世界培养跨境电商人才。该培训项目不限于国别、不拘泥学时,旨在为各国提供相关技能人才和就业机会,相信这将成为中外交流极好的桥梁。"汤敏说。

来源:跨境电商独立站

文章来源:https://www.ikjzd.com/home/132753

敦煌网站:https://www.ikjzd.com/w/189

铭宣:https://www.ikjzd.com/w/1551.html

shirley:https://www.ikjzd.com/w/1684

贝恩投资公司:https://www.ikjzd.com/w/1336

扬帆计划:https://www.ikjzd.com/w/1581

2020年跨境电商成稳定全球贸易主力军 多国贸易迅速回暖

今年全球贸易的反弹速度大幅快于2008年金融危机,不仅提振了全球经济许多领域,同时让更具增长活力的跨境电商成为各国瞩目的发展领域。

2020年跨境电商Google购物广告终极指南(下)

2020年跨境电商Google购物广告终极指南(下)

了解网络和Google Smart Bid技术

近年来,无论是在我们已经讨论过的广告展示位置上,还是在智能技术方面,Google上的购物广告都发生了很大变化。

就覆盖范围而言,购物广告现在可以在上述所有位置展示。更多的广告展示位置意味着有更多机会吸引潜在的消费者。对于标准的购物广告,可以通过调整网络设置来控制广告的显示位置。对于智能购物广告(我们将在下一部分中介绍)。 

借助机器人,Google一直在以智能广告和智能出价的形式为广告的设置和管理添加更多的人工智能。稍后我们来讨论智能广告。首先,什么是Google的智能出价? 

Smart Bidding可以在不到一秒钟的时间内分析数百万个信号,从而调整出价以帮助你实现目标。Smart Bidding使用"auction-time bidding",这意味着它会针对每个购物者实时调整出价。因此,对于每个输入可能触发你的广告关键字的购物者,Google都会根据他们认为此人购买的可能性来调整出价。 

在大多数情况下,我们建议使用Google的智能出价选项。对于购物广告系列,主要是目标广告支出回报率或最大化转化次数。

转化跟踪设置

转化是购物广告的命脉。没有转化数据,我们将无法评估广告效果或优化广告。没有可靠的转化跟踪,智能出价和智能广告将无法跟进。如果根本没有设置转化跟踪,则无法使用智能广告系列或智能出价。如果转化跟踪功能已关闭,则智能出价工具将处于盲目的状态,不知道确切地销售什么产品或由谁购买。 

重要的是,我们主要依赖Google Ads转换代码,而不是从其他来源(例如Google Analytics(分析))导入转换。由于Google Analytics(分析)的默认值为最终点击,因此可能会低估Google Ads的转化。如果我们想向Smart Bid算法提供最准确和完整的数据。使用Google Ads,转化代码可以实现这一目标。 

以上是有关如何为设置Google Ads转化跟踪的快速指南。 

4种制作购物广告系列的方法

1.智能购物广告为我们提供了一种轻松的方法

如果你正在寻找最简单的设置和操作,那么智能购物广告系列是你的最佳选择。智能购物广告系列需要一些输入才能开始。他们需要获得批准的供稿,每日预算,某些地理位置定位以及所需的广告支出回报率。我们也可以跳过特定的目标广告支出回报率,而只需选择最大化转化价值即可。之后,智能购物就做好了。Smart Shopping可以在按照我们的每日预算和目标ROAS的同时,为我们带来潜在买家的浏览和点击。

优点 

如上文所述,如果你拥有优化的Feed,那么"智能购物"广告系列通常效果很好。通常,它们的效果与标准的购物广告系列一样好,有时甚至更好。它的优势在于设置操作简单。此外,智能购物广告还包含动态再营销广告。因此,我们不必设置独立的动态再营销广告系列。Smart Shopping会配合好它。我们需要不时关注,并确保没有任何提示问题,并且如果效果不理想,我们可能会偶尔调整广告支出回报率目标。除了资讯提供更新,问题或广告投资报酬率目标变更外,Google会处理其余的工作。

缺点

如果你是控制狂,智能购物广告可能会使您感到沮丧。数据可见性更少,而拉动性能最佳化的杠杆也更少。例如,我们不能添加否定关键字,不能运行搜索字词报告,并且不能有多个广告组。

提示

广告支出回报率目标可以在广告系列一级或广告组一级设置。由于每个广告系列只能有一个广告组,因此,给定"智能购物"广告系列中的每个产品基本上都具有相同的目标广告支出回报率。如果你的利润在所有产品中都保持一致,那么将所有产品都放在同一广告系列中可能会很好。一个广告系列中不能有多个广告组,但是你可以同时运行多个Smart Shopping广告系列。通常最好为具有相似ROAS目标的每组产品创建一个单独的广告系列。例如,假设你销售运动鞋和袜子。最好为运动鞋创建一个系列,为袜子创建一个单独的系列。这样,你可以为每个类别设置各自的广告支出回报率。 

如何设置智能购物广告系列

单击以创建一个新的广告系列,然后选择"销售"作为广告系列目标,选择"购物"作为你的广告系列类型,选择你的Merchant Center,选择销售产品的国家/地区,然后选择"智能购物"作为广告系列子类型。


然后为广告系列命名,设置每日预算,并提供有关广告支出回报率目标的详细信息。

接下来,选择产品组。默认值为"所有产品",其中包括Feed中所有已批准的产品。或者,只能根据类别,品牌,产品类型,自定义标签或商品ID选择某些产品。

添加图片和徽标,以便Google可以为你制作动态再营销广告。

完成以上步骤后,确保检查Google Merchant Center的Feed指标,并查看Google Ads的性能指标。 

2.辅助方法(部分人工,部分机器人智能) 

也许你喜欢利用Google的智能出价技术,但完全由Google控制的话会让你有些害怕。或者,也许你喜欢查看更多数据的想法。如果你是个"show me the details"或"let me pull some levers"的人,那么这可能是适合你的方法。在此设置中,我们将选择一个标准的购物广告系列,该广告系列可以为我们提供所有正常的控制范围,例如网络,出价类型等,但是我们还将启用智能出价。现在你拥有了一个机器人助手。 

优点 

这确实是两全其美的选择。你仍然拥有一定的控制权,但我们要让计算机执行其最擅长的工作:出价优化。在一个广告系列中启动多个广告组,选择您的广告网络等等。我们还将受益于更多的数据可见性,包括搜索字词报告,该报告不适用于智能广告系列。 

缺点

与智能购物广告系列相比,我们需要投入更多的精力跟进。除此之外,这种方法确实没有缺点。我们保留控制权和数据可见性。要启用目标广告支出回报率,我们的帐户必须在过去30天内至少产生15次转化。如果没有达到该转化阈值,则需要先进行手动出价,然后再过渡到智能出价。 

提示

  • 为广告支出回报率相似的产品创建一个单独的广告系列或至少一个单独的广告组。这样,可以让Google优化以达到适用于每个类别或产品组的目标广告支出回报率。与智能购物广告系列不同,标准广告系列可以包含多个广告组。目标广告支出回报率出价可以在广告系列或广告组一级设置。是否将产品类别细分为同一广告系列中的多个广告组或单独的广告系列,实际上取决于预算决策。预算是在广告系列一级进行控制的,因此,如果你需要一种产品类别的每日预算与另一种产品类别的每日预算不同,那么设置单独的广告系列是最佳选择。 

  • 扩展到其他网络。当购物广告系列扩展到不同的网络时,我们通常会在可接受的广告支出回报率上看到规模扩大的良好效果。如果效率是你的重中之重,则可以坚持使用Google搜索和仅搜索合作伙伴。如果你想慢慢积累,则可以从YouTube和GDN开始。

如何设置辅助智能购物广告系列 

选择"销售"作为广告系列目标,然后选择"购物"作为广告系列类型,选择你的Merchant Center帐户,选择要销售产品的国家/地区,然后选择"标准购物"作为广告系列子类型。


然后输入你的广告系列名称,选择目标广告支出回报率作为出价策略,然后输入所需的广告支出回报率。

如果你想提高效率而不是达到目标,请取消选中"搜索合作伙伴",然后取消选中"包括YouTube,Gmail和发现"。但是,我们经常可以从这两个网络选项中看到良好的效果,因此,如果想更加主动一点,可以选中这些复选框。

接下来,选择"单一产品广告",然后选择"所有产品"或按属性细分,例如"类别","品牌"," ID"或"自定义"标签,以决定要如何划分第一个广告组。

何时使用Showcase Shopping广告

展示购物广告可以展示更广泛,更有趣的搜索查询。它们显示搜索,在这些搜索中,一系列产品可能比特定产品更能帮助购物者。

我们发现这些广告对于某些类别的产品特别适用,尤其是服装和配饰以及家具和家居装饰。因此这些效果很有效,但Showcase Shopping广告的广告支出回报率始终较低。但是,它们仍然可以在您的广告策略中发挥重要作用。当前,"橱窗购物"广告并未针对所有产品类别展示。家具,服装,配件,电子产品,家居装饰和其他一些类别均允许展示柜购物广告。 

3.无风险,低报酬的方法

也许你就是要降低风险。也许不保证转化率(现在不管Google的新技术多么令人印象深刻)而支付点击费用可能与你的想法有关。如果你对这种安全但增长缓慢的轨迹感到满意,那么无风险,低回报的方法非常适合你。在这里,只能通过Shopping Actions利用免费列表。 

优点

可以通过Shopping Actions支付合理的佣金。 

缺点

可见度将受到很大限制。如上所示,免费商家信息不会显示在Google最突出的展示位置上。对于购物操作(基于佣金),可见度可能会大于免费列表。但是,除非你的产品销售情况非常好,否则Google更有可能展示传统的付费商品或具有良好销售记录的Shopping Action产品。 

如何设置免费列表

添加新的供稿时,可以选择目的地。购物操作是免佣金清单,允许购物者在Google上进行购买,我们已经在上面进行了讨论。Google上都是免费的商品信息,就像付费商品信息一样,这些商品会将购物者引流到你的网站。选择你想要显示清单的目标。默认是所有目标地均被选中,因此你需要取消选择要退出的选项。 

4.利用本地库存广告(LIA)来增加人流量

如果你有实体店,则可以使用本地库存广告来吸引购物者。本地库存广告显示在标准购物广告旁边,并在购物者离你的实体店很近时显示。本地库存广告用"今天提货"或类似的消息表示,例如下面的Lowes示例。

设置本地库存广告有四个基本步骤:

  1. 1.在Google Merchant Center中启用LIA

  2. 2.创建并提交本地库存提要

  3. 3.要求库存验证

  4. 4.在购物广告系列中启用本地库存广告

Google会希望验证你的店内库存,因此可以选择亲自或通过电话进行验证。

超越关键字:将受众群体添加到你的购物广告系列中

搜索广告的再营销列表(RLSA)

如果你告诉Google,"当看到这样的搜索者时,我希望提高出价"该怎么办?举例来说,假设有人曾经去过你的网站并进行过购买。现在他们又回到Google上搜索你可能不知道您提供的另一种产品。那是你肯定要引导客户回到商店购物。 

搜索广告的再营销列表(RLSA)是购物广告系列的重要补充。 

需要在网站上添加再营销标签,或者使用Google Analytics(分析)来建立再营销列表。如果使用Google Analytics(分析),则可能需要更新跟踪代码。 

然后在共享库中构建列表。(列表基本上是满足特定条件的网站访问者的集合。)然后,如果选择这样做,则可以通过不同的方式在不同的列表中做广告,例如:

  • All visitors,以获取之前访问过你网站的任何人的列表

  • Abandoned cart,用于将商品添加到购物车而没有购买就离开的访客

  • Product viewers,那些访问您网站上产品页面的人

  • Previous buyer,之前购买过的商品

客户匹配清单

使用此列表类型,可以将客户电子邮件列表上传到Google,以使其与用户"匹配"。然后,可以通过多种方式和不同的渠道来定位这些用户,从搜索到展示,再到YouTube和购物。这些列表可以帮助定位过去从我们那里购买但在Google上搜索他们不知道你销售的其他产品的客户。或者,他们过去曾从你这里购买过产品,但不记得你的URL或名称。使用客户匹配,当列表中的某人在Google上搜索产品时,我们可以更积极地出价。 

相似的受众

上载客户列表的最佳原因之一是可以创建相似的受众群体。这是Google创建与其他再营销列表行为相似的受众群体的时候。可以创建与客户相似(类似于"客户匹配")或与所有访问者或任何其他再营销列表相似的受众。 

YouTube清单

如果我们在YouTube上有任何视频内容,则也可以考虑使用YouTube列表进行定位。通常可以定位订阅你的YouTube频道的用户和/或观看过你的YouTube视频之一的用户。

使广告势不可挡:添加产品评论和产品促销 

促销/特价

如果要进行销售或提供临时的免费送货服务或其他特殊服务,则可以设置一个促销Feed,该促销Feed带有带蓝色下划线的"特惠"文字。它还通常在广告顶部带有标注,以突出显示促销内容。对于以下所列的阿迪达斯跑鞋,可享受25%的折扣。

当单击"特价商品"时,会弹出一个带有折扣代码的弹出窗口,用于声明该商品。 

要进行此设置,需要创建一个促销Feed。必须先联系Google Ads代表并要求将其列入促销白名单。或者,可以填写商家促销兴趣表。

之后,可以使用以下两种方式之一创建促销: 

  1. 1.可以使用Google Merchant Center中的"市场营销"标签,如果你有简单的促销活动(例如在整个网站范围内进行销售),这通常是最简单的。 

  2. 2.如果你有适用于不同产品的不同促销优惠,那么促销源可能是理想的选择。点击Feed区域中的+ Data Feed按钮,然后在Type下拉菜单中选择Promotions。

这些特别优惠可以吸引注意力和点击次数,也有助于转化。有关设置促销Feed的更多信息,请参阅Merchant Center指南。

产品评论

产品评分可能会对你的购物广告系列的整体效果产生重大影响。Think with Google发布的统计数据显示,近年来,包括"best"和"right now"一词的搜索量增长了125%。当你在搜索查询中添加"best"一词时,Google会显示带有最佳产品评论的购物结果。

要将产品评论纳入你的购物广告中,你需要获得Google的批准。首先,填写并提交产品评分兴趣表。Google会在提交后10到15天内与你联系,并提供使产品评论与购物广告一起显示的后续步骤。

第三方评级汇总商

Google可以与多个用于收集评论的第三方工具集成,包括Bazaarvoice,eKomi,PowerReviews,Shopper Approved,Yotpo等。

利用你的商家Feed来投放动态再营销广告

动态再营销广告使Google可以从产品Feed中提取图像和信息,以便向网站的购物者投放高度相关的再营销广告。这个想法是Google会在网站上使用购物者浏览过的产品填充再营销广告。动态广告可能类似于以下示例:

要从Google的购物广告系列中获得最大收益,需要花费一些时间和精力来关注细节,但这是值得的。产品详情广告之所以有效,是因为它们以非常有效的方式联系了买卖双方。即使竞争加剧,这仍然是吸引新买家的最有效平台之一。

Google与Think的研究中最大的收获之一就是客户对新品牌持开放态度,并从新零售商那里购买商品。购物是将感兴趣的和开放的购物者与品牌和产品线联系起来的理想平台。如果你希望扩大客户群并以一种可靠的,可衡量的方式出售更多产品,那么没有比PLA更好的渠道来添加产品了。现在开始制作你的Feed,制作一些广告系列,然后开始进行销售。

来源:跨境电商独立站


文章来源:https://www.ikjzd.com/home/132752

shirley:https://www.ikjzd.com/w/1684

凹凸曼:https://www.ikjzd.com/w/1392

万国邮政联盟:https://www.ikjzd.com/w/861

转运中国:https://www.ikjzd.com/w/1549

let go:https://www.ikjzd.com/w/825

2020年跨境电商Google购物广告终极指南(下)

近年来,无论是在我们已经讨论过的广告展示位置上,还是在智能技术方面,Google上的购物广告都发生了很大变化。

2020年10月30日星期五

nacos 作为配置中心使用心得

1、安装运行

1.1 源码及运行包下载

下载地址:https://github.com/alibaba/nacos/releases 

 目前官方建议使用1.3.1

 1.2 安装MySql驱动

1.3.1用的是mysql8的mysql connector 所以需要下载mysql的驱动,否则DB连接失败

官方确定下载地址:https://dev.mysql.com/downloads/connector/j/  

1.3 修改DB连接配置

在console的application.properties中修改对应的DB配置

spring.datasource.platform=mysql

### Count of DB:
db.num=1

### Connect URL of DB:
db.url.0=jdbc:mysql://mysql连接域名:端口/db58_resource_0?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai
db.user=用户名
db.password=密码

1.4 引入对应jar

不知道是不是本地环境的原因,下载的源码编译报错找不到hamcreast,在报错的工程引入下面的jar就好用了。
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-library</artifactId>
<version>1.3</version>
</dependency>

1.5 编译启动

1)选择对应的profile,然后clean  ,install

2)distribution 工程下看到运行包

找对应的环境启动对应的包,另外需要修改conf下的对应配置

1.6 创建表

找到distributiong工程的nacos-mysql.sql文件,在你给nacos分配的库中执行这个文件就ok

1.7编译器源码运行启动

想必大家也发现了,console工程就是nacos的运行工程,找到Nacos类运行main函数就启动起来了。

2 集群配置

将distribution下的文件复制三份,分别为三个节点

三个节点下分别创建 "cluster.conf"的文件

具体内容为三个节点对应的IP:端口

#2020-09-19T16:32:56.763
10.252.54.247:8846
10.252.54.247:8847
10.252.54.247:8848
10.252.54.247:8849

修改startup.cmd 改为集群启动模式

分别启动三个节点的startup.cmd

大家可能看到我的节点为4个,其中8846是我用idea编译器。

编译器模式下默认是集群模式不用修改,其中集群配置文件在"C:Users用户名nacosconf"下。

原文转载:http://www.shaoqun.com/a/485834.html

汇通天下:https://www.ikjzd.com/w/2055

旺店通:https://www.ikjzd.com/w/2390

徐家骏:https://www.ikjzd.com/w/1803


1、安装运行1.1源码及运行包下载下载地址:https://github.com/alibaba/nacos/releases目前官方建议使用1.3.11.2安装MySql驱动1.3.1用的是mysql8的mysqlconnector所以需要下载mysql的驱动,否则DB连接失败官方确定下载地址:https://dev.mysql.com/downloads/connector/j/1.3修改DB
lithium:https://www.ikjzd.com/w/2505
国际标准书号:https://www.ikjzd.com/w/174
深圳九龙山花仙谷哪里好玩?九龙山花仙谷怎么样?:http://tour.shaoqun.com/a/31278.html
惠州去哪可以烧烤?惠州哪个景区能烧烤?:http://tour.shaoqun.com/a/24219.html
刚刚 | 全球最大货代德迅宣布收购美国老牌物流企业Quick!:https://www.ikjzd.com/home/11472

想要新品上架就有流量?你得这么做!

想要新品上架就有流量?你得这么做!

要想店内产品上架之后就能被消费者看到,那就一定要做好店铺排名和产品被搜索的排名;店铺排名也有很多情况,要想提高店铺排名来以此增加新品流量,这是卖家必须掌握的内容。

01、搜索排名

无论是哪个平台,在前台搜索都有一定的规律可言,在平台首页搜索某一款产品,搜索结果相对应的是某款加了关键词的产品,热门搜索也会根据你的产品所牵连的关键词词汇。

02、优化策略

了解了搜索排名的规律,可以通过产品标题、上下架的时间、浏览量、销量等方面优化来提高产品的搜索排名。

当产品具有多个属性时,最密切相关的属性应与产品的名字组合在一起。是否可以搜索到产品取决于产品的标题是否包含关键字以及关键字是否正确组合。紧密排列和关键字组合是很重要的,可以让您增加搜索到产品的概率。

我们可以换位思考一下。

我们在给产品起名字时,如果您是买家并想购买此产品,您会发现可以通过淘宝搜索下拉框挑选一种词汇。你可以想大部分人会选择哪一种词汇,就可以在标题上使用此关键字。

使用更多特价,促销、包邮等一些营销词来吸引消费者的眼球。我们在买东西的时候,我相信你也想购买的时候有活动,所以可以在标题上增加一些营销词,让人产生购买的欲望。

我们在设置标题的时候,就会发现宝贝的标题不能超过60个字节,即30个汉字。所以我们在理想组合的情况下,标题中包括的关键字越多,被搜索的概率就越大。

03、产品上架

不同平台的不同产品的上架时间是不一样的,具体情况要按照平台流量而定,尽量选择受影响较小的时间段上架,跨境平台和国内平台更是有一定的差异性。

04、产品主图

主图设计是影响点击最直接的原因,好的主图设计能客户眼前一亮,有想点进去的冲动;主图设计最好能突出产品的卖点,并且这个卖点能直击用户的内心,卖点可以多放几个,但必须把最主要的放在最能吸人眼球的地方。

05、标题的作用

随着网络时代的不断发展,如果你没有一个好的亮点标题来引人注意,那么客户很容易就一扫而过,对于电商店铺的产品来说,标题不仅是一个简单的产品描述,更应该与热点关键词相对应,客户在搜索相关产品的时候,就可以通过相关的关键词搜索到我们的产品。

换位思考一下,如果你去网购平台上挑选产品,是不是首先从标题上看是不是自己需求的产品,然后再去细细钻研对比产品。

06、详情页

在国内电商中,详情页的设计应该是产品展示效果中很重要的一部分,他是结合图文模式来展现产品的功能、以及产品售后问题等;但对于国外电商平台来说,就像Shopee可能还没到那种情况,目前只采用的是文字介绍,虽然不用图文结合,但是文字是不可缺少的,内容需要描述清楚产品的特点、功能,如果不满意的话如何解决等一系列的售后问题。其实详情页的设计在很大程度上节省了客服的时间,有时间的话,顾客平时比较常问的问题,可以做成模板,放到详情页中。

店铺排名上来了,店铺的权重性就越高,平台给到的流量也比较多,不管是在官方还是消费者心中,都有不小的地位。客户对店铺的信任和好感一下子上升。

来源:shopee图乐跨境

文章来源:https://www.ikjzd.com/home/132714

writer:https://www.ikjzd.com/w/1280

环球市场:https://www.ikjzd.com/w/1762

promoted:https://www.ikjzd.com/w/971

声网:https://www.ikjzd.com/w/2176

hunter:https://www.ikjzd.com/w/992

想要新品上架就有流量?你得这么做!

要想店内产品上架之后就能被消费者看到,那就一定要做好店铺排名和产品被搜索的排名;店铺排名也有很多情况,要想提高店铺排名来以此增加新品流量,这是卖家必须掌握的内容。

避免支付长期仓储费的亚马逊物流清仓计划,你受到邀约了吗?

避免支付长期仓储费的亚马逊物流清仓计划,你受到邀约了吗?

雨果网获悉,亚马逊近日公告表示,卖家可以使用亚马逊物流清仓来恢复符合要求的可售和不可售库存的价值,并避免支付长期仓储费,避免弃置库存做填埋处理,或免除处置库存归还给卖家的麻烦。

据悉,亚马逊物流清仓计划仅面向受邀卖家,自 2020 年 10 月 30 日起开始实施。在此日期之前无法创建清仓订单。

运作方式

卖家可以选择使用亚马逊物流清仓,通过值得信赖的提供商清算库存,而无需为弃置或移除冗余库存或买家退回的亚马逊物流库存而付款。通过清算库存,卖家可以收回部分库存费用,同时避免支付月度仓储费和长期仓储费。例如,可以通过清算库存来接收付款(您的"净回收价值"),而不是向亚马逊付款以弃置库存。

对于卖家提交进行清仓的符合要求的商品,亚马逊将尽量在提交后的 30 天内找到买家。如果成功,亚马逊会将买家为这些商品支付的金额(扣除费用)转入卖家账户。净回收价值将在货件在卖家平台的【移除订单详情】页面标记为【已完成】后大约 60 天内显示在卖家的账户中。

亚马逊如何计算您的净回收价值

亚马逊将首先通过评估以下几个因素来确定您的库存价值:

1、卖家的销售历史记录

2、在亚马逊网站上的平均亚马逊物流销售价格

3、该特定 ASIN 的销售历史记录

根据合约费率,第三方清算人将按总回收价值购买此库存,总回收价值可能因与清算人签订的合约费率而异。对于在 2021 年 3 月 31 日之前提交的所有订单,亚马逊将免除计划费用。

自 2021 年 4 月 1 日起,亚马逊将针对每个清仓订单扣除相关费用,卖家将收到净回收价值。促销期可能会发生变化。

在提交清仓订单中符合条件的库存后,亚马逊将不再针对该库存收取月度仓储费和长期仓储费。

费用

自 2021 年 4 月 1 日起,亚马逊将对卖家清算的每件商品收取两项单独的费用:

1、每件商品费用(基于尺寸和重量)(英国/欧盟: 表 1)

2、总回收价值的 14% 销售佣金请注意,亚马逊物流清仓计划目前仅面向受邀卖家。

image.png

符合要求的商品

ASIN 的清仓资格需遵守法律、安全和法规指南。不符合清仓要求的商品包括:

1、亚马逊物流禁运商品

2、超过有效期的具有有效期的亚马逊物流库存

3、易融的亚马逊物流库存

4、危险物品(危险品)

5、需要批准的分类和商品以及禁止销售的其他受限商品

6、销售价格低于 £7.00/€7.00 的库存

创建清仓订单

1、从卖家平台创建清仓订单:

a.使用以下任意页面确定要进行亚马逊物流清仓的库存。

管理冗余库存

修复无在售信息的亚马逊库存

库龄

建议移除

管理所有库存

亚马逊库存

b.在大多数页面上,您可以选择一个或多个 ASIN,然后在操作列表中选择【创建移除订单】。对于【建议移除报告】,点击【开始移除】程序(仅在您拥有我们建议移除的库存时显示)。

在【创建移除订单】页面的【移除方法】下,选择【清算】。选择要清算的【可售数量】或【不可售数量】的金额。准备就绪后,点击【继续】。审核完您的订单后,点击【下】【单】完成清仓请求。

追踪清仓订单

image.png

常见问题

对于清算的商品,我能收回多少成本?

平均而言,最高收回价值约为您的 ASIN 平均售价的 20%*。对于您通过亚马逊物流清仓服务实际可收回的金额,我们不做担保。

*此结果可能有所不同,具体取决于与购买库存的第三方批发清算人签订的合约费率。亚马逊不能保证设定的回收率。

在等待清仓的过程中,我能否将已提交清仓的库存用于配送买家订单?

提交清仓订单后,在等待清仓的过程中,您的库存仍可用于配送买家订单。如果在等待清仓的过程中使用您的库存配送买家订单,您将收到销售收益,而非清仓款项。当库存已经完成清算而不可再用于配送订单时,库存将在您的【移除订单详情】报告中显示为"完成"。

如果我选择进行清仓的商品不符合清仓要求,会怎么样?

您将在创建移除订单工作流程中收到错误消息,告知您是否选择了不符合清仓要求的库存。

亚马逊会帮助我计算通过该计划进行清算的商品相关税费吗?

是的。要加入该计划,您需要注册亚马逊增值税计算服务。该服务可免费为您提供账单和增值税计算报告等功能。了解有关亚马逊增值税计算服务的更多信息。亚马逊不提供税务、法律或其他方面的专业建议。请咨询税务顾问,帮助您了解您的增值税义务。

来源:雨果网

文章来源:https://www.ikjzd.com/home/132716

aeo:https://www.ikjzd.com/w/2356

inkfrog:https://www.ikjzd.com/w/668

google correlate:https://www.ikjzd.com/w/1887

沃尔码:https://www.ikjzd.com/w/220

new old stock:https://www.ikjzd.com/w/2341

避免支付长期仓储费的亚马逊物流清仓计划,你受到邀约了吗?

亚马逊近日公告表示,卖家可以使用亚马逊物流清仓来恢复符合要求的可售和不可售库存的价值,并避免支付长期仓储费,避免弃置库存做填埋处理,或免除处置库存归还给卖家的麻烦。

爆料!传闻货代取消英国包税FBA服务?元旦后是封停高峰

英国脱欧即将到来之际,亚马逊欧洲站卖家圈风浪一波接一波……

近日,有关"货代已经开始取消英国包税FBA服务"的消息在卖家圈不胫而走。据卖家爆料称,其一直合作的货代已经通知开始取消英国包税FBA服务了,之后只能走不包税渠道,且物流运费直线上涨翻了3倍。究竟是怎么一回事呢?

爆料!传闻货代取消英国包税FBA服务?元旦后是封停高峰

(卖家截图)

货代或取消英国包税FBA服务?"短期内是可以做包税,元旦后将是封停高峰"

货代Dylan告诉,"随着2021年1月1日英国脱欧过渡期结束之后,销往英国市场的出口包裹将无法再采用包税FBA服务,要么通过不包税,要么采用空运快递渠道。不过,短期内其实还是能够做包税的。"他还进一步分析道,造成当前物流运价攀升的原因并非是受英国脱欧影响,一方面,由于苹果包机导致航班缺失,大量货物只能走海运快递掀起一阵涨价潮;另一方面,在于海外UPS派送全线涨价,因此纵观当前整体物流市场几乎所有渠道都在涨价。

多位货代证实了该消息真实性。"受英国脱欧的影响,亚马逊等跨境电商平台自11月起将停止英国的货物中转到其他欧盟仓库销售。届时,欧盟其他口岸进口货物派送至英国,将可能产生二次关税。"某货代说道。

另一货代也表示,英国脱欧已经进入实质性阶段,针对一般主要销售目的国为英国市场的卖家,应当选择直接发往英国的渠道,避免欧盟中转的渠道会因为英国脱欧产生二次清关或者退运的风险。可以预见的是,两个月后大部分包税渠道都将会暂停收货或者渠道变更清关,因此跨境卖家务必要提前做好必要准备。

了解到,受英国脱欧影响下,不只是货代圈开始传出取消英国包税FBA服务,在此之前,就曾有消息指出亚马逊FBA从明年1月起将不再提供英国与欧盟各国之间的跨境物流服务。其中,使用欧洲配送网络(EFN)的亚马逊物流商品将无法跨英国与欧盟边境配送。为了减轻这些变更带来的影响,建议卖家不妨考虑拆分库存,并分别运至英国和欧盟境内的亚马逊运营中心,进而确保在新海关边境两侧都有充足的库存。

不包税倒逼FBA卖家税务正规化运营,大批小卖家或面临洗牌出局

那么,货代开始取消英国包税FBA服务是否对卖家旺季物流产生较大影响,接下来有何应对措施呢?

Dylan认为,取消英国包税FBA服务对于跨境卖家店铺运营实则并非完全不利。"从资金方面来看,不包税虽然会导致物流成本压力倍增。但与此同时,大批小卖家在此过程中势必面临洗牌出局。基于过往经验来看,对于本就正规经营且有一定资金实力的大卖家其原本就是以不包税为主,且在当前跨境电商平台将直接代收代缴VAT政策下,卖家更不需要包税服务,因此影响甚微。"

据介绍,以往因欧洲FBA关务税务问题纠纷不绝于耳。比如,早在2018年就曾有大量电商货柜在英国港口被海关扣押,波及上百位涉事卖家。据悉,遭扣押的货柜,很有可能走的是"双清包税",使得部分为节省成本、少缴税而进行低价申报的卖家和货代铤而走险。在此基础上,若有一票货物出现问题,整个货柜的正常清关都将受直接影响。

某跨境卖家分析称,倘若英国包税FBA服务全面取消后,英国站点形式必将会倒逼所有FBA卖家税务正规化运营。原因有两点:

一是亚马逊将会在后台直接扣除VAT消费税,此时FBA卖家将无法使用低申报方式避税,促使卖家跨境电商经营越来越趋向于正规化。

二是卖家进口清关时正常申报并缴纳的VAT金额,后期可以与英国税务局抵扣并获取退税,因此就没必要研究如何低申报或者走双清的方式,双清实则更不划算。

"基于此,接下来跨境卖家务必将英国脱欧后的运营策略提上议程,制定好相应库存分配、物流计划、VAT申报、跨境运输报关等一系列工作。不难看出,英国脱欧引发的一系列'蝴蝶效应',势必将给欧洲跨境电商市场带来阵痛,而这对于中小卖家更是一场在利润和成本之间的博弈。积极拥抱国际市场变化,未雨绸缪,做好必要物流、运营准备,方能在欧洲跨境之路走得更长远。"该卖家如是说。

(文/ 陈林)

【特别声明】未经许可同意,任何个人或组织不得复制、转载、或以其他方式使用本网站内容。转载请联系:editor@cifnews.com

原文转载:http://fashion.shaoqun.com/a/287337.html

usps国际快递查询:https://www.ikjzd.com/w/513

新单:https://www.ikjzd.com/w/79

prime:https://www.ikjzd.com/w/129


英国脱欧即将到来之际,亚马逊欧洲站卖家圈风浪一波接一波…… 近日,有关"货代已经开始取消英国包税FBA服务"的消息在卖家圈不胫而走。据卖家爆料称,其一直合作的货代已经通知开始取消英国包税FBA服务了,之后只能走不包税渠道,且物流运费直线上涨翻了3倍。究竟是怎么一回事呢? (卖家截图) 货代或取消英国包税FBA服务?"短期内是可以做包税,元旦后将是封停高峰" 货代Dylan告诉,"随着2021年1
数魔跨境:https://www.ikjzd.com/w/1425.html
新蛋:https://www.ikjzd.com/w/79
十一碧水庄园免门票:http://tour.shaoqun.com/a/69515.html
双廊旅游交通出行指南:http://tour.shaoqun.com/a/27614.html
自助游住宿要注意什么?:http://tour.shaoqun.com/a/3681.html

无缝衔接?《九尾狐传》拍完就投入新电影,李栋旭将合作林秀晶_single

原标题:无缝衔接?《九尾狐传》拍完就投入新电影,李栋旭将合作林秀晶

《九尾狐传》的评分一降再降,看上去就有高开低走的样子。

虽然这部剧在内容创作上好似一锅乱炖,引来各方吐槽,但好在并未因此影响演员本身。一边吐槽剧情人设,一边赞叹李栋旭神颜的粉丝,依旧不在少数。

李栋旭的资源也是一如既往地在开挂,《九尾狐传》还未完结,就已经传出了接拍新电影的消息,而且还是无缝衔接。

据悉,《九尾狐传》的拍摄会在11月的3号完成,而新电影《single in Seoul》则会在11月12号开拍,中间只隔了8天。不过《九尾狐传》现在刚刚播出过半,真正的拍完日期应该会比3号靠后一点。

那李栋旭这次就真的是要无休进组,还是蛮辛苦的,希望这次的电影是个好饼吧。

《single in Seoul》这部电影,讲述的是两个相克的男女分享过去伤痛的故事,看简介会走抒情唯美的风格。李栋旭也将搭档林秀晶,不管是气质还是颜值,都很搭。

两人之前在林秀晶主演的《请输入搜索词:WWW》中有过合作,李栋旭客串了林秀晶的前男友。当时就有粉丝希望二人能好好合作一部作品,如今合拍爱情电影,简直就是再续前缘的节奏,看来李栋旭的荧幕cp又要增加一位了。

这部电影对两位演员来说,也都意义非凡。

李栋旭一直以来都在专注电视剧,电影的话就只是短暂露面,这次作为主演出现自然备受期待。而林秀晶其实也有两年没有拍过电影,这次回归大荧幕对她来说也很有纪念意义。两位神颜的对决,更是让人无比期待。

你们会想要看这部电影吗?返回搜狐,查看更多

责任编辑:

原文转载:http://yl.shaoqun.com/a/201526.html

邓白氏集团:https://www.ikjzd.com/w/582

google趋势:https://www.ikjzd.com/w/397

薇美铺:https://www.ikjzd.com/w/2312


原标题:无缝衔接?《九尾狐传》拍完就投入新电影,李栋旭将合作林秀晶《九尾狐传》的评分一降再降,看上去就有高开低走的样子。虽然这部剧在内容创作上好似一锅乱炖,引来各方吐槽,但好在并未因此影响演员本身。一边吐槽剧情人设,一边赞叹李栋旭神颜的粉丝,依旧不在少数。李栋旭的资源也是一如既往地在开挂,《九尾狐传》还未完结,就已经传出了接拍新电影的消息,而且还是无缝衔接。据悉,《九尾狐传》的拍摄会在11月的3号
慧聪集团:https://www.ikjzd.com/w/1836
custommade:https://www.ikjzd.com/w/2514
卖家运输违禁品,Shopee更新违禁品分类标准!:https://www.ikjzd.com/home/104044
冬季黑河边防官兵上演兄弟情(组图):http://tour.shaoqun.com/a/21282.html
阿里收购网易考拉,跨境电商"一家独大"影响几何!:https://www.ikjzd.com/home/107013

Java面试中可能涉及到的通信协议类问题

HTTP
互联⽹通信协议HTTP协议,是⼀个⽆状态协议。这意味着,所有的状态都保存在服务器端。
HTTP协议⾥⾯,四个表示操作⽅式的动词:GET、POST、PUT、DELETE
它们分别对应四种基本操作,简单的说,GET就是获取资源,POST就是创建资源,PUT就是更新资源,DELETE就是删除资源。

HTTP1和HTTP2
Http1是⽂本传送,Http2是⼆进制传送
Http2⽀持多路复⽤,流ID是⼀个Http请求完成多个Http请求传输变成可能
Http2⽀持在客户端未经请求许可的情况下主动向客户端推送内容

常⻅的编程协议
TCP:传输控制协议,三次握⼿和四次分⼿
UDP:⽤户数据报协议,适⽤于⼀次只传输少量数据,稳定性要求不⾼
SPX:顺序包交换协议,保证数据传输的完整性,⼀般⽤于⼤型⽹络和局域⽹游戏环境(反恐精英和星际争霸)
NetBIOS:⽹络输⼊输出系统
TCP
三次握⼿:(ACK和SYN(ACK起应答作⽤,⽽SYN起同步作⽤)放在⼀ 个报⽂⾥来发送。)
客户端发送⼀个带有SYN(SYN-send)标志的报⽂到服务器(请求连接)
服务端收到这个报⽂后发回⼀个带有SYN(SYN-recived)和ACK标志的报⽂给客户端(可以连接,做好连接准备了?)
客户端⼜将带有ACK标志的报⽂再次发送给服务器(ok)

四次分⼿:(FIN报⽂通知时,它仅仅表示对⽅没有数据发送给你了;但未必你所有的数据都全部发送给对⽅了,所以ACK报⽂和FIN报⽂多数情况下都是分开发送的。)
客户端发送⼀个Fin标志给服务器;
服务器收到返回⼀个带有ACK标志的报⽂,并确认序号为收到序号 +1;
服务器关闭客户端的连接,并返回Fin给客户端;
客户端返回ACK确认,并将确认序号设置为收到序号+1;
标志
Closed:初始状态
Listen:服务器的 某个Socket处于监听状态,表示可以连接
SYN-received:服务器收到报⽂
SYN-sent:客户端发送报⽂
ESTABLISHED:建⽴连接
FIN_WAIT_1:准备主动关闭连接
FIN_WAIT_2:主动关闭连接(但是表示还有点数据要传给你,等下关闭)
TIME_WAIT: 表示收到了对⽅的FIN报⽂,并发送出了ACK报⽂,就等2MSL后即可回到CLOSED
可⽤状态了。(因为假象⽹络并不可靠,你⽆法保证你最后发送的ACK报⽂会⼀定被对⽅收到,
所以TIME_WAIT状态的作⽤就是⽤来重发可能丢失的 ACK报⽂。)
CLOSING:双⽅都正在关闭Socket
CLOSE_WAIT:等待关闭
LAST_ACK: 被动关闭⼀⽅在发送FIN报⽂后,最后等待对⽅的ACK报⽂。当收到ACK报⽂后,也
即可以进⼊到CLOSED可⽤状态了。
两个应⽤程序同时执⾏主动打开的情况是可能的,虽然发⽣的可能性较低。但多数伯克利版的
tcp/ip实现并不⽀持同时打开。

3TCP(传输控制协议)和UDP(⽤户数据报协议)
这两种传输⽅式都是实际的⽹络编程中进⾏使⽤,重要的数据⼀般使⽤TCP⽅式进⾏数据传输,
⽽⼤量的⾮核⼼数据则都通过UDP⽅式进⾏传递.

TCP/IP
TCP/IP 意味着 TCP 和 IP 在⼀起协同⼯作。
TCP 负责应⽤软件(⽐如你的浏览器)和⽹络软件之间的通信。
IP 负责计算机之间的通信。
TCP 负责将数据分割并装⼊ IP 包,然后在它们到达的时候重新组合它们。
IP 负责将包发送⾄接受者。
Socket
Java中基于TCP协议实现⽹络通信的类

补充:ajax的原理就是HTTP协议的异步通信
补充:以太网基本的重要的知识——OSI参考模型https://www.cnblogs.com/qishui/p/5428938.html

原文转载:http://www.shaoqun.com/a/485809.html

华翰物流:https://www.ikjzd.com/w/1799

转运四方:https://www.ikjzd.com/w/1342

网上1号店:https://www.ikjzd.com/w/2263


HTTP互联⽹通信协议HTTP协议,是⼀个⽆状态协议。这意味着,所有的状态都保存在服务器端。HTTP协议⾥⾯,四个表示操作⽅式的动词:GET、POST、PUT、DELETE。它们分别对应四种基本操作,简单的说,GET就是获取资源,POST就是创建资源,PUT就是更新资源,DELETE就是删除资源。HTTP1和HTTP2Http1是⽂本传送,Http2是⼆进制传送Http2⽀持多路复⽤,流ID是⼀个
damai:https://www.ikjzd.com/w/1391
东西网:https://www.ikjzd.com/w/1238
East Ventures :https://www.ikjzd.com/w/2073
AMAZON的1699个引荐流量来源渠道(Jason,含成人用品网站,请注意识别):https://www.ikjzd.com/tl/2283
跨境一周:多平台曝光2020年招商计划:https://www.ikjzd.com/home/114341

C# 类的成员

C# 类的成员有: 常量, 字段, 属性, 索引, 方法, 事件, 构造函数, 析构函数, 运算符重载, 嵌套类

1.C# 类成员:构造函数、析构函数

构造函数分为: 实例构造器 和 类型构造器

 

2.C# 类成员:常量、字段

 

3. C# 类成员:属性、索引器

 

4. C# 类成员:方法、事件

 

5. C# 类成员:运算符重载

 

6. C# 类成员:嵌套类

 

 1 using System; 2  3 intelnal sealed class Test{ 4  5  //构造函数 6  public Test(){} 7  8  //析构函数 9  ~Test(){}10  11  //常量12  const int x = 123;13  14  //字段15  public string _aProp;16 17  //属性18  public string AProp{get; set;}19  20  //索引器21  public string this[int i]{22   get{ return null; }23   set{}24  }25  26  //方法27  public void AFunc(string arg){}28 29  //事件30  event EventHandel AnEvent;31 32  //操作符重载33  public static bool operator ==(Test t1, Test t2){34   return true;35  }36 37  //嵌套类38  class Nested{39   Nested() { }40  }41 }

 

原文转载:http://www.shaoqun.com/a/485800.html

easybuy:https://www.ikjzd.com/w/2162

万色:https://www.ikjzd.com/w/2382

etsy:https://www.ikjzd.com/w/169.html


C#类的成员有:常量,字段,属性,索引,方法,事件,构造函数,析构函数,运算符重载,嵌套类1.C#类成员:构造函数、析构函数构造函数分为:实例构造器和类型构造器2.C#类成员:常量、字段3.C#类成员:属性、索引器4.C#类成员:方法、事件5.C#类成员:运算符重载6.C#类成员:嵌套类1usingSystem;23intelnalsealedclassTest{45//构造函数6publicTe
勤商网:https://www.ikjzd.com/w/2219
二类电商:https://www.ikjzd.com/w/1457
你还在发自嗨式的开发信吗?:https://www.ikjzd.com/home/132126
亚马逊丛林水乐园需要带什么?三亚亚马逊丛林水乐园需要穿泳衣:http://tour.shaoqun.com/a/68436.html
狂砸250多亿!亚马逊造了一个让员工自愿加班到通宵的办公室!:https://www.ikjzd.com/home/90604

封店!刚刚,合并评论出事了……

封店!刚刚,合并评论出事了……

近日,有卖家表示信了服务商的国际评论共享,店铺死翘翘了!

QQ截图20201030113320.png

违规.jpg

(截图来自知无不言跨境电商论坛)

什么是合并国际评论(国际评论共享)?就是将这个站点的listing评论合并到另一个站点的listing上,以达到快速增长review数量、提高评分的效果。而这些listing哪里来?一般都会选择"僵尸listing"。

对于很多老卖家来说,"僵尸listing"评论合并也不是什么稀奇的操作,无非就是钻了评论共享功能的"空子"。但对于小白卖家或者刚入行的卖家来说,却格外的诱人,一天时间内就可以迅速获得几百条评论,评分马上登高,不用刷单不用投广告,一切貌似得来全不费功夫....

亚马逊很早就开启了相同asin评论共享功能,原本的初衷是希望整合15个站点的评论力量为买家挑选出更加优质的产品。

政策刚出的时候,服务商可谓是狠狠的薅了一次韭菜,原本并不是多么高端的操作变成了"黑科技",以高价服务卖给了很多卖家。

近日,因开店热潮再次来袭,这些服务商又卷土重来了...

这回换了个高大上的"名头"——"合并国际评论",又开始了...!



这些服务商打着低价获得优质评论、快速提高评分、安全性极高等幌子,让一个又一个卖家踩进了坑。

服务商是怎么操作国际评论共享的?找到一个其他站点的僵尸listing,然后改品牌开case,最后进行合并。究竟什么是"僵尸listing"?

简单来说,就是亚马逊上有新的卖家进入,也有老的卖家退出。老卖家退出亚马逊平台后,遗留下来的listing就成了"僵尸listing"。虽然这些产品不可售了,但是review会保留下来。

有心的卖家就会通过软件或者一些小技巧找到这些"僵尸listing",通过挂变体的方式合并到自己的listing上,从而增加review的数量。

那么合并僵尸listing安全吗?

我们先来看看大多数卖家的看法↓↓↓

卖家A:合并僵尸评论,被亚马逊严打,一次申述机会都没有,这些服务商吃人血馒头没什么下限的。

卖家B:胆子真大,现在一大批人举报合并僵尸的链接,基本举报一个查一个!卖家C:基本回不来了,申诉也基本回不来。别问我怎么知道,都是血和泪的教训!

很显然!这个方法是极!不!安!全!的!(如果僵尸listing是自己的,当然就没太大问题)

亚马逊对于合并僵尸listing的态度一直都是打压,这一操作是亚马逊严令禁止的违规行为。

轻则限制上评,重则封号,望各位卖家谨慎。

在此,老卖家奉劝各位:想要长久稳稳当当的做好亚马逊,那就不要被服务商左一套右一套的黑科技给吸引割韭菜。选好产品,把控产品质量,稳稳当当的S点单,细水长流不更好吗...


文章来源:https://www.ikjzd.com/home/132693

万国邮政联盟:https://www.ikjzd.com/w/861

跨国采购网:https://www.ikjzd.com/w/2270.html

易佰:https://www.ikjzd.com/w/1482

acedota:https://www.ikjzd.com/w/2070

刘小东:https://www.ikjzd.com/w/1853

封店!刚刚,合并评论出事了……

近日,有卖家表示信了服务商的"国际评论共享"业务,店铺死翘翘了!

mybatis 框架学习笔记

目录
  • 自定义持久层框架
    • jdbc 代码基础回顾
      • 解决传统jdbc存在的问题
    • 自定义持久层框架设计思路
      • 使用端 --> 项目
    • 自定义持久层框架本身
    • mybatis 简介
      • sqlMapConfig.
      • 传统dao层开发方式
      • dao层开发方式
      • mybatis 外部properties 文件
      • mybatis aliasType
      • mapper.
      • 动态sql
    • mybatis复杂映射开发
      • 一对一查询
      • 一对多查询
      • 多对多查询
  • mybatis 注解开发
    • 注解一对多
    • 注解多对多
    • mybatis 缓存
      • 一级缓存
      • 一级缓存分析
      • 二级缓存
    • redis-cache 分析
    • mybatis的插件
      • 以上组件的创建原理
      • 自定义mybatis 插件
      • mybatis的第三方插件
    • mybatis架构原理
      • mybatis传统方式源码分析
      • Mapper代理方式
      • 设计模式
      • mybatis 执行流程图解
    • mybatis延迟加载
    • mybatis 动态sql相关类
      • 常用的数据库连接池
      • mybatis 查询数据量大的时候会造成oom 如何处理

2020年8月25日20:55:29

自定义持久层框架

  • 持久层框架 是对jdbc 的封装, 并解决了jdbc存在的问题
jdbc 代码基础回顾
try{ Class.formName("com.mysql.jdbc.Driver"); connection = .....}cache(Exception e){ }
  • 传统jdbc 存在 数据库配置信息存在硬编码问题 当更换数据库后需要再次对数据库驱动信息进行更改
  • 频繁创建释放数据库连接
  • sql语句 设置参数 获取结果集等参数均存在硬编码问题
  • 手动封装结果集 较为繁琐
解决传统jdbc存在的问题
  • 硬编码 --> 配置文件
  • 硬编码 --> 连接池
  • 手动封装结果集 --> 反射 内省
自定义持久层框架设计思路
使用端 --> 项目
  • 引入自定义持久层jar
  • 提供数据库配置信息及sql配置信息
    • sql配置信息
      • sql语句
      • 参数类型
      • 返回值类型
  • 使用配置文件提供外上述两种配置信息
  • sqlMapConfig.存入mapper.
  • mapper.
自定义持久层框架本身
  • 创建为项目工程,本质是对jdbc代码进行封装-->底层为传统的jdbc

    • 数据库配置信息
    • sql 配置信息 占位符 参数 sql语句等
    • 根据调用处传递的配置信息进行解析
      • 加载配置文件 --> 以字节输入流的形式加载 --> 存储在内存中
      • 创建Resource类,getResourceAsStream(String path)
      • 创建2个javaBean(容器对象),存放的是对配置文件解析出的内容
        • Configuration:核心配置类: 存放sqlMapperConfig.
        • MappedStrement:映射配置类:存放mapper.
      • 解析配置文件:Dom4j
        • 创建类:SqlSessionFactoryBuilder,存在方法:build(InputStream in)
        • build方法实现逻辑:
          • 使用dom4j解析配置文件,将解析结果封装到容器对象内
          • 创建sqlSessionFactory对象,生产sqlSession(会话对象),避免重复创建连接 --> 工厂模式 降低耦合
      • 创建sqlSessionFactory接口及实现类DefaultSqlSessionFactory
        • openSession方法 : 创建 sqlSession对象
      • 创建SqlSession 接口及实现类DefaultSqlSession 定义对数据库的CRUD方法
        • selectList()
        • selectOne()
        • update()
        • delete()
      • 创建Excutor接口及实现类 SimpleExcutor 实现类
        • query(Configuration conf,MappedStatement mapped,Object ...params):执行JDBC代码

    graph TBb("工程项目")subgraph 工程项目d("mapper.

mybatis 简介

  • 持久层框架

  • 基于orm:Object Relation Mapping 实体类和数据库表建立映射关联关系

  • 半自动 可以对sql进行优化 hibernate -> 全自动

  • 轻量级:启动的过程中需要的资源比较少

  • 底层: 对jdbc执行代码 进行封装 规避硬编码,频繁开闭数据源

  • environment - dataSource.type="POOLED" 指定数据源类型为连接池
  • environment - dataSource
    • property.driver 数据库驱动
    • property.url 数据库地址 注意连接编码格式
    • property.user 数据库连接用户名
    • property.password 数据库连接用密码
  • mapper 配置的四种方式:
    • mapper.resource 相对于类路径的引用
    • mapper.url 完全限定资源定位符
    • mapper.class 接口对应的全路径
    • package.name 批量加载 保证映射文件与接口同包同名

  • 传统dao层开发方式
    dao层开发方式
    mybatis 外部properties 文件
    • 设置mybatis
    • 在resources下创建外部配置文件 格式:对象.属性=值
    • 加载外部配置文件
      • 在 configutation 后第一个节点之前 引入外部配置文件 <properties resource='路径'/>
    mybatis aliasType
    • 在mybatis 配置文件中的typeAliases 节点中设置
      <typeAliases> <typeAlias type="pojo类路径的全限定名" alais="别名"></typeAlias></typeAliases>// 对于基础数据类型 mybatis 已定义了别名string ==> Stringlong ==> Longint ==> Integerdouble ==> Doubleboolean ==> Boolean
    • 当存在多个pojo时不适用以上方法,采用package模式[批量起别名]
      • package模式 不要单独指定alias属性 默认为类本身的类名,且不区分大小写
      <typeAliases> <package name="pojo类所在包的全限定名"></typeAlias> // 不要单独指定alias属性 默认为类本身的类名,且不区分大小写</typeAliases>
    动态sql
    • if 标签 判断入参是否符合条件, 不符合不拼接
    • where 标签 自动拼接where 同时去掉where后的第一个and 关键字
    • foreach 标签
      • collection array 注意便携式不要使用#{}
      • open 循环前追加
      • close 循环结束后追加
      • item 单次循环内的数据对象 生成的变量
      • separator 前后循环数据之间的分隔符
    • sql 标签 抽取sql片段
      • id sql语句的标识
      • 内容为具体的sql语句 可用于封装 分页 和 查询某张表时的前面部分
    mybatis复杂映射开发

    sqlMapConfig.

    <package name="与接口同包同名的包名"><package>
    一对一查询
    • resultMap 手动配置实体属性与表字段的映射关系 可用于mybatis 的resultMMap
      • id
      • type 按照封装对象的全路径
      <resultMap id="orderMap" type="com.lagou.pojo.Order"> <result property="id" column="id"></result> <result property="orderTime" column="orderTime"></result> <result property="total" column="total"></result> <association property="user" javaType="com.lagou.pojo.User">  <result property="id" column="uid"></result>  <result property="username" column="username"></result> </association></resultMap><!--resultMap:手动来配置实体属性与表字段的映射关系--><select id="findOrderAndUser" resultMap="orderMap"> select * from orders o,user u where o.uid = u.id</select>
    一对多查询
     <resultMap id="userMap" type="com.lagou.pojo.User">  <result property="id" column="uid"></result>  <result property="username" column="username"></result>  <collection property="orderList" ofType="com.lagou.pojo.Order">   <result property="id" column="id"></result>   <result property="orderTime" column="orderTime"></result>   <result property="total" column="total"></result>  </collection> </resultMap> <select id="findAll" resultMap="userMap">  select * from user u left join orders o on u.id = o.uid </select>
    多对多查询
    • 查询用户的同时查询出用户的角色
     <resultMap id="userRoleMap" type="com.lagou.pojo.User">  <result property="id" column="userid"></result>  <result property="username" column="username"></result>  <collection property="roleList" ofType="com.lagou.pojo.Role">   <result property="id" column="roleid"></result>   <result property="roleName" column="roleName"></result>   <result property="roleDesc" column="roleDesc"></result>  </collection> </resultMap> <select id="findAllUserAndRole" resultMap="userRoleMap">  select * from user u left join sys_user_role ur on u.id = ur.userid 		left join sys_role r on r.id = ur.roleid </select>

    mybatis 注解开发

    使用注解开发 无需编写任何配置文件

    • @Insert 增
    • @Update 删
    • @Delete 改
    • @Select 查
    • @Result 实现对结果集的封装 替代result标签节点
    • @Results 替代resultMap 标签节点
    • @One 替代单个pojo对象 替代 association 标签节点
    • @Many 如果属性为集合时 则采用 此注解
    注解一对多
    @Results({ @Result(property = "id",column = "id"), @Result(property = "orderTime",column = "orderTime"), @Result(property = "total",column = "total"), @Result(property = "user",column = "uid",javaType = User.class,  one=@One(select = "com.lagou.mapper.IUserMapper.findUserById"))})@Select("select * from orders")public List<Order> findOrderAndUser();
    注解多对多
    # IUserMapper //查询所有用户、同时查询每个用户关联的角色信息 @Select("select * from user") @Results({   @Result(property = "id",column = "id"),   @Result(property = "username",column = "username"),   @Result(property = "roleList",column = "id",javaType = List.class,    many = @Many(select = "com.lagou.mapper.IRoleMapper.findRoleByUid")) }) public List<User> findAllUserAndRole();# IRoleMapper @Select("select * from sys_role r,sys_user_role ur where r.id = ur.roleid and ur.userid = #{uid}") public List<Role> findRoleByUid(Integer uid);
    mybatis 缓存
    一级缓存

    使用同一个sqlSession 对象时,数据会被缓存
    mybatis 一级缓存过程图解

    1. 第一次发起查询用户id为1的用户信息,先去找缓存中是否有id为1的用户信息,如果没有,从
      数据库查询用户信息。得到用户信息,将用户信息存储到一级缓存中。
    2. 如果中间sqlSession去执行commit操作(执行插入、更新、删除),则会清空SqlSession中的
      一级缓存,这样做的目的为了让缓存中存储的是最新的信息,避免脏读。
    3. 第二次发起查询用户id为1的用户信息,先去找缓存中是否有id为1的用户信息,缓存中有,直
      接从缓存中获取用户信息
    一级缓存分析

    一级缓存分析 流程图

    • 一级缓存到底是什么
      底层是一个hashMap 参照上述流程图
    • 一级缓存什么时候被创建
      缓存key创建类: Excustor.class.createCacheKey()BaseExcutor.createCacheKey() //创建一级缓存的keyCacheKey.update() - updateList.add(configuration.getEnviroment().getId());
    • 一级缓存的工作流程是怎样的
    • 一级缓存的清空 sqlSession.close() 或者执行带有事务的操作
    • 在分布式环境下也会存在脏读问题 解决:禁用一级缓存或调整缓存为statement 级别
    二级缓存
    • 原理 类似 一级缓存
    • 操作的sqlSession 执行了事务操作后 会清空二级缓存
    • 一级缓存 默认开启
    • 二级缓存需要手动配置开启
      1. 
    • 二级缓存 缓存的不是对象 而是对象中的数据
      • pojo类需要实现 Serializable 接口
      • 二级缓存的存储机制是多样的,可能存储在硬盘上 或者内存中
    • 当执行带有事务的操作后,二级缓存会被清空
    • 当基于
    • useCache 属性 false 禁用二级缓存 每次查询都发送sql去数据库查询 默认为true
    • 注解形式:@select 注解之前添加 @Options(cache="false")
    • flushCache 属性: 每次增删改操作后 清空缓存 默认true

    二级缓存整合redis

    mybatis二级缓存结构示意图

    • PerpetualCache 是mybatis默认实现缓存功能的类
    • 二级缓存的底层数据结构 还是 HashMap org.apache.ibatis.cache.impl.PerpetualCache --> private Map<Object, Object> cache = new HashMap()
    • 指定mybatis二级缓存的实现类
      在dao接口上添加注解 @CacheNamespace(implementation=PerpetualCache.class) PerpetualCache.class 更换为自定义缓存实现类如 : @CacheNamespace(implementation = RedisCache.class)
    • 二级缓存 存在的问题
      • 单服务器下 --> 没问题
      • 分布式 --> 无法实现分布式缓存
    • 分布式缓存技术
      • redis 官方提供有mybatis-redis实现类
      <dependency> <groupId>org.mybatis.caches</groupId> <artifactId>mybatis-redis</artifactId> <version>1.0.0-beta2</version></dependency>配置配置文件 : redis.properties配置以下属性: host=localhost port=6379 connectionTimeout=5000 password=123456 database=0
      • memcached
      • ehcache
    • 二级缓存存在的脏读问题分析
      二级缓存namespace级别产生脏读问题分析
    redis-cache 分析
    • redis-cache 是如何存取值的
      1. 必须实现mybatis 的cache 接口2. 使用 jedis.hget 进行取值
    • redis-cache 使用的是哪种redis 数据结构
      • redis 的 hash 数据类型

    mybatis的插件

    • 一种形式的拓展点
      • 增加灵活性
      • 根据实际需求 自行拓展
    • mybatis 的四大组件 及允许拦截的方法
      • Executor 执行器
        • update
        • query
        • commit
        • rollback 等
      • StatementHandler sql语法构建器
        • prepare
        • parameterize
        • batch
        • update
        • query 等
      • ParameterHandler 参数处理器
        • getParameterObject
        • setParameterObject
      • ResultSetHandler 结果集处理器
        • handleResultSets
        • handleOutputParameters
    • 插件拦截器底层是对以上四个组件的拦截,采用动态代理实现
    以上组件的创建原理
    1. 每个创建出来的对象不是直接返回的,而是interceptorChain.pluginAll(parameterHandler)
    2. 获取到所有的Interceptor(拦截器)(插件需要实现的接口);调用interceptor.plugin(target);返回target包装后的对象
    3. 插件机制,我们可以使用插件为目标对象创建一个代理对象;AOP(面向切面)我们的插件可以为四大对象创建出代理对象,代理对象就可以拦截到四大对象的每一个执行;
    4. 由于使用了jdk动态代理,那么就回去执行 invoke 方法,可以在拦截器 的前置和后置处理器内做相应的处理操作
    @Intercepta({ @signature(  type=Executor.class,  method="query",  args=(MappedStatement.class,Object.class,RowBounds.class,ResultHandler.class} )})public class ExamplePlugin implements Interceptor{//省略逻辑}
    自定义mybatis 插件
    • 插件 --> 拦截器
    org.apache.ibatis.plugin.Interceptor 类# 拦截方法:只要被拦截的目标对象的目标方法被执行时,每次都会执行intercept方法Interceptor.intercept # 主要为了把当前的拦截器生成代理存到拦截器链中Interceptor.plugin# 获取配置文件的参数Interceptor.setProperties
    • 定义
    import org.apache.ibatis.executor.Executor;import org.apache.ibatis.executor.statement.StatementHandler;import org.apache.ibatis.plugin.*;import java.sql.Connection;import java.util.Properties;# 可以多个Signature @Intercepts({ @Signature(type= StatementHandler.class,method = "prepare",args = {Connection.class,Integer.class}), @Signature(type= Executor.class,method = "prepare",args = {Connection.class,Integer.class})})public class MyPlugin implements Interceptor { /*  拦截方法:只要被拦截的目标对象的目标方法被执行时,每次都会执行intercept方法  */ @Override public Object intercept(Invocation invocation) throws Throwable {  System.out.println("对方法:" + invocation.getMethod().getName() + " 进行了增强...." );  return invocation.proceed(); //原方法执行 } /*  主要为了把当前的拦截器生成代理存到拦截器链中  */ @Override public Object plugin(Object target) { Object wrap = Plugin.wrap(target, this); return wrap; } /*  获取配置文件的参数  */ @Override public void setProperties(Properties properties) { System.out.println("获取到的配置文件的参数是:"+properties); }}
    • 配置
    <plugins> <plugin interceptor="com.lagou.plugin.MyPlugin">  <property name="name" value="tom"/> <!-- 设置参数 --> </plugin></plugins>
    • 使用
    1. MyPlugin.plugin --> MyPlugin.intercept --> MyPlugin.setProperties 
    mybatis的第三方插件
    • PageHelper
      • 导入maven 依赖
      <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>3.7.5</version></dependency>
      • 在mybatis配置文件中配置PageHelper
      在 plugins 节点内 添加 plugin 并设置属性 `property` 方言 `dialect` 值设 `mysql`<plugin interceptor="com.github.pagehelper.PageHelper"> <property name="dialect" value="mysql"/></plugin>
    • 通用 mapper
      • 导入依赖
      <dependency> <groupId>tk.mybatis</groupId> <artifactId>mapper</artifactId> <version>3.1.2</version></dependency>
      • mybatis 的配置文件内配置 通用mapper 的plugin
      <plugin interceptor="tk.mybatis.mapper.mapperhelper.MapperInterceptor"> <!--指定当前通用mapper接口使用的是哪一个--> <property name="mappers" value="tk.mybatis.mapper.common.Mapper"/></plugin>
      • 实体类设置关联
      @Table(name = "user")public class User implements Serializable { @Id //对应的是注解id @GeneratedValue(strategy = GenerationType.IDENTITY)  // @GeneratedValue strategy 设置主键的生成策略 // GenerationType.IDENTITY 底层必须支持自增长 // GenerationType.SEQUENCY 底层不支持自增长 // GenerationType.TABLE 从表中取值 生成主键 // GenerationType.AUTO 自动选择合适的生成主键 private Integer id;  @Column(name="123") 当与表的字段不同时,采用@Column 保持同步 private String username; // Get Set 略}
      • 创建dao接口 继承tk.mybatis.mapper.common.Mapper传入泛型
      egg: public interface UserMapper extends Mapper<User> {}
      • 使用
        • 传统调用
        InputStream resourceAsStream = Resources.getResourceAsStream("sqlMapConfig.
        • Example 方式调用
        InputStream resourceAsStream = Resources.getResourceAsStream("sqlMapConfig.

    随堂测试01 自定义持久层框架

    1. 自定义持久层框架IPersistence是如何解决JDBC存在的问题:() [多选题]

      • [x] A. 用配置文件解决了硬编码问题
      • [x] B.使用了C3P0连接池解决了频繁创建释放数据库连接问题
      • [x] C.在simpleExecute中使用到了反射进行了参数的设置
      • [x] D.在simpleExecute中使用了内省进行了返回结果集的封装
    2. 在进行自定义持久层框架IPersistence优化时,主要为了解决那些问题:() [多选题]

      • [x] A.应用在Dao层,整个操作的模板代码重复
      • [x] B.调用sqlSession方法时、参数statementId硬编码
      • [ ] C.无法保证statementId的唯一性
      • [ ] D.参数存在硬编码
    3. 下列关于Configuration及MappedStatement配置类,说法正确的是:() [多选题]

      • [x] A.使用dom4j对sqlMapConfig.
      • [ ] B.使用dom4j对mapper.标签的内容均对应一个MappedStatement对象[x] C.Configuration中包含了MappedStatement的引用[ ] D.MappedStatement对象对应Mapper.

    原文转载:http://www.shaoqun.com/a/485790.html

    新蛋:https://www.ikjzd.com/w/79

    三维度:https://www.ikjzd.com/w/1312

    cima:https://www.ikjzd.com/w/1372


    目录自定义持久层框架jdbc代码基础回顾解决传统jdbc存在的问题自定义持久层框架设计思路使用端-->项目自定义持久层框架本身mybatis简介sqlMapConfig.传统dao层开发方式dao层开发方式mybatis外部properties文件mybatisaliasTypemapper.动态sqlmybatis复杂映射开发一对一查询一对多查询多对多查询mybatis注解开发注解一对多注
    乐一番:https://www.ikjzd.com/w/1562
    c88是什么:https://www.ikjzd.com/w/1017
    2020五一宁波奇异国门票多少钱?五一宁波奇e国门票价格?:http://tour.shaoqun.com/a/47141.html
    Wish API更新:编辑SKU相关信息等:https://www.ikjzd.com/home/118633
    2020香港五一天气怎么样?穿什么衣服好?:http://tour.shaoqun.com/a/45293.html

    跨境电商资讯:外贸宣传平台有哪些(出口的

    现在很多做外贸的人都非常关注 外贸企业怎么推广 ,而现在推广的途径和平台有很多,企业如果都做,成本和时间精力是一个问题,而且并不是所有的推广渠道都是有用的。今天云程网络就来为大家盘点几个有效的外贸推广渠道。 一、海外社交媒体营销 Facebook,领英等海外社交媒体营销在近几年得...