编辑
2023-04-03
学习记录
00

提示

被调用的方法老是会跟随调用方回滚就算设置各种@transactional失效方式也没有用

@Transactional失效方式可以看我之前的文章

现在先简单实现一下

java
@Transactional(propagation = Propagation.REQUIRES_NEW,noRollbackFor = Exception.class) public void saveRecCallInterfaceLog(RecCallInterfaceLogEntity recCallInterfaceLogEntity) { int reslut= recCallInterfaceLogMapper.insert(recCallInterfaceLogEntity); if (reslut>0){ logger.info("接口调用表更新成功"); }else{ logger.info("接口调用表更新失败"); } }

Propagation.REQUIRES_NEW 是开启新的事务,不和调用方合并成一个,防止被一起回滚。

noRollbackFor = Exception.class 是设置该方法任何异常都不回滚

编辑
2023-03-31
实用工具
00

简介信息

text明文【转】Base64字符串; text的Base64字符串【转】明文; 文件(图片、pdf等)【转】Base64; Base64【转】文件(图片、pdf等); 将pdf的Base64编码格式【转为】img的Base64编码格式,只限最后一页的Base64编码; 将pdf的Base64编码格式【转为】img的Base64编码格式,并将所有页合成一张图片的Base64编码;

需要依赖

一、所需的包 注意:java.util.Base64是JDK1.8中新增的类,所以它只支持JDK1.8及以后的版本,如果你的JDK版本低于1.8,请使用org.apache.commons.codec.binary.Base64.

下面的包,是用于Base64的pdf转img使用的,如果不需要要,可以不引用,并删掉对应的方法(前言中的5和6)。

xml
<dependency> <groupId>org.apache.pdfbox</groupId> <artifactId>fontbox</artifactId> <version>2.0.1</version> </dependency> <dependency> <groupId>org.apache.pdfbox</groupId> <artifactId>pdfbox</artifactId> <version>2.0.1</version> </dependency>
编辑
2023-03-31
学习记录
00

先将字符串base64转为字节数组输入流,再转为输入流

java
public InputStream base64ToInputStream(String base64) { ByteArrayInputStream stream = null; try { byte[] bytes = Base64.getDecoder().decode(base64); stream = new ByteArrayInputStream(bytes); } catch (Exception e) { e.printStackTrace(); } return stream; }
编辑
2023-03-31
学习记录
00

提示

实现一个查询同时获取多个数据源内相关视图或者表里的信息

前提

新建一个maven model,配置基本项目内容

pom文件

xml
<dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-typehandlers-jsr310</artifactId> <version>1.0.2</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-config</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-bootstrap</artifactId> </dependency> <dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc6</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>5.7.1</scope> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> </dependency> <dependency> <groupId>com.baomidou</groupId> <artifactId>dynamic-datasource-spring-boot-starter</artifactId> <version>3.5.2</version> </dependency> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.5.2</version> </dependency>
编辑
2023-03-31
学习记录
00

HttpServletRequest简介

HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信息都封装在这个对象中。

request常用的方法和操作:

1.获得客户端的信息

getRequestURL方法返回客户端发出请求时的完整URL。

getRequestURI方法返回请求行中的资源名部分,去掉主机名的部分。

getRemoteAddr方法返回发出请求的客户机的IP地址

getRemoteHost方法返回发出请求的客户机的完整主机名

getRemotePort方法返回客户机所使用的端口号

getLocalAddr方法返回WEB服务器的IP地址。

getLocalName方法返回WEB服务器的主机名

getMethod得到客户机请求方式,如GET,POST

2.获得请求头的一些方法

getHead(name)方法

getHeaders(String name)方法

getHeaderNames方法

3.获得请求参数,也就是客户端提交的数据的一些方法。

getParameter(name)方法

getParameterValues(String name)方法

getParameterNames方法

getParameterMap方法