- 博客(416)
- 资源 (33)
- 收藏
- 关注
转载 匿名内部类 是否可以继承其它类,是否可以实现接口
当一个内部类的类声名只是在创建此类对象时用了一次,而且要产生的新类需继承于一个已有的父类或实现一个接口,才能考虑用匿名类,由于匿名类本身无名,因此它也就不存在构造方法,它需要显示地调用一个无参的父类的构造方法,并且重写父类的方法。如果匿名类对另一个类进行扩展,它的主体可以访问类的成员、覆盖它的方法等等,这和其他任何标准的类都是一样的。匿名内部类,就是没有名字的内部类。上面的例子,A类的a()方法打印“甲”,但B类的getA()方法返回的A类对象的引用,是打印“丙”的,因为a()方法被重写了。
2023-02-15 15:53:43
1136
原创 Multimap运用
实它会把相同的key和value的值会覆盖起来,但是相同的key又可以保留不同的value,因为它的entry的实现是一个Set,Set会对相同的Entry进行曲重,所以会有这种情况。Multimap的特点其实就是可以包含有几个重复key的value值,你可以put进多个不同的value,但是key相同,但是又不是让后面的覆盖前面的内容.//逻辑:如果key不存在,加入key,然后再赋值;//1.传统做法:名字=key,List为Value。2.1 首先引入jar包。Mulitmap使用。
2023-02-13 18:03:05
847
转载 Spring Boot + Disruptor
Disruptor 是英国外汇交易公司LMAX开发的一个高性能队列,研发的初衷是解决内存队列的延迟问题(在性能测试中发现竟然与I/O操作处于同样的数量级)。基于 Disruptor 开发的系统单线程能支撑每秒 600 万订单,2010 年在 QCon 演讲后,获得了业界关注。
2023-02-09 16:36:29
467
转载 RabbitMq死信队列那些坑
我们有了死信交换机和路由key后,就像配置业务队列一样,配置死信队列,然后绑定在死信交换机上。确切的说,为每个业务队列分配一个独有的路由key,并对应的配置一个死信队列进行监听,一般会为每个重要的业务队列配置一个死信队列。其次,为业务队列配置死信交换机和路由key,最后为死信交换机配置死信队列。当然,我们不是定义一个公共的死信队列,然后死信消息就到自己跑到死新队列了。正确的做法是使用死信的业务队列配置一个死信交换机,这里同一个项目的死信交换机可以共用一个,为每个业务队列分配一个单独的路由key。
2022-11-10 15:57:42
456
转载 SpringBoot常用注解@RestControllerAdvicel
SpringBoot常用注解@RestControllerAdvicel全局异常处理,配合@RequestMapping使用,自定义异常类 MyException extend RuntimeExceptin, throw new MyException()触发
2022-09-06 17:30:22
675
原创 springboot 中报expected single matching bean but found 2错误解决方案
SSM开发,使用springMVC框架中自带的spring验证框架来验证数据,编写了一个org.springframework.validation.Validator接口的验证器类SignUpValidator来对领域数据进行验证时,报了以下错误:“org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘userController’: Injection of resource de
2022-07-12 17:27:25
1688
原创 延时任务和定时任务的区别及应用
生成订单30分钟未支付,则自动取消http://mp.weixin.qq.com/s?__biz=MzI2MTIzMzY3Mw%3D%3D&chksm=ea5f6561dd28ec77cf96ee1c34fefbd8a17c769efe518b0e5ceb6fd79c0a39a071df721a83af&idx=2&mid=2247510023&scene=21&sn=10146765068e1666f5bf674e4db76593#wechat_redirect..
2022-05-18 11:07:32
1551
原创 spring cloud H版本
1.微服务架构定义:微服务架构是一种架构模式,它提倡将单一应用程序划分成一小组的服务,服务之间互相协调,互相配合,为用户提供最终价值。每个服务运行在其独立的进程中,服务与服务间采用轻量级的通信机制互相协调(通常是基于HTTP协议的RESTful API)。每个服务都围绕着具体业务进行构建,并且能够被独立的部署到生产环境、类生产环境等。另外,应当尽量避免统一的、集中式的服务管理机制,对具体的一个服务而言,应根据业务上下文,选择合适的语言、工具对其进行构建。...
2022-05-18 10:26:45
383
原创 mybatis逻辑分页与物理分页优缺点
一、逻辑分页:1.mybatis自带的分页RowBounds;Java: RowBounds rb=new RowBounds(offset, limit); //offset(从多少条开始);limit(获取多少条) SqlSession sqlSession=sqlSessionFactory.openSession();//sqlSessionFactory通过读取mybatis配置文件的输入流然后通过new SqlSeesionFactoryBu...
2021-10-20 10:50:46
1259
原创 JAVA字符串格式化-String.format()的使用
一、常规类型的格式化String类的format()方法用于创建格式化的字符串以及连接多个字符串对象。熟悉C语言的同学应该记得C语言的sprintf()方法,两者有类似之处。format()方法有两种重载形式。format(String format, Object... args) 新字符串使用本地语言环境,制定字符串格式和参数生成格式化的新字符串。format(Locale locale, String format, Object... args) 使用指定的语言环境,制定字符串格式和参数
2021-07-28 15:03:42
715
原创 springcloud web报404接口feign错误
1.feign.FeignException:status:404 reading:lifeXXXFeign#queryXXXList(EtRexxxBody):content.......排查原因:1>gateway网关未添加模块配置2>web或服务product打包时feign未打包进去
2021-07-16 16:02:02
284
转载 功能实现:spring cloud config配置中心自定义存储方式
Spring Cloud Config配置中心可以使用git,svn以及数据库方式实现配置存储等等,分别在配置文件中对应spring.profiles.active定义入口实现EnvironmentRepository接口。比方说spring.cloud.config.server=jdbc的时候,通过JdbcEnvironmentRepository实现接口,spring.cloud.config.server=svn,通过SvnKitEnvironmentRepository实现接口。具体可以参考这
2021-07-13 20:50:47
487
1
转载 SpringCloud中Feign服务调用请求方式及参数总结
前言最近做微服务架构的项目,在用feign来进行服务间的调用。在互调的过程中,难免出现问题,根据错误总结了一下,主要是请求方式的错误和接参数的错误造成的。在此进行一下总结记录。以下通过分为三种情况说明,无参数,单参数,多参数。每种情况再分get和post两种请求方式进行说明。这样的话,6种情况涵盖了feign调用的所有情况。有个建议就是为了保证不必要的麻烦,在写feign接口的时候,与我们的映射方法保持绝对一致,同时请求方式,请求参数注解也都不偷懒的写上。如果遵循这种规范,可以避开90%的调用错误。
2021-07-09 10:55:53
1023
转载 spring boot--使用异步请求,提高系统的吞吐量
前言:在我们的实际生产中,常常会遇到下面的这种情况,某个请求非常耗时(大约5s返回),当大量的访问该请求的时候,再请求其他服务时,会造成没有连接使用的情况,造成这种现象的主要原因是,我们的容器(tomcat)中线程的数量是一定的,例如500个,当这500个线程都用来请求服务的时候,再有请求进来,就没有多余的连接可用了,只能拒绝连接。要是我们在请求耗时服务的时候,能够异步请求(请求到controller中时,则容器线程直接返回,然后使用系统内部的线程来执行耗时的服务,等到服务有返回的时候,再将请求返回给客
2021-02-21 22:57:00
419
转载 玩转springboot2.x之异步调用@Async
0、序言我们在正常开发中一般都是通过同步的方式进行处理的,但是有时候执行多个任务并不是都需要一起执行完才行,采取异步的方式可以有效提升一个请求响应的时间。例如我们进行用户注册,如果是通过邮箱注册一般会发送激活邮件,系统添加用户信息到数据库和发送邮件这2个任务完全可以分开来做,这样用户可以很快接受到注册成功的消息。接下来就是 SpringBoot 异步编程具体操作。SpringBoot 异步编程拢共分2步。1、在SpringBoot 启动类上声明@EnableAsync具体...
2021-02-20 22:24:39
185
转载 SpringBoot:使用 @Lazy 注解懒加载
为什么需要懒加载?我们知道,在 SpringBoot 应用程序启动的时候,会实例化一些对象加入到 IOC 容器里边,这个过程是非常耗时的,那我们想要减少这个耗时的过程就需要 @Lazy 注解对象加入容器的时机如下代码package com.startdusk.forgot.service;import org.springframework.stereotype.Component;@Servicepublic class LazyService { public Laz
2021-02-20 21:59:32
3231
转载 rank() over,dense_rank() over,row_number() over的区别
rank() over,dense_rank() over,row_number() over的区别1.rank() over:查出指定条件后的进行排名。特点是,加入是对学生排名,使用这个函数,成绩相同的两名是并列,下一位同学空出所占的名次。select name,subject,score,rank() over(partition by subject order by score desc) rankfrom student_score;2.dense_rank() ove..
2020-09-11 10:53:47
196
转载 mybatis3中@SelectProvider的使用技巧
mybatis3中增加了使用注解来配置Mapper的新特性,本篇文章主要介绍其中几个@Provider的使用方式,他们是:@SelectProvider、@UpdateProvider、@InsertProvider和@DeleteProvider。1.使用@SelectProvider@SelectProvider是声明在方法基本上的,这个方法定义在Mapper对应的的interface上。 public interface UserMapper { @SelectProvi.
2020-09-10 17:10:29
506
转载 Mybatis @SelectProvider注解详解
@SelectProvider(type=xxxx.class,method=”xxxx”)个人理解: 用自定义的provider类构造SQL语句1属性详解:type 属性用于指定获取sql语句的指定类method 属性用于指定类中要执行获取sql语句的方法例1(单个参数):mapper中 @SelectProvider(type=BaseUserProvider.class,method="selectUserById") public BaseUs.
2020-09-10 16:45:50
3588
转载 【Mybatis】Mybatis中的逻辑分路:case-when-then-else-end和hoose-when-otherwise
一、问题在java代码中,基本的判断逻辑分路可以使用if,else if,else;但是如果在Mybatis中是否有对应的逻辑判断分路,来帮助我们在Mybatis的sql里,做逻辑判断?二、分析Mybatis中有,下面介绍两种,一是case-when-then-else-end;另一种是choose-then-otherwise,后者形式如下:(Mybatis只有if标签,没有else标签)<choose> <when> </when>
2020-09-08 15:08:30
2895
转载 java通过报文交换数据
1.交互模式交互模式为:请求/响应交互模式。需要数据一方作为请求方,提供数据一方作为响应方。请求方发送一个带有参数的报文到响应方,响应方根据请求ip地址、报文中的参数等判断请求是否合法,如果不合法,返回包含错误信息报文,如果合法,则根据请求报文中的参数获取相应的数据,然后组装成响应报文发送回请求方。请求方可以是java程序、.net程序、php程序等,响应方是一个servlet。为了简单起见,一个servlet对应一个接口。2.接口接口的请求和响应采用 XML 作为具体业务报文的载体,请求为
2020-07-25 22:26:30
598
原创 StringBuilder和StringBuffer哪个线程安全?执行效率高?
StringBuilder是线程不安全的,执行效率高StringBuffer是线程安全的,加了synchronized同步关键字,执行效率高
2020-07-02 10:56:12
1767
转载 搭建SpringCloud项目,并实现自动化部署
前一阵子一直在忙着做项目,最近有空,把项目中用到的SpringBoot微服务相关架构再梳理一遍。项目资源:https://github.com/sunroyi/SpringCloud主要分为以下几步:(1)搭建SpringBootService,这里是各个微服务的业务逻辑。(这里搭建了2个Service,用来测试熔断)(2)搭建SpringBootEureka,用来发现服务。(3)搭建SpringBootConfig,用于动态维护配置文件。(4)搭建SpringBootConsume
2020-07-01 16:28:17
1633
转载 spring cloud 常见面试题 来理解微服务(通俗易懂)
为什么要谈这些理论知识呢 理论知识 =面试时候的谈资 !!!你只有进去公司才有资格去做一个码农ok话不多说经历如此漫长的互联网发展 以本人的拙见软件开发粗略的分为三个阶段1 单机版 也就是说把要做的所有应用程序放置在一个 项目中最后将之后的war或者jar 部署在你的服务器 这种模式随着发展 终将会被...
2020-07-01 14:04:34
432
转载 谈谈CountDownLatch和CyclicBarrier
Java中CountDownLatch和CyclicBarrier都是用来做多线程同步的。下面分析一下他们功能的异同。CountDownLatchCountDownLatch基于AQS(同步器AbstractQueueSynchronized),CountDownLatch中有一个内部类Sync,Sync继承自AbstractQueuedSynchronizer。我们先看一个CountDownLatch的例子,然后再具体分析源码。一个CountDownLatch例子import j.
2020-06-15 15:58:53
284
转载 SpringBoot+RabbitMQ启动出现报错问题总结
1.SpringBoot中使用RabbitMQ,解决无法连接AmqpConnectException: java.net.ConnectException: Connection timed out:环境:RabbitMQ是安装在虚拟机中Centos7版本:RabbitMQ 3.5.7SpringBoot 2.1.5检查: 先检查端口,15672是插件的端口,在SpringBoot的配置文件中,应该使用5672 在linux服务器注意开启这两个端口。 登录用
2020-06-09 11:35:24
4455
转载 centos7.2安装rabbitmq和宝塔
centos7.2安装rabbitmq教程环境: centos7.2rabbitmq依赖erlang,需要先安装erlang1 安装erlangrpm -Uvh https://download.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpmyum -y install erlang2 安装RabbitMqwget http://www.rabbitmq.com/releases/rabbitmq-server/v3..
2020-06-08 14:55:28
791
原创 HTML页面一键分享到QQ空间、QQ好友、新浪微博、微信代码
<div class="bshare-custom"><a title="分享到QQ空间" class="bshare-qzone"></a><a title="分享到新浪微博" class="bshare-sinaminiblog"></a><a title="分享到人人网" class="bshare-renren"></a><a title="分享到腾讯微博" class="bshare-qqmb"><
2020-06-05 17:22:06
9918
原创 服务器学习文档
1.服务器学习文档,包括centos,ubuntu,mac,window,myql,nginx,linux,linux基本操作,其他问题,安全问题,redis,日志分析,服务器优化,服务器安全,ThinkPhp编程,PHP,攻击,文档整理的很好,记录一下,学习的时候方便查服务器文档...
2020-05-15 11:37:01
255
原创 Linux15个付费漏洞修复
RHSA-2018:1454-关键: dhcp 安全更新 RHSA-2018:3854-低危: ntp 安全更新 RHSA-2018:1777-重要: procps 安全更新 RHSA-2018:2846-重要: 内核 安全和BUG修复更新 RHSA-2019:0415-重要: 内核 安全和BUG修复更新 RHSA-2019:1169-重要: 内核 安全和BUG修复更新 RHSA-2019:0711-低危: openssh 安全更新 ..
2020-05-15 10:54:06
322
转载 ECS云服务器 2019 LUNIX漏洞修复集合(陆续更新中)
最近云服务器漏洞越来越多了,不管大小服务商对于运营者来说都搞得心惊胆颤的,找资料又不好找,百码云即本站站长特意把一个常用的修复分享出来,以供大家参考使用!1、RHSA-2018:3408-重要: git 安全更新修复步骤:1、进入实例列表》远程连接2、输入账号密码(即:阿里云创建时你设置的初始账号密码)注:输入密码时,远程连接上是不会显示密码的,输完后直接回车即可3、修复更新命令: 1 2 3 yum update git
2020-05-15 09:31:33
479
原创 php websocket远程调用curl查询数据库
<!DOCTYPE html><html><head> <title>简易聊天Demo</title> <meta charset="utf-8"> <meta name="viewport" content="width=device-width,initial-scale=1, maximum-scale=1, user-scalable=no"> <link href="ht.
2020-05-14 16:31:37
1371
转载 PHP使用CURL详解
curl是PHP的一个扩展,利用该扩展可以实现服务器之间的数据或文件传输也就是说curl就是一个工具,用来做服务器之间数据、文件传输的工具用来采集网络中的html网页文件、其他服务器提供接口数据等开启curl扩展(1)在php.ini里面开启curl这个扩展(2)将PHP的安装路径保存到环境变量的系统变量中(环境变量之间的分隔符是英文的分号)(3)重启apache服务器(4)重启计算机curl的一些常用配置项(1)通过CURLOPT_RETUR...
2020-05-14 14:36:57
1715
原创 Typora中文版怎么用
Typora中文版是一款非常好用简洁的文档markdown编辑器,Typora汉化版可以你快速编程markdown语法,将对应的输入文字自动排版,有序的将代码行云流水的在屏幕上。一键进行插入图像、代码、表格、文章编辑等等,多个编辑功能让你快速完成工作。Typora中文版说明 你只需在Typora打字时输入正确的 Markdown 语法标记 (如 ##二级标题、 **粗体**),Typora中文版就像触发了键盘快捷键一样,将对应的文字会即时转变为它们应该成为的样子。 斜体、加粗、插入图片、引用、
2020-05-13 23:59:45
1568
原创 php判断两个给定日期是否在同一周,是否在同一月
//判断两个给定日期是否在同一周function getSameWeek($pretime,$aftertime){ $flag = false;//默认不是同一周 $afweek = date('w',$aftertime);//当前是星期几 $mintime = $aftertime - $afweek * 3600*24;//一周开始时间 $maxtime = $aftertime + (7-$afweek)*3600*24;//一周结束时间 if ( $p.
2020-05-13 14:09:22
894
转载 如何恢复误删除的数据库
Mysql数据库被误删除了怎么恢复,不要着急,耐心看下面解决办法。本方法适用于Mysql数据库开启binlog日志,如果没有开启,抱歉,不需要往下看了。如何看数据库有没有看起开启binlog日志,查看配置文件或者执行# cat /etc/my.cnflog_bin=mysql-bin# mysql -uroot -pEnter password:mysql> show variables like'log_bin%';+----------------------...
2020-05-13 09:21:04
6035
1
原创 phpcms api接口开发
所有的编程语言都是从数据库的CRUD开始,这是最基础的,只有CRUD学会了,才可以考虑开发逻辑,把CRUD做到极致,考虑到程序面临的各种问题,才能不断提升自己的开发功能。现在,就介绍一下Phpcms面向接口的开发,最简单的CRUD。<?php//defined('IN_PHPCMS') or exit('No permission resources.');这里可以不用...
2020-04-23 09:22:32
1511
JDK 9.0 windows版本学习下载
2024-09-03
webshell扫描器.exe
2019-11-07
java判断PC端,Andiro,IOS
2019-04-15
sublime Text3
2018-09-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人