摘要: Redis内存数据集大小上升到一定大小的时候,就会施行数据淘汰策略。 相关知识:Redis提供6种数据淘汰策略: voltile-lru:从已设置过期时间的数据集(server.db[i].expires)中挑选最近最少使用的数据淘汰 volatile-ttl:从已设置过期时间的数据集(server 阅读全文
posted @ 2021-01-04 08:58 月半^ 阅读(291) 评论(0) 推荐(0)
摘要: 一般使用list结构作为队列,rpush生产消息,lpop消费消息。当lpop没有消息的时候,要适当sleep一会再重试。 如果对方追问可不可以不用sleep呢? list还有个指令叫blpop,在没有消息的时候,它会阻塞住直到消息到来。如果对方追问能不能生产一次消费多次呢?使用pub/sub主题订 阅读全文
posted @ 2021-01-04 08:57 月半^ 阅读(88) 评论(0) 推荐(0)
摘要: Overload是重载的意思,Override是覆盖的意思,也就是重写。 重载Overload表示同一个类中可以有多个名称相同的方法,但这些方法的参数列表各不相同(即参数个数或类型不同)。 重写Override表示子类中的方法可以与父类中的某个方法的名称和参数完全相同,通过子类创建的实例对象调用这个 阅读全文
posted @ 2021-01-04 08:54 月半^ 阅读(54) 评论(0) 推荐(0)
摘要: 1.禁止指令重排序 创建对象要经过如下几个步骤 分配内存空间 调用构造器,初始化实例 返回地址给引用 但是JVM具有指令重排的特性,执行的顺序有可能变成 a-c-b,指令重排在单线程下不会出现问题,但是在多线程下会导致一个线程获得还没有初始化的实例。例如:线程T1执行了a,b,此时线程T2调用get 阅读全文
posted @ 2021-01-04 08:52 月半^ 阅读(154) 评论(0) 推荐(0)
摘要: 有两种写法,⼀种是实现 HandlerInterceptor 接⼝,另⼀种是继承适配器类,接着在接⼝⽅法 当中实现处理逻辑,然后在 SpringMVC 的配置⽂件中配置拦截器即可: mvc:interceptors mvc:interceptor <mvc:mapping path=”/modelM 阅读全文
posted @ 2021-01-04 08:51 月半^ 阅读(505) 评论(0) 推荐(0)
摘要: 一对多: 1.实体类中:一的一方用set集合保存多的一方 ,多的一方用对象来保存1的一方 2.在一的一方的映射文件中配置set标签,set标签中name属性=“存放多的一方的属性”,key标签中的column属性为外键字段。onetomany标签的class属性为多的一方的全类名。 3.在多的一方的 阅读全文
posted @ 2021-01-04 08:50 月半^ 阅读(94) 评论(0) 推荐(0)
摘要: java的内存分为两类,一类是栈内存,一类是堆内存。栈内存是指程序进入一个方法时,会为这个方法单独分配一块私属存储空间,用于存储这个方法内部的局部变量,当这个方法结束时,分配给这个方法的栈会释放,这个栈中的变量也将随之释放。 堆是与栈作用不同的内存,一般用于存放不放在当前方法栈中的那些数据,例如,使 阅读全文
posted @ 2021-01-04 08:49 月半^ 阅读(77) 评论(0) 推荐(0)
摘要: Eureka:各个服务启动时,Eureka Client都会将服务注册到Eureka Server,并且Eureka Client还可以反过来从Eureka Server拉取注册表,从而知道其他服务在哪里 Ribbon:服务间发起请求的时候,基于Ribbon做负载均衡,从一个服务的多台机器中选择一台 阅读全文
posted @ 2021-01-04 08:47 月半^ 阅读(81) 评论(0) 推荐(0)
摘要: abstract的method 不可以是static的,因为抽象的方法是要被子类实现的,而static与子类扯不上关系! native方法表示该方法要用另外一种依赖平台的编程语言实现的,不存在着被子类实现的问题,所以,它也不能是抽象的,不能与abstract混用。例如,FileOutputSteam 阅读全文
posted @ 2021-01-04 08:46 月半^ 阅读(70) 评论(0) 推荐(0)
摘要: inverse常用于一对多,多对多的映射文件中的set标签,inverse属性设置为true,是讲维护外键权反转到另一方,在一对多中,默认为1的一方,在多对多中,双方都维护,不设置权限反转会抛异常。 阅读全文
posted @ 2021-01-04 08:44 月半^ 阅读(76) 评论(0) 推荐(0)