![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
笔记
没事搞点事做serendipity
人生就像赛跑,不在乎你是否第一个到达终点,而在乎你有没有跑完全程。
展开
-
word转pdf加水印以及替换内容
pom文件<!--依赖springboot-start中dependencyManagement的版本--> <dependency> <groupId>org.freemarker</groupId> <artifactId>freemarker</artifactId> <version>${freemarker.version}&原创 2021-12-22 14:39:46 · 446 阅读 · 0 评论 -
pdf添加水印
import java.awt.FontMetrics;import java.io.*;import javax.swing.JLabel;import com.itextpdf.text.DocumentException;import com.itextpdf.text.Element;import com.itextpdf.text.Rectangle;import com.itextpdf.text.pdf.BaseFont;import com.itextpdf.text.pd原创 2021-12-22 14:17:04 · 187 阅读 · 0 评论 -
图片水印工具类
import java.awt.AlphaComposite;import java.awt.Color;import java.awt.Font;import java.awt.Graphics2D;import java.awt.Image;import java.awt.RenderingHints;import java.awt.image.BufferedImage;import java.io.File;import java.io.FileOutputStream;impor原创 2021-12-22 14:11:43 · 93 阅读 · 0 评论 -
transationTemplate使用模板
@Autowired private TransactionTemplate transactionTemplate; public void test() { transactionTemplate.execute(i -> { try { //数据库操作 } catch (Exception e) { //打印日志 i..原创 2021-12-16 11:24:34 · 265 阅读 · 0 评论 -
前端element校验版本号格式
const validatorVersion = (rule, value:string, callback:Function) => {const reg = /^\d+.\d+.\d+$/;callback(reg.test(value)?undefined : 版本号格式不正确,正确格式为xx.xx.xx);}原创 2021-12-02 22:23:37 · 1028 阅读 · 1 评论 -
java异常分类
原创 2021-11-30 20:44:28 · 56 阅读 · 0 评论 -
spring执行流程图生命周期
Bean的生命周期:1.实例化BeanFactoryPostProcessor:处理的对象是BeanFactory级别2.实例化BeanPostProcessor实现类3.实例化InstantiationAwareBeanPostProcessorAdapter实现类,注:该类是BeanPostProcessor的扩展4.执行InstantiationAwareBeanPostProcessorAdapter类的postProcessBeforeInstantiation方法5.Bean的构造方.原创 2021-09-20 21:57:00 · 214 阅读 · 0 评论 -
Springboot使用动态Groovy脚本并优化
1.相关依赖 2.GroovyClassLoader方式 3.GroovyScriptEngine方式 方法调用 变量绑定 4.代码示例 5.参考一.使用 Caffeine 本地缓存二.使用Groovy原创 2021-07-17 10:02:55 · 517 阅读 · 0 评论 -
商城sql
DROP TABLE IF EXISTS pms_spec;CREATE TABLE pms_spec (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT ‘主键id’,name varchar(45) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT ‘规格名称’,nick_name varchar(45) CHARACTER SET utf8 COLLATE utf8_general原创 2021-06-17 12:24:02 · 139 阅读 · 0 评论 -
商品推荐1
一、介绍商品推荐是针对用户面对海量的商品信息而不知从何下手的一种解决方案,它可以根据用户的喜好,年龄,点击量,购买量以及各种购买行为来为用户推荐合适的商品。在本项目中采用的是基于用户的协同过滤的推荐算法来实现商品的推荐并在前台页面进行展示,我将会使用余弦相似度的度量方法来计算用户与用户之间相似性,最终将相似度较高的用户浏览的商品推荐给用户。二、目标商品推荐:根据不同用户之间的相似性来推荐给用户合适的商品一级类目管理:管理一级类目的相关功能二级类目管理:管理二级类目的相关功能商品管理:对商品进行上原创 2021-06-17 09:30:57 · 232 阅读 · 0 评论 -
秒杀
秒杀业务流程(1)商户创建秒杀活动,设定秒杀时间段,选择本次活动的商品,设置折扣、库存等;(2)用户APP端在活动即将开始时会看到秒杀活动列表,点击活动可以看到商品列表,点击商品可以查看秒杀商品详情;(3)商品详情页用户点击立即抢购;(4)如果库存充足,则创建订单成功;否则秒杀失败(5)提交订单后超时未支付,系统会自动关闭订单,回滚库存。秒杀业务的特性(1)低廉价格;(2)大幅推广;(3)瞬时售空;(4)一般是定时上架;(5)时间短、瞬时并发量高;前端层面前端优化(前端按钮点击频率原创 2021-06-05 20:07:52 · 78 阅读 · 0 评论 -
Disruptor介绍使用
Disruptor介绍使用1,什么是 Disruptor?(1)Disruptor 是英国外汇交易公司 LMAX 开发的一个高性能的并发框架。可以认为是线程间通信的高效低延时的内存消息组件,它最大的特点是高性能。与 Kafka、RabbitMQ 用于服务间的消息队列不同,disruptor 一般用于一个 JVM 中多个线程间消息的传递。(2)从功能上来看,Disruptor 实现了“队列”的功能,而且是一个有界队列(事实上它是一个无锁的线程间通信库)。作用与 ArrayBlockingQueue 有相原创 2021-06-05 07:21:25 · 779 阅读 · 0 评论 -
Disruptor
Disruptor完成多个消费者不重复消费消息Disruptor完成多个消费者并行、顺序重复消费Event。重复消费类似于kafka中,同一个topic被不同的group的消费者消费。这样的场景比较常见。当然更常见的场景是不重复消费,也就是一个消息只能被消费一次。Disruptor同样可以完成不重复消费的功能。上一篇消费者消费Handler是这样的,需要实现EventHandler。/**@author wuweifeng wrote on 2018/3/29.*/public class原创 2021-06-05 07:12:15 · 141 阅读 · 0 评论