- Pyorch中 nn.Conv1d 与 nn.Linear 的区别
迪三
#NN_Layer神经网络
即一维卷积层和全联接层的区别nn.Conv1d和nn.Linear都是PyTorch中的层,它们用于不同的目的,主要区别在于它们处理输入数据的方式和执行的操作类型。nn.Conv1d通过应用滑动过滤器来捕捉序列数据中的局部模式,适用于处理具有时间或序列结构的数据。nn.Linear通过将每个输入与每个输出相连接,捕捉全局关系,适用于将输入数据作为整体处理的任务。1.维度与输入nn.Conv1d(一
- 每天五分钟玩转深度学习框架PyTorch:获取神经网络模型的参数
幻风_huanfeng
深度学习框架pytorch深度学习pytorch神经网络人工智能模型参数python
本文重点当我们定义好神经网络之后,这个网络是由多个网络层构成的,每层都有参数,我们如何才能获取到这些参数呢?我们将再下面介绍几个方法来获取神经网络的模型参数,此文我们是为了学习第6步(优化器)。获取所有参数Parametersfromtorchimportnnnet=nn.Sequential(nn.Linear(4,2),nn.Linear(2,2))print(list(net.paramet
- 每天五分钟玩转深度学习框架PyTorch:将nn的神经网络层连接起来
幻风_huanfeng
深度学习框架pytorch深度学习pytorch神经网络人工智能机器学习python
本文重点前面我们学习pytorch中已经封装好的神经网络层,有全连接层,激活层,卷积层等等,我们可以直接使用。如代码所示我们直接使用了两个nn.Linear(),这两个linear之间并没有组合在一起,所以forward的之后,分别调用了,在实际使用中我们常常将几个神经层组合在一起,这样不仅操作方便,而且代码清晰。这里介绍一下Sequential()和ModuleList(),它们可以将多个神经网
- 常用torch.nn
mm_exploration
MyDiffusionpythonpytorch人工智能
目录一、torch.nn和torch.nn.functional二、nn.Linear三、nn.Embedding四、nn.Identity五、Pytorch非线性激活函数六、nn.Conv2d七、nn.Sequential八、nn.ModuleList九、torch.outertorch.cat一、torch.nn和torch.nn.functionalPytorch中torch.nn和torc
- pytorch创建模型方式
守护安静星空
pytorch深度学习人工智能
1.继承自nn.Module的方式fromtorchimportnnimporttorch.nn.functionalasF'''继承自nn.Module'''classLModel(nn.Module):def__init__(self):super().__init__()self.L1=nn.Linear(10,10)self.L2=nn.Linear(10,64)self.L3=nn.Li
- nn.Conv1d、nn.Conv2d、nn.Linear
ywfwyht
深度学习pythonpython人工智能
这里写目录标题nn.Linearnn.Conv1dnn.Conv2d1×1卷积计算卷积中一共有多少次乘法和加法操作nn.LinearArgs:in_features:sizeofeachinputsampleout_features:sizeofeachoutputsamplebias:IfsettoFalse,thelayerwillnotlearnanadditivebias.Default:
- 【pytorch】nn.linear 中为什么是y=xA^T+b
leSerein_
pytorch人工智能python
我记得读教材的时候是y=Wx+b,左乘矩阵W,这样才能表示线性变化。但是pytorch中的nn.linear中,计算方式是y=xA^T+b,其中A是权重矩阵。为什么右乘也能表示线性变化操作呢?因为pytorch中,照顾到输入是多个样本一起算的(第一个维度是多个样本数,所以输入默认是行向量),所以用y=xA^T+b,输出的y也是行向量。我们的教材中默认输入是列向量的,而pytorch为了用户方便,输
- 机器学习复习(2)——线性回归&SGD优化算法
不会写代码!!
机器学习复习人工智能机器学习算法机器学习线性回归人工智能
目录线性回归代码线性回归理论线性回归代码classMy_Model(nn.Module):def__init__(self,input_dim):super(My_Model,self).__init__()#矩阵的维度(dimensions)self.layers=nn.Sequential(nn.Linear(input_dim,16),nn.ReLU(),nn.Linear(16,8),nn
- 【陈工笔记】SNN(Spiking Neural Network)的理解
我看到你啦滴
网络神经网络
(不足之处较多,望包涵。用于自学,帮助理解。)1、LIFNode在网络架构中的简单应用例子#定义并初始化网络net=nn.Sequential(nn.Flatten(),nn.Linear(28*28,14*14,bias=False),#这里不加bias应该是偏置在SNN中不好表示neuron.LIFNode(tau=tau),nn.Linear(14*14,10,bias=False),neu
- nn.Linear()
三方斜阳
官网nn.Linear()详解Linear作用:对输入数据进行线性变换例子:importtorchm=torch.nn.Linear(20,30)input=torch.randn(128,20)#输入数据的维度(128,20)output=m(input)print(m.weight.shape)print(m.bias.shape)print(output.size())>>torch.Siz
- 模型参数访问
Kevin_D98
动手学深度学习Pytorch版pytorchpython
文章目录前言某一层的参数目标参数一次性访问所有参数嵌套块收集参数前言在选择了架构并设置了超参数后,进入训练阶段。此时,我们的目标就是找到使损失函数最小化的模型参数。有时,我们希望提取参数,以便在其他环境中复用。某一层的参数net=nn.Sequential(nn.Linear(4,8),nn.ReLU(),nn.Linear(8,1))X=torch.rand(size=(2,4))print(n
- 神经网络的基本框架的搭建-nn.Module
DQ小恐龙
pytorch_learn神经网络pytorch
一、Torch.NN简介torch.nn是PyTorch中用于构建神经网络的模块。它提供了一组类和函数,用于定义、训练和评估神经网络模型。torch.nn模块的核心是nn.Module类,它是所有神经网络模型的基类。在Containers中通过继承nn.Module类,您可以创建自己的神经网络模型,并定义模型的结构和操作。以下是torch.nn模块中常用的一些类和函数:nn.Linear:线性层,
- SelfAttention和MultiHeadAttion实现demo
极乐净土0822
pytorch深度学习python
#encoding:utf-8frommathimportsqrtimporttorchimporttorch.nnasnnclassSelf_Attention(nn.Module):def__init__(self,input_dim,dim_k,dim_v):super(Self_Attention,self).__init__()self.q=nn.Linear(input_dim,dim
- decode的输入为0比有输入更有效
xinxuann
为什么注释掉的效果更好,它的输入是0啊#classDecoder(nn.Module):#def__init__(self,hidden_size,output_size):#super(Decoder,self).__init__()#self.lstm=nn.LSTM(hidden_size,hidden_size,batch_first=True)#self.fc=nn.Linear(hid
- Pytorch:nn.Linear() 基本定义和用法
北方骑马的萝卜
Pytorch系列pytorch人工智能python
nn.Linear的基本定义nn.Linear定义一个神经网络的线性层,方法签名如下:torch.nn.Linear(in_features,#输入的神经元个数out_features,#输出神经元个数bias=True#是否包含偏置)Linear其实就是对输入Xn×iX^{n×i}Xn×iHn×o=Xn×iW(i×o)+b(o)H^{n×o}=X^{n×i}W^{(i×o)}+b^{(o)}Hn
- Pytorch nn.Linear()的基本用法与原理详解及全连接层简介
可keke
ML&DL笔记pytorch人工智能python
主要引用参考:https://blog.csdn.net/zhaohongfei_358/article/details/122797190https://blog.csdn.net/weixin_43135178/article/details/118735850nn.Linear的基本定义nn.Linear定义一个神经网络的线性层,方法签名如下:torch.nn.Linear(in_featu
- Pytorch中的层和块(nn.Module和nn.Sequential的用法)
奉系坤阀
DeepLearning神经网络人工智能深度学习pytorchSequentialModule前向传播
一、层和块在构造自定义块之前,我们先回顾一下多层感知机的代码。下面的代码生成一个网络,其中包含一个具有256个单元和ReLU激活函数的全连接隐藏层,然后是一个具有10个隐藏单元且不带激活函数的全连接输出层。importtorchfromtorchimportnnfromtorch.nnimportfunctionalasFnet=nn.Sequential(nn.Linear(20,256),nn
- 【踩坑记录】pytorch 自定义嵌套网络时部分网络输出不变的问题
D-A-X
pytorch踩坑记录pytorch人工智能python
问题描述使用如下的自定义的多层嵌套网络进行训练:classFC1_bot(nn.Module):def__init__(self):super(FC1_bot,self).__init__()self.embeddings=nn.Sequential(nn.Linear(10,10))defforward(self,x):emb=self.embeddings(x)returnembclassFC
- 如何理解attention中的Q,K,V?
数据派THU
来源:机器学习算法与自然语言处理本文约2500字,建议阅读5分钟本文介绍了应该如何理解attention中的query,key,value。01回答一:作者-不是大叔我们直接用torch实现一个SelfAttention来说一说:1.首先定义三个线性变换矩阵,query,key,value:classBertSelfAttention(nn.Module):self.query=nn.Linear
- attention中Q,K,V的理解
Angelina_Jolie
深度学习笔记人工智能算法深度学习
第一种1.首先定义三个线性变换矩阵,query,key,value:classBertSelfAttention(nn.Module):self.query=nn.Linear(config.hidden_size,self.all_head_size)#输入768,输出768self.key=nn.Linear(config.hidden_size,self.all_head_size)#输入7
- Pytorch 之torch.nn初探
冰淇淋64035883
pythonpytorch
第1关:torch.nn.Module本关任务:本关要求利用nn.Linear()声明一个线性模型l,并构建一个变量net由三个l序列构成。importtorchimporttorch.nnasnnfromtorch.autogradimportVariable#/**********Begin*********/#声明一个in_features=2,out_features=3的线性模型l并输出
- Linear FC FFN MLP层学习
thetffs
学习
一、Linear(线性层)即神经网络的线性层,用于将输入映射到下一层的特征空间。它接受一个输入并与该层的权重的转置相乘。线性层没有激活函数。公式:y=x*W^T+b,其中W是权重矩阵,b是偏置向量。pytorch的线性层代码示例如下:importtorchimporttorch.nnasnn#定义线性层linear_layer=nn.Linear(in_features=10,out_featur
- 在网络中添加SE通道注意力模块
河海CV小菜鸡
网络attentionpython
第一步:首先在网络构造的py中添加SELayer这个类classSELayer(nn.Module):def__init__(self,channel,reduction=16):super(SELayer,self).__init__()self.avg_pool=nn.AdaptiveAvgPool2d(1)self.fc=nn.Sequential(nn.Linear(channel,cha
- 动手学深度学习——第六次
湘溶溶
深度学习机器学习深度学习人工智能
python类和对象python类和对象参数管理参数访问卷积python类和对象参数管理生成一个二维张量,然后传入有但隐藏层的多层感知机参数访问net[0]nn.Linear(4,8)net[1]nn.ReLU()net[2]nn.Linear(8,1)net[2].state_dict()访问最后一层的参数即权重和偏置内部表示修改默认的初始函数,normal_zeros_()m.weight.d
- pytorch 线性层Linear详解
星水天河
pytorchpytorch人工智能python
线性层就是全连接层,以一个输入特征数为2,输出特征数为3的线性层为例,其网络结构如下图所示:输入输出数据的关系如下:写成矩阵的形式就是:下面通过代码进行验证:importtorch.nnasnnlinear_layer=nn.Linear(2,3)print('weightshape',linear_layer.weight.shape,'biasshape',linear_layer.bias.
- PyTorch模型的保存与加载
Code_LiShi
pytorchpytorch
PyTorch模型的保存和加载1:pytorch保存和加载模型的方法1.1仅保存和加载模型参数保存模型参数这种方法只是保存模型的参数,因此加载模型时,应提前将模型准备好,然后载入模型参数importtorchimporttorch.nnasnnmodel=nn.Sequential(nn.Linear(128,16),nn.ReLU(),nn.Linear(16,1))#保存整个模型的参数torc
- 造车先做三蹦子-之二:自制数据集(5x5数据集)230102
aw344
1024程序员节
#JupyterNotebook231001importtorchimporttorch.nnasnnimporttorch.optimasoptim#定义模型classNet(nn.Module):def__init__(self):super(Net,self).__init__()self.fc1=nn.Linear(25,50)self.fc2=nn.Linear(50,6)defforw
- pytorch 实现Transformer encoder
风吹草地现牛羊的马
pytorchNLPpytorchtransformer深度学习
importtorchfromtorchimportnnimporttorch.nn.functionalasFimportmathclassAttentionHead(nn.Module):def__init__(self,embed_dim,head_dim):super().__init__()self.q=nn.Linear(embed_dim,head_dim)self.k=nn.Lin
- 使用pytorch实现图像分类
Mn孟
pytorch分类深度学习计算机视觉神经网络
在PyTorch中实现图像分类通常需要以下步骤:准备数据:从图像文件或数据集中读取数据,并将它们转换为PyTorch张量(Tensor)。定义模型:使用PyTorch的神经网络模块(nn)构建图像分类模型,例如使用nn.Conv2d定义卷积层,使用nn.Linear定义全连接层。训练模型:使用PyTorch的自动求导功能和优化器(optimizer)对模型进行训练,并通过反复调整权值使损失(los
- (基于Pytorch的深度学习)笔记1:创建模型用到的类:_init_和self、super(Model, self).__init__()
maoni99999
Pytorchpython深度学习
Python中的_init_和self:拿以下一段代码作为例子:classLinearNet(nn.Module):def__init__(self,n_feature):super(LinearNet,self).__init__()self.linear=nn.Linear(n_feature,1)defforward(self,x):y=self.linear(x)returny定义一个类:
- 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