学习记录
文章平均质量分 70
小小卡尔
选择很重要
展开
-
反射就这么简单
什么是反射?反射就是通过动态的方式获取一个对象的类信息,前提是该类已经在jvm加载过了,反射也是面对对象的多态特性的基本原理。反射有什么用?可以通过获取到该类信息来实例化一个该类对象,实现了类之间的解耦,从而可以引出动态代理。怎么样实现反射?有多种是实现可以获取类,下面是例子是通过Class.forname()。Test.java** * *被实例化对象的类 */public class Test { public Test() { System.out.pri原创 2020-08-03 10:27:39 · 105 阅读 · 0 评论 -
Swagger---接口文档维护---简单使用教程
使用Swagger,就是把相关的信息存储在它定义的描述文件里面(yml或json格式),再通过维护这个描述文件可以去更新接口文档,以及生成各端代码。而Springfox-swagger,则可以通过扫描代码去生成这个描述文件,连描述文件都不需要再去维护了。所有的信息,都在代码里面了。代码即接口文档,接口文档即代码。原文链接:https://www.jianshu.com/p/349e130e40d5...原创 2020-06-30 17:55:12 · 938 阅读 · 0 评论 -
NotClassDefFoundError的错误--涉及内部类的java程序在控台运行就会报的错误
545454544原创 2020-06-30 17:27:58 · 710 阅读 · 0 评论 -
class文件打包成jar,并且执行jar
1、单一class->jarjar -cf 自定义的jar包名.jar 需打包的class名字.classjar -cf xx.jar xx.class示例:jar -cf Server.jar Server.class将当前路径下的Server.class打包成Server.jar2、打包某一路径下的所有classjar cvf 自定义的jar包名.jar 需打包的某一路径jar cvf xx.jar [path]示例:jar cvf C:\test.jar C:\java即是原创 2020-06-30 16:40:08 · 1390 阅读 · 0 评论 -
redis设置登录密码,提高安全性--生产环境必备良药--老哥不会还不知道吧,不会不会吧!!!
文章目录1、修改redis.conf2、重启reids3、客户端重新连接redis3.1、不输入密码登录3.2、输入密码登录4、修改密码4.1、修改redis.conf4.2、redis客户端命令修改4.3、验证1、修改redis.conf将 #requirepass foobared 中的 # 去掉,表示登录时redis客户端需要密码验证,密码就是 foobared。2、重启reids这我就是不说了,方法很多,直接使用redis开关或是重启的命令,或者杀死进程。还说说一种最有效的吧,不然被??原创 2020-06-18 10:35:00 · 1329 阅读 · 2 评论 -
spring cloud——Feign为GET请求时的多个对象参数传递--问题解决
在?解bug,挺急的。1. 添加依赖不使用maven的大佬,自己去找下其他的吧。依赖查找 <!-- https://mvnrepository.com/artifact/io.github.openfeign/feign-httpclient --> <dependency> <groupId>io.github.openfeign</groupId> <artifactId>原创 2020-06-15 12:57:15 · 4229 阅读 · 10 评论 -
socket(套接字)编程--java实战------不得不会的socket编程套路(附有聊天室实现思路)
1、socket是啥套接字(socket)是一个抽象层,应用程序可以通过它发送或接收数据,可对其进行像对文件一样的打开、读写和关闭等操作。套接字允许应用程序将I/O插入到网络中,并与网络中的其他应用程序进行通信。网络套接字是IP地址与端口的组合。–这波百度百科怎么说来点直观的吧,不然不会大伙还是不会!!win+r ->输入:cmd ->在命令台输入:netstat -ano 就可以看到你当前电脑的所有套接字了哦,也就是socket == ip号+端口号!!!2、为什么会socket这个原创 2020-06-06 20:14:53 · 440 阅读 · 0 评论 -
RabbitMq七种工作模式,结合简单的java实例使用,答应我不要再说你不会RabbitMq了,好吗,宝贝?
文章目录一、Maven依赖添加二、七种工作模式的java实例1、简单模式1.1.1、EasyRecv.java1.1.2、EasySend.java1.2.1、RabbitmqConnectionUtil .java1.2.2、UtilSend.java1.2.3、UtilRecv.java2、工作队列2.1.1、Sender1.java2.1.2、Sender2.java2.1.3、Receiver1.java2.1.4、Receiver2.java2.1.5、结果3、发布/订阅(fanout)3.1.1原创 2020-06-05 17:15:21 · 816 阅读 · 0 评论 -
双非学子第一次java实习面试--弱小、无助
我会将整个流程都写出来,可能我这个经历是更符合大多数人,个人经过三个月的学习,第一次面试实习,公司叫我明天来上班。个人大概情况:双非本科,没获过什么大奖,考试成绩也非年级前10%这种,这或许就是普通的味道吧。###面试...原创 2020-06-04 16:15:52 · 484 阅读 · 0 评论 -
RabbitMq安装与启动,结合简单的java实例使用
安装和启动java实例转载 2020-06-03 17:37:26 · 122 阅读 · 0 评论 -
redis安装教程和redis集群搭建--主从复制(读写分离)、中间人模式(主仆兼具、去中心化)、反客为主、哨兵模式,从实战出发的保姆级别教程
文章目录1、redis安装1.1、下载reids.tar.gz1.2、上传redis到linux服务器的/opt目录下,并赋予相应权限并解压。1.3、安装redis1.4、在根目录下创建文件夹myredis1.5、修改myredis中的redis.conf配置文件1.6、进入/usr/local/bin目录下运行redis1.7、redis客户端连接测试2、主从复制1、redis安装1.1、下载reids.tar.gz下载地址:http://download.redis.io/releases/,可以原创 2020-05-26 11:20:08 · 1152 阅读 · 0 评论 -
事务对数据库的性能有什么影响?有无索引查找对数据库性能影响多大?不跟你多bb,反手就是一波实例连招---MySql insert 2000万条数据性能测试和select有无索引查找测试
通过对mysql插入的测试可以得出的结论:增加一次事务的提交中执行多条sql可以提高速度。实测:插入300万条数据,采用一次事务提交一条sql语句,耗时2小时以上,具体没统计,提前终止了。插入1000万条数据,采用一次事务提交10万条sql语句,耗时20多分钟,将近半小时。TestDemo测试代码import mapper.TestMapper;import org.apach...原创 2020-05-15 12:28:24 · 2563 阅读 · 2 评论 -
java动态代理机制实例流程对照,翻译翻译什么是动态代理?翻译翻译!!原来这就是动态代理!!
1、什么是动态代理?动态代理就是根据对象在内存中加载的Class类创建运行时类对象,从而调用代理类方法和属性。换句话说就是程序运行时通过反射得到一个对象类,再通过代理方法得到一个反射得到的类的被代理对象,该被代理对象可以调用被代理类方法和属性。2、为什么需要有动态代理?减少代码冗余。避免冗余代码的混乱和分散。3、什么情况下需要动态代理?日志服务,日常程序的维护肯定少不了打日志,程序的每一个结点中的程序运行的每一刻发生的变化都需要日志的输出。对于每个结点打日志这项服务,可以统一通过配置原创 2020-05-14 00:45:16 · 618 阅读 · 0 评论 -
微服务框架环境搭建:dubbo2.6.0+zookeeper在linux上安装并创建java服务实例实现调用---保姆般的呵护教学
步骤:1. 登录linux服务器这个就不说了,很简单,本人使用的xshell 6.0,若没有服务器可以登录虚拟机,一样的。2. 在/root下创建opt文件夹 (命名你喜欢就好)本测试服务已经创建过了,所以提示:mkdir: cannot create directory ‘/opt’: File exists命令:mkdir /opt3.上传文件上传tomcat、dubbo、zookeeper的压缩包。按下图所示使用命名:put 本地文件路径即可上传文件...原创 2020-05-13 20:43:22 · 777 阅读 · 0 评论 -
org.springframework.jms.listener.adapter.ListenerExecutionFailedException MQ监听错误
文章目录错误提示:错误原因:解决思路:错误提示:org.springframework.jms.listener.adapter.ListenerExecutionFailedException: Listener method could not be invoked with incoming message错误原因:发送消息时的数据格式和接收消息的类型不一致,就会导致该错误。比如:ActiveMq中有两种消息的数据结构,TextMessage和MapMessage。下面图1和图2体现了一原创 2020-05-11 00:31:54 · 4389 阅读 · 0 评论 -
spring boot 若是在测试类中使用ioc注入bean时,需在测试类中使用@RunWith(SpringRunner.class)
原因:若是不使用@RunWith(SpringRunner.class),则会出现注入的bean为空。如下图中的activeMQUtil变量指向会为空,也就是注入失败(前提保证ActiveMQUtil已经在ioc容器中实例化)。扩展:@RunWith就是一个运行容器@RunWith(JUnit4.class)就是指用JUnit4来运行@RunWith(SpringRunner.class)意思就是指定SpringRunner来运行。我对@RunWith(SpringRunner.class)通原创 2020-05-08 17:38:36 · 855 阅读 · 0 评论 -
请求返回解析错误,Error resolving template "xxxxx"template might not exist or might not be accessible
错误提示:Error resolving template "xxxxx"template might not exist or might not be accessible by any of the configured Template Resolvers问题原因返回参数含有json、xml等数据解决思路:在Controller的接收方法前面加上@ResponseBody注解即可...原创 2020-05-07 16:42:18 · 3307 阅读 · 0 评论 -
集群中三代系统登录解决方案的演进,一代比一代强,所谓长江后浪推前浪
在这里插入代码片原创 2020-05-05 23:00:24 · 451 阅读 · 3 评论 -
dubbo出现没有提供者错误 No provider available from registry x.x.x.x:2181 for service x.x.x.x
错误返回提示:No provider available from registry x.x.x.x:2181 for service x.x.x.x may be providers disabled or not registered ?解放思路:第一:代码没有问题,但是相应的服务没有开启,找到并开启。第二:代码有问题,没有在相应的服务加 @Service注解,且该注解属于co...原创 2020-05-04 21:50:36 · 6754 阅读 · 0 评论 -
oauth2协议的社交登录开发--项目中引入第三方平台的账号登录,以新浪微博账号为例
文章目录1、新浪微博第三方登录应用接口申请:1.1、https://open.weibo.com1.2、https://open.weibo.com/connect1.3、填写资料1.4、填好之后邮箱认证1.5、给自己应用起名1.6、创建应用完成后,进https://open.weibo.com/apps看自己的应用。1.7、获得自己的授权id和授权密钥1.8、 修改回调地址2、具体实现过程有如下...原创 2020-04-30 21:40:44 · 1311 阅读 · 0 评论 -
Idea 中 maven插件突然消失,项目无法运行,人给吓尿了,靠着尿性解决了。
文章目录问题:解决思路:问题:不知为什么打开电脑又是开开心心码代码的一天,但是说时迟那时快,我的项目怎么就启动不起来呢,我的maven窗口也不见了项目启动不起来,只能在哪里对idea疯狂输出:垃圾软件,还我青春。期间还对idea进行不断开关(秘笈:反复横跳),甚至对电脑开关机,然而发现了最终问题的我,还是想说一句:idea真香。解决思路:依下图的调出Idea的Settings界面。...原创 2020-04-30 16:45:25 · 2289 阅读 · 0 评论 -
nginx的负载均衡的5种分发方式,说到面试官心里去
1、轮询方式 (nginx默认的),按每个请求时间顺序来分发服务器,能够识别服务器是否故障,可自动关闭对故障服务器请求分发按服务器请求时间 。2、按权重分发,是应用在生成环境下服务器性能不一的情况下,可以人为认定给各个服务器设置各自权重,保证更多的请求打到性能较好的服务器上。3、ip_hash算法,对客户端的ip进行hash 得到的hash值用来保证其下一次进来时,nginx任然会给其请求打...原创 2020-04-30 09:51:08 · 1414 阅读 · 0 评论 -
分布式模块间工具类引用坑点
坑点:spring boot启动类的路径路径必须位于其他需要被引用到的分布式模块中的同层以及之上,要不然就会出现找不到包的情况。比如下图,需别引用的util下的工具类路径为top.san.gmall.util,springboot的启动类路径则必须为top.san.gmall.util之上,要不然扫描不到该包,所以这里的springboot启动类路径为top.san.gmall。挺简单...原创 2020-04-27 02:53:34 · 305 阅读 · 0 评论 -
response.addCookie(cookie)设置的cookike名字只能为JSESSIONID 错误
文章目录1、问题说明2、解决问题1、问题说明百度了很多答案,大致都是说注意设置domain和path先附上我的 CookiUtil类,这里可以获取、创建、删除Cookie。import javax.servlet.http.Cookie;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.Ht...原创 2020-04-23 21:06:52 · 1343 阅读 · 0 评论 -
elasticsearch高亮属性设置问题 搜索条件有的字段才能设置高亮
也就是说要传参给dsl的这个参数才能设置高亮。通过在kibana下可以直观的看到在must下有的skuDesc字段可以设置高亮must下没有的字段不能高设置高亮原创 2020-04-21 21:59:29 · 2843 阅读 · 1 评论 -
查看kibana的进程id号 来进行杀死
错误:ps -ef|grep kibana正确:fuser -n tcp 5601ps -ef|grep node原创 2020-04-20 21:52:04 · 1005 阅读 · 0 评论 -
elasticsearch配置集群
文章目录1、elasticsearch.yml1.1、这里是该集群的群名 我是直接去掉注释1.2、你当前机器在集群中的结点名字,这里我也是直接去掉注释,就是皮1.3、设置此机器master是否可以成为master1.4、设置此机器是否可以是数据结点1.5、es数据存储路径,一般该路径,就你解压安装的路径/data,data文件本身就存在的了1.6、es日志输出路径,一般该路径,就你解压安装的路径/...原创 2020-04-20 00:34:10 · 1293 阅读 · 0 评论 -
elasticsearch集群如何防止脑裂
es脑裂:一个大的es集群分裂成了多个小的集群。比如有 a b c d 四个esa b c d 之间选取一个master,比如master是a。若某时刻 c d 访问不到a ,b能访问到a。c d之间会重新选举一个master。这样整个a b c d的es集群就会分裂为a b 和 b c 两个集群。防止es脑裂的思路:让集群中可以用主节点(master)个数是所有节点个数的 一...原创 2020-04-19 01:36:30 · 1772 阅读 · 0 评论 -
redis缓存穿透、缓存击穿、缓存雪崩等缓存在高并发和安全压力下的一些问题解决方案--redis分布式锁:set px nx、Redisson的实现-java代码层控制分布式锁
文章目录1、缓存击穿是某一个热点key在高并发访问的情况下,突然失效,导致大量的并发打进mysql数据库的情况解决:在正常的访问情况下,如果缓存失效,如果保护mysql,重启缓存的过程使用redis数据库的分布式锁,解决mysql的访问压力问题2、缓存穿透是利用redis和mysql的机制(redis缓存一旦不存在,就访问mysql),直接绕过缓存访问mysql,而制造的db请求...原创 2020-04-17 08:47:45 · 1122 阅读 · 0 评论 -
解决jedis连接linux下的redis中 Could not get a resource from the pool 异常
Could not get a resource from the pool ->不能从连接池中得到资源以下redis安装在linux在自己的安装目录下,如我的 /usr/redis编辑redis.conf :vi redis.ocnf将下图的区域改为本机的ip地址,如本人的ip为192.168.154.3原本默认应是:bind 127.0.0.1改为 ...原创 2020-04-17 01:04:18 · 968 阅读 · 0 评论 -
学习记录 - ccf-csp 小明种苹果(续)
题目链接:http://118.190.20.162/view.page?gpid=T93需登录才能看到c代码:#include<stdio.h>int main(){ long long int t=0l; int d = 0,e = 0; int i,j,k,n,m,dp,flag =0; //dp每棵树当前个数 int sq,tk[1001]; //...原创 2020-04-16 18:34:35 · 761 阅读 · 0 评论