- 博客(13)
- 问答 (1)
- 收藏
- 关注
原创 @Transactional(rollbackFor Exception.class)发生SQLException异常不生效的问题
在开发的时候,遇到了一个Bug,在进行多次入库操作的时候,发生SQLException异常,结果发生异常前的入库操作都没有进行回滚,起初并没有写rollbackFor,之后补上rollbackFor=Exception.class还是没有进行回滚,发现这个方法在被其他方法调用,但是其他方法并没有加事务,根据事务的传播机制,被调用方法的事务失效。@Transactional默认是对RuntimException和Error的错误进行回滚,对于SQLException的异常需要使用。
2022-09-02 10:22:51 2409 1
原创 Myabtis相关概念
MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。(以上内容来自Mybatis官网)
2022-09-02 10:19:44 142
原创 Access is denied (user is anonymous); redirecting to authentication entry point
代码报错如下:org.springframework.security.access.AccessDeniedException: Access is denied at org.springframework.security.access.vote.AffirmativeBased.decide(AffirmativeBased.java:84) at org.springframework.security.access.intercept.AbstractSecur
2022-02-21 15:17:19 1782
原创 Android学习笔记——使用Intent进行Activity跳转的4种方法
Android学习笔记——使用Intent进行Activity跳转的4种方法1.显式意图显式意图必须要知道被激活组件的包和class如下图所示,对MainActivity进行一些改造对activity_main.xml文件进行改造,如下图所示运行结果如下图所示可以在Log种发现有以上设定好的记录,其中我们把传递的信息通过putExtra方法传递2.隐式意图有显式意图,那么...
2019-09-09 22:53:10 1275
原创 串的模式匹配算法
#include<stdio.h>#define MAXLEN 40 static int next[MAXLEN];static int nextval[MAXLEN];typedef struct{ char ch[MAXLEN]; int len;}SString;int Index_KMP(SString S,int pos,SString T)...
2018-12-18 20:30:04 189
原创 二叉树的先中后序遍历以及树的输出
#include<stdio.h>#include<stdlib.h>int depth = 0;typedef struct Node { char data; struct Node *Lchild; struct Node *Rchild;}BiTNode,*BiTree;BiTree *InitBiT...
2018-12-18 20:17:44 505
原创 图——有向图的深度优先搜索
采用邻接矩阵表示存储有向图#include<stdio.h>#define MAX_VERTEX_NUM 20#define INFINITY 32768#define True 1#define False 0#define Error -1#define OK 1#include<stdio.h>#pragma warning(dis...
2018-12-18 19:52:49 6301
原创 栈——顺序栈的基本操作
栈:作为一种限定性线性表,是将线性表的插入和删除操作限制为仅在表的一端进行,通常将表中允许插入、删除操作的一端称为栈顶。下面给出顺序栈的代码演示。顺序栈:采用顺序存储结构实现的栈,即利用一组地址连续的存储单元依次存放自栈底的数据元素,同时由于栈操作的特殊性,还必须附设一个位置指针top来动态的指示栈顶元素在顺序栈中的位置。一般top=-1来表示空栈.typedef struct//顺序...
2018-10-24 19:39:23 376
原创 栈——顺序栈的基本操作
栈:作为一种限定性线性表,是将线性表的插入和删除操作限制为仅在表的一端进行,通常将表中允许插入、删除操作的一端称为栈顶。下面给出顺序栈的代码演示。顺序栈:采用顺序存储结构实现的栈,即利用一组地址连续的存储单元依次存放自栈底的数据元素,同时由于栈操作的特殊性,还必须附设一个位置指针top来动态的指示栈顶元素在顺序栈中的位置。一般top=-1来表示空栈.typedef struct//顺序...
2018-10-22 21:19:20 2409 1
原创 数据结构——单循环链表的
循环链表:循环链表是一个首尾相接的链表。将单链表最后一个结点的指针域由NULL改为指向表头结点,就得到了单链形式的循环链表,并称为循环单链表。同样还可以有多重链的循环链表。//定义结构体typedef struct Node { int data; struct Node *next;}Node,*LinkList; //初始化循环单链表: LinkList *InitCL......
2018-10-22 20:50:15 5337
原创 数据结构——单链表的基本
数据结构——单链表链式存储是最常用的动态存储方法,为了克服顺序表的缺点,可以采用链式方式存储线性表。通常将采用链式存储结构的线性表称为线性链表。(写的不好希望大家多多指教,欢迎指出错误)定义typedef struct Node {//单链表的定义 int data;//数据域 struct Node *next;//指针域}Node,*LinkList;对单链表进行初始化...
2018-09-30 11:50:06 278
原创 数据结构——顺序表的基本操作
数据结构——顺序表的基本操作//顺序表的定义typedef struct SeqList { int list[MAXSIZE]; int last;}SeqList;//顺序表查找元素int GetData(SeqList L, int i)//输入位置查找元素{ int m, num = 0; for (m = 0; m <= i; m++) { if (m ...
2018-09-29 15:09:26 528
原创 Python学习笔记
第一章 变量和简单数据类型 1.1 变量的命名和使用变量名只能包含字母,数字和下划线。变量名可以是字母或者下划线开头,不能是数字开头。例如:message_1,_message1都是合法的变量名,而1_message是不合法的。变量名不能包含空格,但可使用下划线来分割其中的单词。例如,变量名first_message是合法的,但是first message则会引发错误。不可以将...
2018-09-10 18:21:14 181
空空如也
IDEA导入项目后配置好了maven环境,但是运行的时候报下面这个错误
2019-09-21
TA创建的收藏夹 TA关注的收藏夹
TA关注的人