
springboot
sPois
这个作者很懒,什么都没留下…
展开
-
SpringBoot事务管理
文章目录1.Spring中的事务2.事务的传播行为(propagation behavior)3.事务的隔离级别(isolation level)4.SpringBoot中使用事务管理1.Spring中的事务Spring并不直接管理事务,而是通过各种事务管理器来调用特定平台的事务实现,用户在使用事务时不需要关心底层的实现。针对各个持久化场景,Spring提供了各个事务管理器,他们都继承了AbstractPlatformTransactionManager,实现了ResourceTransactionMa原创 2020-10-06 16:06:22 · 602 阅读 · 0 评论 -
springboot商品秒杀系统遇到的高并发问题
基于springboot开发的商品秒杀系统所遇到的高并发问题使用jmeter进行测试所遇到的各种高并发带来的问题:原始业务代码:/** * 测试用下单 * @param itemId 商品id * @param userId 用户id * @return true false */ @Override public boolean testKill(Long itemId, Long userId) { SecItem原创 2020-07-27 02:05:41 · 581 阅读 · 0 评论 -
redis获取到的List对象,出现java.lang.ClassCastException异常
问题描述从redis获取到的List对象,在对这个对象进行遍历的时候,出现类型转换异常ClassCastException,调试后发现,获取到的items对象其实是JSONArray,数组元素都是JSONObject对象。解决方法@Override public SecItem selectItemByItemId(Long itemId) { List<SecItem> items = JSON.parseArray(JSON.toJSON(selectAll原创 2020-07-26 02:41:24 · 1284 阅读 · 0 评论 -
thymeleaf中onclick方法传值
在springboot2.3.0中,发现下面这种方式不能正常传值:<button class="btn btn-primary" th:onclick="'pay('+${order.orderId}+')'">支付</button>改为使用下面的方式后,正常传值:<button class="btn btn-primary" th:onclick="pay([[${order.orderId}]])">支付</button>...原创 2020-07-22 01:14:22 · 737 阅读 · 0 评论 -
RabbitMQ使用死信队列解决订单超时
1.什么是死信队列(DLX)?DLX,Dead Letter Exchange 的缩写,又死信邮箱、死信交换机。DLX就是一个普通的交换机,和一般的交换机没有任何区别。当消息在一个队列中变成死信(dead message)时,通过这个交换机将死信发送到死信队列中死信的条件:消息被否定确认,使用 channel.basicNack 或 channel.basicReject ,并且此时requeue 属性被设置为false。消息在队列的存活时间超过设置的TTL时间。消息队列的消息数量已经超过最大原创 2020-07-18 03:48:12 · 2248 阅读 · 1 评论 -
springboot远程连接docker中使用哨兵集群模式的redis,获取到的主数据库是内网ip的问题
用springboot连接哨兵获取主服务器ip时发现,返回的是内网的ip和端口,在主机和两个从机的配置文件上加上以下配置slave-announce-ip <直接写上服务器外网ip>slave-announce-port <docker映射的本机端口>我的redis主服务器配置slave-announce-ip <外网ip>slave-announce-port 1210从机1slave-announce-ip <外网ip>slave-an原创 2020-06-29 03:27:08 · 1604 阅读 · 3 评论 -
springboot实现国际化
创建国际化配置文件在resources下创建i18n,然后创建一个默认的properties,一个中文的,一个英文的配置文件默认的内容为:其他两个写各自的语言在application配置文件指定#指定国际化文件spring.messages.basename=i18n/login写自己的国际化解析器/** * 实现LocaleResolver来写我们自己的国际化解析器 * 然后需要将组件注册进容器,才能使用 * @author */public class MyLocale原创 2020-06-10 23:57:40 · 176 阅读 · 0 评论 -
SpringBoot整合RabbitMQ
0.RabbitMq安装不多介绍rabbitmq的安装过程,RabbitMq基于erlang开发,所以安装Rabbitmq之前需要先安装对应版本的erlang。rabbitmq下载地址:https://www.rabbitmq.com/install-windows.htmlerlang下载地址:https://www.erlang-solutions.com/resources/download.html安装完,打开localhost:15672,使用guest,guest可登录rabbitmq,原创 2020-07-15 02:32:04 · 658 阅读 · 0 评论 -
SpringBoot使用配置类映射yml配置文件信息
导入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-configuration-processor</artifactId> </dependency>创建自己的配置映射类使用configurationProperties注解并指明在配置文件中的原创 2020-07-16 01:15:33 · 2132 阅读 · 0 评论