- 博客(77)
- 资源 (10)
- 收藏
- 关注
原创 maven 项目pom.xml文件配置打包功能 和 静态资源文件自带版本号功能
maven 项目pom.xml文件配置打包功能 和 静态资源文件自带版本号功能例如: html文件中引用js文件<script src="js/jquery-2.0.2.min.js"></script>打包编译后会变成 <script src="js/jquery-2.0.2.min.js?v=2021-07-09T09:29:42Z"></script>pom.xml 标签内增加<build> <plu
2024-03-30 18:46:02 364
转载 《程序猿工作心态调整指南》
1.多运动,照顾好自己的身体,生理对情绪影响远比你想的大。维护自己的利益是一件非常光明正大的事情!2.放缓你做事情的心情,不要盲目焦急,90%以上的事情都没你想的那么重要与紧急。要学会多从别人的角度来思考问题,你会发现最急的人可能就是你自己。3.理解失败的价值。很多事情,早做比晚做好,经验越多,抓住下次机会的概率也就越大。4.多和亲人朋友沟通。如果你以前没有倾诉的习惯,不妨在难受的时候向朋友和家人沟通,绝对会好受很多的。5.不要让那些你肯定能完成的任务影响你的心情6.认清自己的能力,不要盲
2021-09-10 09:57:07 483
原创 java 控制台斗地主 demo代码
扑克牌实体类/** * 描述: * 实体类 扑克牌 * @author 闲走天涯 * @create 2021/3/17 17:09 */public class Pai implements Comparable<Pai>{ private String name ; private String num ; private int id ; public Pai(String name, String num, int id) {
2021-09-10 09:50:36 517
转载 SpringBoot 通过自定义注解实现AOP切面编程实例
一直心心念的想写一篇关于AOP切面实例的博文,拖更了许久之后,今天终于着手下笔将其完成。基础概念1、切面(Aspect)首先要理解‘切’字,需要把对象想象成一个立方体,传统的面向对象变成思维,类定义完成之后(封装)。每次实例化一个对象,对类定义中的成员变量赋值,就相当于对这个立方体进行了一个定义,定义完成之后,那个对象就在那里,不卑不亢,不悲不喜,等着被使用,等着被回收。面向切面编程则是指,对于一个我们已经封装好的类,我们可以在编译期间或在运行期间,对其进行切割,把立方体切开,在原有的方法里面添加(
2021-09-10 09:45:28 779
原创 i18n实现 html、js、java后端 国际化翻译
一、HTML页面的国际化翻译1.配置类/** * 描述: * i18n配置类 * @author 闲走天涯 * @date 2018/8/118:34 */@Slf4j@Configurationpublic class I18nConfiguration { @Value("${i18n.default.lang:zh_CN}") private String default_lang;//国际化翻译默认语言 @Bean(name="localeResolv
2021-09-02 16:13:30 1837 3
原创 stripe支付 旧版 charge付款方式 demo代码
stripe支付 旧版 charge付款方式 demo代码特点:1.实现客户绑卡,解卡等2.全部由服务端进行操作,前端可自定义绑卡,无需使用stripe SDK收集卡信息3.用户授权进行冻结银行卡的资金,然后 订单结算时进行捕获花费的金额并解冻其余冻结的金额/** * @program: test * @description: stripe 支付charge方式 旧版 * @author: 闲走天涯 * @create: 2021-09-02 13:48 */public class
2021-09-02 15:03:13 912 1
原创 stripe支付 新版paymentIntent(付款意图) demo代码
stripe支付 新版paymentIntent(付款意图) demo代码特点:1.实现客户绑卡,解卡等2.全部由服务端进行操作,前端可自定义绑卡,无需使用stripe SDK收集卡信息3.用户授权进行冻结银行卡的资金,然后 订单结算时进行捕获花费的金额并解冻其余冻结的金额/** * @program: test * @description: PaymentIntent api 保存客户和客户卡对象,授权冻结卡金额,结算进行捕获并解冻 * @author: 闲走天涯 * @create:
2021-09-01 17:28:04 3212 2
原创 springboot generator 代码生成器插件使用
1、配置pom.xml<!-- mybatis generator 自动生成代码插件 --><!--generator 实现model、mapper等自动生成--><plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version
2021-09-01 15:17:09 574 2
原创 SQL语句优化
SQL 中 in 查询和exists查询in查询:select * from A a where a.ID in(select b.ID from B b)可分解为for(a.ID : select * from A a){select * from B b where b.ID=a.ID}每一行A表记录拿出来查询一遍B表适用于 A表数据多 B表数据少的情况exists查询select * from A a where exists(select b.ID from B b)可分解为
2021-08-28 10:10:06 171
原创 springboot 配置mybatis的二级缓存机制,使用redis配置二级缓存demo代码
springboot 配置mybatis的二级缓存机制一级缓存 是sqlSession级别的缓存,面向单个访问用户二级缓存 是namespace级别的缓存,同一个namespace内查询会缓存,一旦发生增删改操作则会清空该namespace缓存,二级缓存面向所有访问用户;二级缓存默认使用hashMap缓存,支持自定义缓存:mybatis支持encache和redismybatis 开启二级缓存的两种方式首先配置 开启MyBatis的全局二级缓存.properties文件或.yml 文件 增加配置
2021-08-25 17:25:08 750
原创 Java实现RSA非对称加密算法demo工具类,RSA加密解密
Java RSA非对称加密算法demo工具类安全性:512位的密钥被视为不安全的;768位的密钥不用担心受到除了国家安全管理(NSA)外的其他事物的危害;1024位的密钥几乎是安全的。运算速度:慢,RSA的速度比对应同样安全级别的对称密码算法要慢1000倍左右/** * @program: test * @description: RSA 非对称加密算法(存在加密公钥、解密私钥) 工具类 * @author: 闲走天涯 * @create: 2021-08-24 11:14 */publi
2021-08-24 12:02:38 628
原创 Java通过Executors提供四种线程池demo测试 executors四种线程池
Java通过Executors提供四种线程池,分别为:newCachedThreadPool创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程。newFixedThreadPool 创建一个定长线程池,可控制线程最大并发数,超出的线程会在队列中等待。newScheduledThreadPool 创建一个定长线程池,支持定时及周期性任务执行。newSingleThreadExecutor 创建一个单线程化的线程池,它只会用唯一的工作线程来执行任务,保证所有任
2021-08-24 10:01:26 632
原创 java多线程创建的三种方法:实现Runnable接口、继承Thread类、通过Callable 和 Future创建
java多线程创建的三种方法通过实现 Runnable 接口;(最基本、最简单)通过继承 Thread 类本身;(本质上也是实现了 Runnable 接口的一个实例)通过 Callable 和 Future 创建线程。(可以获取线程执行后的返回值)1.实现Runnable接口/** * 描述: * 1.实现Runnable接口方式创建多线程 * @author 闲走天涯 * @create 2021/3/16 14:45 * 创建一个线程,最简单的方法是创建一个实现 Runnable 接
2021-08-23 17:35:42 1348
原创 java实现AES 加密解密工具类,AES加密解密
AES 加密解密工具类AES加密解密/** * @program: test * @description: AES 加密解密工具类 * @author: 闲走天涯 * @create: 2021-08-20 15:58 */public class AESUtil { //秘钥 private static final String SECRET_KEY = "wdesjqiw123oehs12sn32nv325w6q23vdf9g6h"; //秘钥位数,限制秘钥
2021-08-20 16:19:12 1396 2
原创 java元注解+拦截器实现自定义注解(自定义依赖注入)
java元注解+拦截器实现自定义注解demo代码下载 java元注解+拦截器实现自定义注解元注解说明 java 四种元注解@Target、@Retention、@Documented 和@Inherited@CmwAutoWired:自定义依赖注入 注意:注入的接口和实现类需要在同一包名下,注解的是类则无限制@FieldAnnotation:自定义属性注解@MethodAnnotation:自定义方法注解@MethodParam:自定义方法参数注解1.web MVC配置/** * 描述:
2021-08-19 14:48:06 551
转载 java 四种元注解@Target、@Retention、@Documented 和@Inherited
java 四种元注解@Target 表示该注解用于什么地方,可能的值在枚举类 ElemenetType 中,包括: ElemenetType.CONSTRUCTOR-----------------------------构造器声明 ElemenetType.FIELD ----------------------------------域声明(包括 enum 实例) ElemenetType.LOCAL_VARIABLE------------------------- 局部变量声明 El
2021-08-19 14:13:31 269
原创 springboot整合spring security安全框架-简单验证账号密码
springboot整合spring security安全框架-简单验证账号密码常用于简单的快速配置登录账号密码。例如swagger登录等1.pom文件引入依赖<!--spring security 权限框架 配置登录账户密码--><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security&
2021-08-12 17:14:22 1068 1
原创 springboot整合jwt(Json Web Token) 令牌授权 demo代码
一、pom文件引入jwt依赖<!--JWT 令牌token --><dependency> <groupId>io.jsonwebtoken</groupId> <artifactId>jjwt</artifactId> <version>0.9.0</version></dependency>二、用户表vo类/** * 描述: * 用户表vo类 * @aut
2021-08-12 16:12:52 542
原创 java 23种设计模式及常用设计模式demo
常用的设计模式1、单例模式2、工厂模式(简单工厂、工厂方法、抽象工厂)3、观察者模式4、模板模式设计模式的六大原则3.1开闭原则 对扩展开放,对修改关闭(尽可能对代码少修改)3.2里氏替换原则 它是面向对象基本原则之一,任何父类(基类)出现的地方,子类都可以出现,也就是子类可以替换父类的任何功能(体现了父类的可扩展性)3.3依赖倒转原则 尽可能面向接口编程,依赖接口而不依赖类3.4接口隔离原则 一个类如果能实现多个接口,尽可能实现多个,为了降低依赖,降低耦合3.5最少知
2021-08-09 17:42:47 370
原创 springboot整合redis分布式锁(普通锁+秒杀锁) demo代码
配置redis可参考: springboot整合redis+连接池+配置redis key过期事件监听 demo代码1.redis 分布式锁 工具类demo/** * 描述: * redis 分布式锁 工具类demo * @author 闲走天涯 * @create 2021/8/7 15:00 */public class RedisLockUtil { private String key; private Object value; private RedisT
2021-08-09 14:05:58 489
原创 springboot整合redis+连接池+配置redis key过期事件监听 demo代码
一、pom文件引入依赖和application.yml文件配置1.pom文件引入依赖 <!-- 阿里fastjson 依赖-> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.31</version>
2021-08-09 13:52:31 597
原创 springboot 整合 swagger2 配置账号密码登录 demo代码
一、pom文件引入swagger依赖 <!-- swagger2-restful接口测试 --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2</version>
2021-08-05 17:18:11 8144
原创 springcloud个人笔记
feign: 类似于restTemplate,进行 服务的调用,也有负载均衡;zuul 网关:类似Nginx进行转发(服务器端负载均衡),用于负载均衡,可以轮询调用不同端口的相同服务名的服务;zuul的起步依赖集成了ribbon和hystrix;hystrix: 可以进行熔断和服务降级(熔断是指所调用服务挂了可以直接调用熔断方法;服务降级是指调用服务超过多少时间就调用备用方法逻辑)ribbon: 负载均衡,feign、zuul都依赖ribbon进行负载均衡;轮询调用相同服务名称;...
2021-08-03 15:50:04 95
原创 springboot 整合activemq 的两种模式 queue和topic 模式 延迟队列 死信队列 demo代码
springboot 整合activemq 的两种模式 queue和topic 模式 demo代码相比较rabbitmq,activemq只有两种模式,队列模式和广播模式mq比较可参考 MQ选型对比ActiveMQ,RabbitMQ,RocketMQ,Kafka 消息队列框架选哪个?springboot 整合 rabbitmq 可参考springboot整合rabbitmq 五种模式及死信队列的demo代码一、配置说明1. pom文件引入activemq依赖<!--activeMq配置
2021-08-03 10:56:41 1244
原创 maven中央仓库和pom依赖库查询网站
maven pom依赖库查询 https://mvnrepository.com/maven 中央仓库- aliyun<mirror> <id>nexus-aliyun</id> <mirrorOf>*</mirrorOf> <name>Nexus aliyun</name> <url>http://maven.aliyun.com/nexus/content/
2021-08-02 16:45:09 2262
原创 mysql sharding-数据库分库 分表 分区 和 设计三范式
mysql 设计三范式第一范式:表的列的具有原子性,不可再分解;(原子性)第二范式:在第一范式的基础上,要求数据库表中的每个实例或行必须可以被惟一地区分;(最小单元)第三范式:在第二范式的基础上,要求一个数据库表中不包含已在其它表中已包含的非主键字段。(不冗余)sharding- 数据库分库 分表 分区一、分库 分表1、业务分库:按业务将不同表放进不同库。每个库可以放在不同数据库服务器上。2、垂直切分:将一个表按照字段分成多表(热门字段、冷门字段),每个表存储一部分字段。表可以放在不同存储设备
2021-08-02 16:23:25 354
原创 springcloud zuul反向代理和服务路由熔断
springcloud zuul路由熔断spring.application.name=spring-cloud-producer 服务断掉时,进行熔断处理@Componentpublic class ProducerFallback implements FallbackProvider { private final Logger logger = LoggerFactory.getLogger(FallbackProvider.class); //指定要处理的 service。
2021-07-31 15:28:47 201
原创 SpringBoot RabbitMQ 配置参数
SpringBoot RabbitMQ 配置参数参数值表示spring.rabbitmq.addresses以逗号分隔的客户端应连接的地址列表。spring.rabbitmq.cache.channel.checkout-timeout如果已达到缓存大小,则等待获取通道的毫秒数。spring.rabbitmq.cache.channel.size要保留在缓存中的通道数。spring.rabbitmq.cache.connection.modeCHANN
2021-07-31 14:37:01 1035
原创 springboot配置Hikari连接池
springboot配置Hikari连接池。主要配置如下,配置项描述构造器默认值默认配置validate之后的值validate重置autoCommit自动提交从池中返回的连接TRUETRUE-connectionTimeout等待来自池的连接的最大毫秒数SECONDS.toMillis(30)=3000030000如果小于250毫秒,则被重置回30秒idleTimeout连接允许在池中闲置的最长时间MINUTES.toMillis(10)=600
2021-07-29 11:37:31 17296
原创 MQ选型对比ActiveMQ,RabbitMQ,RocketMQ,Kafka 消息队列框架选哪个?
理论链接: MQ选型对比ActiveMQ,RabbitMQ,RocketMQ,Kafka 消息队列框架选哪个?.
2021-07-28 17:50:08 187
原创 springboot整合rabbitmq 五种模式及死信队列的demo代码
1、pom文件需要增加amqp依赖 <!--rabbitmq amqp的起步依赖--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId> </dependency>2、配置文件
2021-07-27 16:34:47 361
原创 redis个人笔记
Linux服务器启动redis./redis-server redis.conf关闭redis./redis-cli shutdown连接redis./redis-cliwindows服务器删除Redis服务redis-server --service-uninstallredis服务启动配置文件redis-server --service-install redis.windows.conf --service-name Redis连接redisredis-cli远程连接red
2021-07-26 14:23:07 141
原创 nginx配置方向代理及负载均衡的四种方式
1、单独跳转地址链接 location / { proxy_pass http://127.0.0.1:1234; }2、将静态资源放在nginx /html文件夹下 location / { #首页 index.html index.htm; //静态资源地址 root html; }3、实现nginx负载均衡的四种方式a.热备:如果你有2台服务器,当一台服务器发生事故时,才启用第二台服务器给提供服务。服务器处
2021-07-26 14:17:35 197
原创 springboot 事务回滚的两种方式
springboot.已经自动配置了@EnableTransactionManagement,不需要在启动类加 @EnableTransactionManagement,//第一种方式:注解事务回滚@Override@Transactional(rollbackFor = Exception.class)//第一种方式public Boolean insert(String param) throws Exception { try { int i = testDao.insert
2021-07-24 16:43:02 3077
原创 springboot整合MongoDB测试demo 代码
springboot MongoDB测试demo 代码demo分为4个类,分别为: 学生实体类-student、课程实体类-course、springboot持久层-mongoDao、springboot控制层-mongoController1、学生实体类-student注解进行声明对应的MongoDB 数据设置/** * 描述: * 实体类-学生 student * @author 闲走天涯 * @create 2021/7/23 13:53 */@Data@Document(col
2021-07-24 14:02:22 546
原创 MongoDB 常用命令行整理
命令runoob为所测试的集合更新db.runoob.updateOne({“age”:20},{KaTeX parse error: Expected 'EOF', got '}' at position 17: …et:{"age":"20"}}̲)新增db.runoob.…regex:/cmw/}})// age大于20db.runoob.find({“age”:{KaTeX parse error: Expected 'EOF', got '}' at position 6: gt:2
2021-07-24 10:28:07 146 1
原创 java MongoDB 测试demo
java MongoDB 测试demo 工具包/** * 描述: * MongoDB 测试demo 工具包 * @author 闲走天涯 * @create 2021/7/22 15:09 */public class MongoDBJDBC { private static String host="localhost"; private static Integer port = 27017; /** * 连接 数据库 * @param dbN
2021-07-23 10:23:04 353
原创 Hutool--Java工具类库
????简介Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以“甜甜的”。Hutool中的工具方法来自每个用户的精雕细琢,它涵盖了Java开发底层代码中的方方面面,它既是大型项目开发中解决小问题的利器,也是小型项目中的效率担当;Hutool是项目中“util”包友好的替代,它节省了开发人员对项目中公用类和公用工具方法的封装时间,使开发专注于业务,同时可以最大限度的避免封装不完善带来的bug。??
2021-07-22 11:05:08 749
原创 java8 lambda表达式 学习demo
/** * 描述: * java8 lambda表达式demo * @author 闲走天涯 * @create 2021/4/10 16:25 */public class Demo { public static void main(String[] args) { List<String> stringList = new ArrayList(); stringList.add("one"); stringList.add
2021-07-20 16:11:38 101
原创 Linux 运维必备 150 个常用命令
linux 命令是对 Linux 系统进行管理的命令。对于 Linux 系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件, Linux 系统管理的命令是它正常运行的核心,与之前的 DOS 命令类似。linux 命令在系统中有两种类型:内置 Shell 命令和 Linux 命令。命令功能说明线上查询及帮助命令(2 个)man查看命令帮助,命令的词典,更复杂的还有 info,但不常用。help查看 Linux 内置命令的帮助,比如 cd 命令
2021-07-20 13:34:22 142
i18n JavaScript国际化翻译 jquery.i18n.properties.js
2021-09-03
java 元注解+拦截器实现自定义注解.rar
2021-08-19
layui 定时器表达式 文件资源附件
2020-11-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人