- [学习笔记]TypeScript学习笔记
无知的圆
TypeScript前端笔记typescript前端
文章目录1前期准备工作1.1TypeScript的简介1.2TypeScript与JavaScript的关系1.3TypeScript的优点1.4TypeScript开发环境搭建2基本类型2.1类型声明2.2基本类型种类3编译选项3.1自动编译文件3.2自动编译整个项目4用webpack配置TS5Babel6面向对象6.1前言6.2类(class)6.3面向对象的特点6.4接口6.5泛型(Gene
- nodejs + webpack4 + babel6 结合写Chrome浏览器插件记录
Jim_bba8
最近任务不忙,有时间了看一下Chrome插件相关的东西,于是想用nodejs+webpack写一个能直出插件的小工具。1.nodejs+babel6+webpack4在写之前,是有把它写成依赖包之类的工具的,但是现在处于编码调试阶段,各个部分还没有进行封装,只是实现了相关的功能,后续会实现预计的构想。1.nodejs部分nodejs部分主要实现了对manifest.json文件的解析和输出功能,对
- .babelrc
种一个月亮 ୧
jsjavascriptnode.jshtml5
babel是一种js语法编译器,在前端开发过程中,由于浏览器的版本和兼容性问题,很多js的新方法和特性的使用都受到了限制。使用babel可以将代码中js代码编译成兼容绝大多数主流浏览器的代码。babel6.X版本之后,所有的插件都是可插拔的,也就是说只安装babel依然无法正常的工作,我们需要配置对应的.babelrc文件才能起作用。.babelrc文件需要的配置项主要有预设(presets)和插
- babel6使用ES2020最新js语法
前端蜗牛君
webpackjavascriptbabeles2020
babel6使用ES2020最新js语法Babel6原本是不支持ES2020语法,因为它是在Babel7中引入的。如果您想使用ES2020语法,您需要将Babel6升级到Babel7或更高版本(推荐),当然也可以在bebel6中安装支持某个语法的plugin,比如你想使用ES2020中的可选链操作符,就要配置使用@babel/plugin-proposal-optional-chaining。ES
- 从头搭建react + webpack + typescript
xiao_ci1988
react.jswebpackjavascript
从头搭建react+webpack+typescript1.创建项目,安装依赖在项目根目录下执行//生成package.json文件npminit-ynpmireactreact-domreact@types/react@types/react-dom安装babel如果你用过babel6,可能要问,怎么不是npmibabel-core-D?@符号又是什么?这是babel7的一大调整,原来的babe
- es6—>es5 babel
veb001
indexes6—>es5babel__veblen前端构建工具,内置解析es6语法,核心在于babel!1、首先安装babel-cli(用于在终端使用babel)npminstall-gbabel-cli2、然后安装babel-preset-es2015插件npminstall--savebabel-preset-es2015注:Babel5版本默认包含各种转换插件,然而Babel6.x相关转换
- Babel 6 升级到 Babel 7
SANGET
Babel6到Babel7Babel是个从开发环境到生产环境的中间环境,提供大而全的插件和预设配置,由开源社区维护,可以配合各种构建工具,例如webpackparcelgulpgrunt之类的,让前端不局限于前端。如果还没开始使用那要赶紧尝试。Babel6的配置比较简单,这里不多说了,主要是讲升级到Babel7需要注意的细节Babel7库的作用域(scope)Babel7用了npm的private
- 2020-09-25 记vue-cli2的老项目添加jest踩坑
拉之旅与飞鸟
报错Modulebuildfailed(from./node_modules/babel-loader/lib/index.js):Error:Plugin/Presetfilesarenotallowedtoexportobjects,onlyfunctions.原因jest24支持babel6,但是vue-cli2使用的是babel6。babel-jest版本改成23。
- 由修改路由懒加载引起的
Dannn_Y
layout:posttitle:由修改路由懒加载引起的tags:-Vue-笔记项目背景项目环境:vuecli2vue2.xbabel6webpack3项目是很早之前搭建的了,页面和体积越来越多,影响页面加载速度,这次准备做个全面的路由懒加载优化。路由懒加载可以将项目中路由对应的组件分割成不同的代码块,然后当路由被访问的时候才加载对应的组件,提高页面的访问速度。主要用到了Vue异步组件,和webp
- BabelJS 教程_编程入门自学教程_菜鸟教程-免费教程分享
菜鸟一记
笔记
教程简介Babel是一个JavaScript编译器,允许开发人员使用最前沿的JavaScript编写代码,然后Babel将其转换为老式的JavaScript,让更多的浏览器能够理解。BabelJS入门教程-从基本到高级概念的简单步骤了解BabelJS,其中包括概述,环境设置,CLI,ES6代码执行,使用Babel6,Babel7,TranspileES6功能到ES5,ES6模块的项目设置ES5,E
- Babel 7 项目升级实战
白色鹈鹕鸟
前言Babel可以说是目前前端工程中必备的一款工具链(除非你还在用ES6以前的语法),主要用于在旧的浏览器或环境中将ECMAScript2015+代码转换为向后兼容版本的JavaScript代码。Babel7已于2018年8月份正式发布,其中更新了很多的用法和内容,使得几乎要重新安装NPM包和配置Babel文件。这篇文章详细的介绍了如何从Babel6以前的版本升级成Babel7,项目以React项
- babel-node: command not found
前端开发_Eric
image.png查阅babel官方文档如下:@babel/nodeThebabel-nodecommandinBabel6waspartofthebabel-clipackage.InBabel7,thiscommandhasbeensplitoutintoitsown@babel/nodepackage,soifyouareusingthatcommand,you'llwanttoaddthi
- babel6升babel7 出现Object.isSpreadProperty信息问题
fyAgent
将babel6升级至babel7后编译js(ts/tsx)出现Object.isSpreadProperty信息如下图image出现原因:babel-plugin-transform-object-rest-spread依赖版本仍然是6.23.6造成的解决方案:"babel-plugin-transform-object-rest-spread":"^7.0.0",安装7.0.0以上版本依赖
- Babel安装
java能飞翔
nodejsbabel
babel用途将es6代码转为es5代码,使得编写方便且系统兼容性好安装babel使用下列命令npminstall--globalbabel-cli遇到过的问题遇到了安装失败的情况,如下以及这种情况:Youhavemistakenlyinstalledthe`babel`package,whichisano-opinBabel6.Babel'sCLIcommandshavebeenmovedfro
- Using ES6 and ES7 in the Browser, with Babel 6 and Webpack
CenturyGuo
原文出处这篇教程是使用Babel6用ES6全攻略系列的一部分,如果你对升级到Babel6有问题的话,可以先看看这篇文章。BabelCLI是一个非常好的单文件的ES6到ES5的解释器。当Babel遇到import语句,就会输出require,但是在浏览器端,并不会让你感觉到有很大的区别。为了让Babel对浏览器更加的友好,我们必须要对这些文件打包。我最新换的工具是Webpack,我们发现我们能够通过
- 记项目升级详细记录——vue项目升级到webpack4、babel7版本
大十小九
项目升级目标:原版项目:vue2+webpack3+babel6升级项目:vue2+webpack4+babel7最近需要将vue项目升级,以获得更好的构建性能和开发便利,由于网上没有一个可以参考的实用用性文章,故此将升级项目过程记录并分享给各位,希望对各位有用。也欢迎关注本人的公众号:==前端学海==根据多次尝试总结出的经验,先升级与webpack无关的组件,然后再升级webpack,注意web
- jest学习笔记
榴莲牛奶_King
1.安装1.1最新版本的jest安装需要babel7.Xnpminstallbabel-jestjest--save-dev1.2babel6.X的可安装以下版本或者升级
[email protected]@23.6.0--save-dev1.3jest不支持import语法要安装npminstallbabel-plugin-transform-es2015-m
- Babel6的学习新姿势
小兀666
前言在学习ES7的时候肯定会使用到Babel,然后就我就找了一些demo来看人家是如何配置Babel的,于是乎,各种参数就会莫名其妙的在那里,于是乎,一大堆问题就会在我脑海中出现:Babel为什么有两种截然不同的配置方法?(也就是Babel5vsBabel6)为什么安装包会使用babel-register而不需要babel-core?为什么要使用babel-polyfill?为什么preset中设
- 使用Babel 处理浏览器对ES6的兼容性问题
芝芝麻麻开花花
在编程中如果使用了ES6的新特性,浏览器若没有更新版本,或者新版本中没有对ES6的特性进行兼容,那么浏览器肯定无法识别我们的ES6代码,就会报错,这就是浏览器对ES6的兼容性问题。在网上找到了一篇如何使用Babel处理浏览器对ES6的兼容性问题,收入笔记。Babel也可以用于浏览器环境。但是,从Babel6.0开始,不再直接提供浏览器版本,而是要用构建工具构建出来。如果你没有或不想使用构建工具1.
- 重新认识caniuse
石坚
困惑相信大家都曾用caniuse网站查询过css、js的一些兼容性问题,并且都从它反馈的兼容性数据中获益,让我们的线上项目更加稳定、和谐的跑在用户电脑里。不过对于caniuse页面上的一些细节,我们可能会感到困惑或者模棱两可,今天就带着大家一起来重新认识caniuse这个网站,并对它的原理和细节做些探究。1.1从babel-preset-env说起babel-preset-env是babel6中极
- 一文搞懂Babel配置
传播正能量
javascript前端
最近在做一次Babel6升级Babel7的操作,把升级的过程和关于babel的配置进行一次总结。1为什么讲Babel配置Babel是一个工具链,主要用于将ECMAScript2015+版本的代码转换为向后兼容的JavaScript语法,以便能够运行在当前和旧版本的浏览器或其他环境中。其实目前前端开发,各种项目模版,你也不需要关心babel的配置,随便拉下来一个就能运行,但是要做定制化的处理还是要把
- 一文搞懂Babel配置
传播正能量
javascript前端
最近在做一次Babel6升级Babel7的操作,把升级的过程和关于babel的配置进行一次总结。1为什么讲Babel配置Babel是一个工具链,主要用于将ECMAScript2015+版本的代码转换为向后兼容的JavaScript语法,以便能够运行在当前和旧版本的浏览器或其他环境中。其实目前前端开发,各种项目模版,你也不需要关心babel的配置,随便拉下来一个就能运行,但是要做定制化的处理还是要把
- Error: Plugin/Preset files are not allowed to export objects, only functions
hello_yqq
软件安装及ERROR
- 使用 webpack 4 和 Babel 7 配置 Vue.js 工程模板
weixin_34112900
webpackjavascript开发工具
团队最近开始一个新项目,技术栈采用Vue.js2框架。由于是一个较复杂的大型单页应用,决定使用官方推荐的webpack工程作为应用工程脚手架。该工程模板中使用了webpack3和babel6,由于webpack4已发布,Babel7也出来挺长一段时间了,所以想对工程模板进行升级改造,以尝试工程化开发工具的最新特性。2018/12/21更新最近已升级到Babel7GA版本,详情请看github项目v
- babel安装问题,Cannot find module '@babel/core' babel-loader@8 requires Babel 7.x (the package '@babel/c...
weixin_30349597
运维
Cannotfindmodule'@babel/core'
[email protected](thepackage'@babel/core').Ifyou'dliketouseBabel6.x('babel-core'),youshouldinstall'babel-loader@7'.oushouldinstall'babel-loader@7'.原因是:babel-l
- vue项目中使用JSX
马优晨
vuevue项目中使用JSXvue中使用JSXvue2中使用JSXvue使用JSXJSX如何在vue中使用
这里主要是使用:babel-plugin-transform-vue-jsxgithub地址:https://github.com/vuejs/babel-plugin-transform-vue-jsx目前状态:(1)针对于vue2.0的项目(2)Babel6,Babel7都可以使用使用方式(1)安装:npminstallbabel-plugin-syntax-jsxbabel-plugin-t
- .babelrc文件的一些简单的配置
zhanglongdream
前端自动化
首先现在根目录先生存.babelrc文件这个文件是用来设置转码的规则和插件的如果想使用es6语法,必须安装插件npminstallbabel-preset-es2015{"presets":["es2015"]}什么是.babelrc文件呢?熟悉linux的同学一定知道,rc结尾的文件通常代表运行时自动加载的文件,配置等等,类似bashrc,zshrc而且在babel6中,这个文件必不可少。里面可
- 重新认识caniuse
weixin_33719619
困惑相信大家都曾用caniuse网站查询过css、js的一些兼容性问题,并且都从它反馈的兼容性数据中获益,让我们的线上项目更加稳定、和谐的跑在用户电脑里。不过对于caniuse页面上的一些细节,我们可能会感到困惑或者模棱两可,今天就带着大家一起来重新认识caniuse这个网站,并对它的原理和细节做些探究。1.1从babel-preset-env说起babel-preset-env是babel6中极
- 2018-12-24 。redux connect的装饰器问题
无尽甜蜜里悠悠记忆
Error:The‘decorators’pluginrequiresa‘decoratorsBeforeExport’option,whosevaluemustbeaboolean.IfyouaremigratingfromBabylon/Babel6orwanttousetheolddecoratorsproposal,youshouldusethe‘decorators-legacy’plu
- React addons载入方式变化
依然自我
Reactaddons
React0.14版本之前,addons无需手动添加,直接集成在React中。而在0.14版本之后,addons单独分离出来(与Babel6类似),各自成为插件,需要单独加载。在0.14版本之前,代码是这样的:importReactfrom'react/addons';var{PureRenderMixin,TestUtils,TransitionGroup}=React.addons;而在0.1
- LeetCode[位运算] - #137 Single Number II
Cwind
javaAlgorithmLeetCode题解位运算
原题链接:#137 Single Number II
要求:
给定一个整型数组,其中除了一个元素之外,每个元素都出现三次。找出这个元素
注意:算法的时间复杂度应为O(n),最好不使用额外的内存空间
难度:中等
分析:
与#136类似,都是考察位运算。不过出现两次的可以使用异或运算的特性 n XOR n = 0, n XOR 0 = n,即某一
- 《JavaScript语言精粹》笔记
aijuans
JavaScript
0、JavaScript的简单数据类型包括数字、字符创、布尔值(true/false)、null和undefined值,其它值都是对象。
1、JavaScript只有一个数字类型,它在内部被表示为64位的浮点数。没有分离出整数,所以1和1.0的值相同。
2、NaN是一个数值,表示一个不能产生正常结果的运算结果。NaN不等于任何值,包括它本身。可以用函数isNaN(number)检测NaN,但是
- 你应该更新的Java知识之常用程序库
Kai_Ge
java
在很多人眼中,Java 已经是一门垂垂老矣的语言,但并不妨碍 Java 世界依然在前进。如果你曾离开 Java,云游于其它世界,或是每日只在遗留代码中挣扎,或许是时候抬起头,看看老 Java 中的新东西。
Guava
Guava[gwɑ:və],一句话,只要你做Java项目,就应该用Guava(Github)。
guava 是 Google 出品的一套 Java 核心库,在我看来,它甚至应该
- HttpClient
120153216
httpclient
/**
* 可以传对象的请求转发,对象已流形式放入HTTP中
*/
public static Object doPost(Map<String,Object> parmMap,String url)
{
Object object = null;
HttpClient hc = new HttpClient();
String fullURL
- Django model字段类型清单
2002wmj
django
Django 通过 models 实现数据库的创建、修改、删除等操作,本文为模型中一般常用的类型的清单,便于查询和使用: AutoField:一个自动递增的整型字段,添加记录时它会自动增长。你通常不需要直接使用这个字段;如果你不指定主键的话,系统会自动添加一个主键字段到你的model。(参阅自动主键字段) BooleanField:布尔字段,管理工具里会自动将其描述为checkbox。 Cha
- 在SQLSERVER中查找消耗CPU最多的SQL
357029540
SQL Server
返回消耗CPU数目最多的10条语句
SELECT TOP 10
total_worker_time/execution_count AS avg_cpu_cost, plan_handle,
execution_count,
(SELECT SUBSTRING(text, statement_start_of
- Myeclipse项目无法部署,Undefined exploded archive location
7454103
eclipseMyEclipse
做个备忘!
错误信息为:
Undefined exploded archive location
原因:
在工程转移过程中,导致工程的配置文件出错;
解决方法:
 
- GMT时间格式转换
adminjun
GMT时间转换
普通的时间转换问题我这里就不再罗嗦了,我想大家应该都会那种低级的转换问题吧,现在我向大家总结一下如何转换GMT时间格式,这种格式的转换方法网上还不是很多,所以有必要总结一下,也算给有需要的朋友一个小小的帮助啦。
1、可以使用
SimpleDateFormat SimpleDateFormat
EEE-三位星期
d-天
MMM-月
yyyy-四位年
- Oracle数据库新装连接串问题
aijuans
oracle数据库
割接新装了数据库,客户端登陆无问题,apache/cgi-bin程序有问题,sqlnet.log日志如下:
Fatal NI connect error 12170.
VERSION INFORMATION: TNS for Linux: Version 10.2.0.4.0 - Product
- 回顾java数组复制
ayaoxinchao
java数组
在写这篇文章之前,也看了一些别人写的,基本上都是大同小异。文章是对java数组复制基础知识的回顾,算是作为学习笔记,供以后自己翻阅。首先,简单想一下这个问题:为什么要复制数组?我的个人理解:在我们在利用一个数组时,在每一次使用,我们都希望它的值是初始值。这时我们就要对数组进行复制,以达到原始数组值的安全性。java数组复制大致分为3种方式:①for循环方式 ②clone方式 ③arrayCopy方
- java web会话监听并使用spring注入
bewithme
Java Web
在java web应用中,当你想在建立会话或移除会话时,让系统做某些事情,比如说,统计在线用户,每当有用户登录时,或退出时,那么可以用下面这个监听器来监听。
import java.util.ArrayList;
import java.ut
- NoSQL数据库之Redis数据库管理(Redis的常用命令及高级应用)
bijian1013
redis数据库NoSQL
一 .Redis常用命令
Redis提供了丰富的命令对数据库和各种数据库类型进行操作,这些命令可以在Linux终端使用。
a.键值相关命令
b.服务器相关命令
1.键值相关命令
&
- java枚举序列化问题
bingyingao
java枚举序列化
对象在网络中传输离不开序列化和反序列化。而如果序列化的对象中有枚举值就要特别注意一些发布兼容问题:
1.加一个枚举值
新机器代码读分布式缓存中老对象,没有问题,不会抛异常。
老机器代码读分布式缓存中新对像,反序列化会中断,所以在所有机器发布完成之前要避免出现新对象,或者提前让老机器拥有新增枚举的jar。
2.删一个枚举值
新机器代码读分布式缓存中老对象,反序列
- 【Spark七十八】Spark Kyro序列化
bit1129
spark
当使用SparkContext的saveAsObjectFile方法将对象序列化到文件,以及通过objectFile方法将对象从文件反序列出来的时候,Spark默认使用Java的序列化以及反序列化机制,通常情况下,这种序列化机制是很低效的,Spark支持使用Kyro作为对象的序列化和反序列化机制,序列化的速度比java更快,但是使用Kyro时要注意,Kyro目前还是有些bug。
Spark
- Hybridizing OO and Functional Design
bookjovi
erlanghaskell
推荐博文:
Tell Above, and Ask Below - Hybridizing OO and Functional Design
文章中把OO和FP讲的深入透彻,里面把smalltalk和haskell作为典型的两种编程范式代表语言,此点本人极为同意,smalltalk可以说是最能体现OO设计的面向对象语言,smalltalk的作者Alan kay也是OO的最早先驱,
- Java-Collections Framework学习与总结-HashMap
BrokenDreams
Collections
开发中常常会用到这样一种数据结构,根据一个关键字,找到所需的信息。这个过程有点像查字典,拿到一个key,去字典表中查找对应的value。Java1.0版本提供了这样的类java.util.Dictionary(抽象类),基本上支持字典表的操作。后来引入了Map接口,更好的描述的这种数据结构。
&nb
- 读《研磨设计模式》-代码笔记-职责链模式-Chain Of Responsibility
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
/**
* 业务逻辑:项目经理只能处理500以下的费用申请,部门经理是1000,总经理不设限。简单起见,只同意“Tom”的申请
* bylijinnan
*/
abstract class Handler {
/*
- Android中启动外部程序
cherishLC
android
1、启动外部程序
引用自:
http://blog.csdn.net/linxcool/article/details/7692374
//方法一
Intent intent=new Intent();
//包名 包名+类名(全路径)
intent.setClassName("com.linxcool", "com.linxcool.PlaneActi
- summary_keep_rate
coollyj
SUM
BEGIN
/*DECLARE minDate varchar(20) ;
DECLARE maxDate varchar(20) ;*/
DECLARE stkDate varchar(20) ;
DECLARE done int default -1;
/* 游标中 注册服务器地址 */
DE
- hadoop hdfs 添加数据目录出错
daizj
hadoophdfs扩容
由于原来配置的hadoop data目录快要用满了,故准备修改配置文件增加数据目录,以便扩容,但由于疏忽,把core-site.xml, hdfs-site.xml配置文件dfs.datanode.data.dir 配置项增加了配置目录,但未创建实际目录,重启datanode服务时,报如下错误:
2014-11-18 08:51:39,128 WARN org.apache.hadoop.h
- grep 目录级联查找
dongwei_6688
grep
在Mac或者Linux下使用grep进行文件内容查找时,如果给定的目标搜索路径是当前目录,那么它默认只搜索当前目录下的文件,而不会搜索其下面子目录中的文件内容,如果想级联搜索下级目录,需要使用一个“-r”参数:
grep -n -r "GET" .
上面的命令将会找出当前目录“.”及当前目录中所有下级目录
- yii 修改模块使用的布局文件
dcj3sjt126com
yiilayouts
方法一:yii模块默认使用系统当前的主题布局文件,如果在主配置文件中配置了主题比如: 'theme'=>'mythm', 那么yii的模块就使用 protected/themes/mythm/views/layouts 下的布局文件; 如果未配置主题,那么 yii的模块就使用 protected/views/layouts 下的布局文件, 总之默认不是使用自身目录 pr
- 设计模式之单例模式
come_for_dream
设计模式单例模式懒汉式饿汉式双重检验锁失败无序写入
今天该来的面试还没来,这个店估计不会来电话了,安静下来写写博客也不错,没事翻了翻小易哥的博客甚至与大牛们之间的差距,基础知识不扎实建起来的楼再高也只能是危楼罢了,陈下心回归基础把以前学过的东西总结一下。
*********************************
- 8、数组
豆豆咖啡
二维数组数组一维数组
一、概念
数组是同一种类型数据的集合。其实数组就是一个容器。
二、好处
可以自动给数组中的元素从0开始编号,方便操作这些元素
三、格式
//一维数组
1,元素类型[] 变量名 = new 元素类型[元素的个数]
int[] arr =
- Decode Ways
hcx2013
decode
A message containing letters from A-Z is being encoded to numbers using the following mapping:
'A' -> 1
'B' -> 2
...
'Z' -> 26
Given an encoded message containing digits, det
- Spring4.1新特性——异步调度和事件机制的异常处理
jinnianshilongnian
spring 4.1
目录
Spring4.1新特性——综述
Spring4.1新特性——Spring核心部分及其他
Spring4.1新特性——Spring缓存框架增强
Spring4.1新特性——异步调用和事件机制的异常处理
Spring4.1新特性——数据库集成测试脚本初始化
Spring4.1新特性——Spring MVC增强
Spring4.1新特性——页面自动化测试框架Spring MVC T
- squid3(高命中率)缓存服务器配置
liyonghui160com
系统:centos 5.x
需要的软件:squid-3.0.STABLE25.tar.gz
1.下载squid
wget http://www.squid-cache.org/Versions/v3/3.0/squid-3.0.STABLE25.tar.gz
tar zxf squid-3.0.STABLE25.tar.gz &&
- 避免Java应用中NullPointerException的技巧和最佳实践
pda158
java
1) 从已知的String对象中调用equals()和equalsIgnoreCase()方法,而非未知对象。 总是从已知的非空String对象中调用equals()方法。因为equals()方法是对称的,调用a.equals(b)和调用b.equals(a)是完全相同的,这也是为什么程序员对于对象a和b这么不上心。如果调用者是空指针,这种调用可能导致一个空指针异常
Object unk
- 如何在Swift语言中创建http请求
shoothao
httpswift
概述:本文通过实例从同步和异步两种方式上回答了”如何在Swift语言中创建http请求“的问题。
如果你对Objective-C比较了解的话,对于如何创建http请求你一定驾轻就熟了,而新语言Swift与其相比只有语法上的区别。但是,对才接触到这个崭新平台的初学者来说,他们仍然想知道“如何在Swift语言中创建http请求?”。
在这里,我将作出一些建议来回答上述问题。常见的
- Spring事务的传播方式
uule
spring事务
传播方式:
新建事务
required
required_new - 挂起当前
非事务方式运行
supports
&nbs