- 博客(113)
- 资源 (5)
- 收藏
- 关注
原创 kafka自动提交位移全解析
kafka里面有两个参数props.put("enable.auto.commit", "true");props.put("auto.commit.interval.ms", "2000");其中第二个参数是自动提交位移时间,很多文档讲的不清楚,把这个自动提交位移翻译成每隔 几秒自动提交一次,这个完全是错误的。直接看pool的代码里面看更新源信息的方法看第一个方法找到源码把当前时间与上次提交的时间作比较,是否超过 设置的 提交间隔,如果超过的话,提.
2020-09-15 15:58:17
975
原创 List为什么不能一边遍历 一边操作
1、对于ArrayList,在使用Iterator遍历时,不能使用list.add()、list.remove()等改变list的操作,只能用it.remove()原因是ArrayList不是线程安全的,需在单线程环境下使用,如果在遍历时还有别的线程做增删操作,必然会有问题,如数组下标越界ArrayList#Iterator设计的是不能在迭代时有别的线程对list修改,此种修改对当前迭代器是可能存在问题的,所以增加了对modCount的校验但当前迭代器可以remove,因为它自己删除就不是并发修改了
2020-05-22 09:51:06
860
原创 hashmap和ehcahe的区别
而一个标准Cache的主要特征有:过期时间容量规划(重要)清除策略(重要)命中率统计从以上条件看hash并不是一个很好的缓存容器,更多的考虑ehcahe等...
2020-04-24 14:09:03
202
原创 设计模式-总结
1.单例模式:懒汉,饿汉,加锁,双重判断(加voletal),静态内部类2.工厂3.静态工厂4.代理5.装饰器,区分代理和装饰器,代理模式的类是内部创建好,装饰器是外部传入6.观察者模式7.原型模式(实现clonable接口)8.适配器模式:创建一个对象,调另一个对象的方法9.组合模式:放一个list属性10.策略模式:方法参数是接口,具体的策略要自己实现1...
2019-09-03 18:37:37
217
原创 restemplate发送安全认证的http请求
业务中,会访问到需要安全认证的服务。如发送请求时,需要把resttemplate设置头信息,具体实现如下 String url = "http://localhost:8080/testController"; HttpHeaders header = new HttpHeaders(); //输入自己的用户名和密码 Str...
2019-05-22 09:48:40
733
原创 JoIntPoint常用方法
在常见的切面中,常用的参数有:JointPoint和ProceedingJoinPoint,其中ProceedingJoinPoint继承JointPoint,ProceedingJoinPoint用在@Arround注解的方法参数里,下面分开谈1.JointPoint的常用方法public void invoke(JoinPoint joinPoint) throws Throwab...
2019-04-28 11:56:06
5358
原创 java 集合list转数组的几种方式
1.toArrayeg: list.toArray(new String[list.size])这里要注意list类型,和数组的类型是一致的,这里我默认list是string,假如list是Integer类型,那就是list.toArray(new Integer[list.size])2.stream 流list.toStream.toArray(String[]:new)...
2019-04-04 09:35:37
21033
2
原创 Java zip解压工具类
分享一个自己用的zip工具类public class ZipUtils { public static void unZip(File srcFile, String destDirPath) throws RuntimeException { long start = System.currentTimeMillis(); // 判断...
2019-03-13 17:48:55
2246
1
原创 shiro 源码加密方式
/** * @description 源码的加密方式 * @param args */public static void main(String[] args) { // 加密的方式 String hashAlgorithmName = "MD5"; // 明文的密码 Object credentials = "123456"; // 盐值 ...
2019-02-13 16:51:40
329
原创 eureka集群read timeout异常
eureka集群后,启动privder向eureka集群注册时,报错 com.sun.jersey.api.client.ClientHandlerException: java.net.SocketTimeoutException: Read timed out at com.sun.jersey.client.apache4.ApacheHttpClient4Handler....
2018-12-27 13:38:18
3917
原创 扫码登录实现原理解析
1.浏览器生成一个二维码,二维码里面包含微信的URL和一个随机的UUID,并轮旬给服务器发消息2.客户端扫描二维码,得到一个把用户的信息和UUID绑定,发送给服务器3.服务器拿到这个用户的信息和UUID4.浏览器请求消息,服务器拿到用户的信息,进行更新...
2018-10-28 18:15:32
3637
原创 蓄水池算法
此算法经常用于不知道总体规模有多大的时候,进行数据的抽样,保证数据的公平性public class ReservoirSamplingTest { private int[] pool; // 所有数据 private final int N = 100000; // 数据规模 private Random random = new Random(); @...
2018-10-28 16:53:44
586
原创 桶排序
#include <stdio.h> int main() { int a[11],i,j,t; for(i=0;i<=10;i++) a[i]=0; //初始化为0 for(i=1;i<=5;i++) //循环读入5个数 { s...
2018-10-28 16:42:33
158
原创 冒泡排序
class demo {int temp;int a[]={0,1,2,3,4,5,6,7,8,9} public void maopao{ //n个数字只需要n-1次排序 for(int i=0;i<a.length-1;i++){ //已经排序好的数字不需要重复排序 for(int j=0;j<a...
2018-10-28 16:38:25
274
原创 计算机网络总结
1.HTTP—Hyper Text Transfer Protocol,即超文本传输协议。是基于tcp协议,属于应用层协议2.HTTP由请求报文和相应报文组成请求报文:1)请求行:请求方法,URL,协议版本。2)请求头部 Host:请求的主机名 User-Agent:浏览器的具体类型 Accept:浏览器支持哪些数据类...
2018-09-21 10:50:50
173
原创 Redis知识点总结
1.Redis的五种基本数据类型String,Hash,list,set,zset,对应的基本操作2.缓存穿透完全不存在的一个数据,在缓存中查询不到,就去数据库中去查,查找不到,无法再缓存中存。解决方法:1)布隆过滤器算法:1. 首先需要k个hash函数,每个函数可以把key散列成为1个整数2. 初始化时,需要一个长度为n比特的数组,每个比特位初始化为03. 某个ke...
2018-09-13 22:47:12
199
原创 找不到类 pageInfo
最近在一个maven项目中,用的插件pagehlper,一直报错提示找不到类pageinfo,最后找到原因,是maven本地仓库里之前有同名的项目,解决办法:把maven 本地仓库的jar包全部清空,再试下就好了...
2018-09-07 15:43:11
632
原创 快速排序
快速排序的本质是分治法,快速排序是一种不稳定的排序,即如果两个数字相同,并不能保证其顺序,相比之下冒泡排序是一种稳定的排序。快速排序的最好的情况是,每次基准数都在最中间,这样时间复杂度是O(logn),最坏的情况是总是这个数组中最大的或者最小的,这时候的时间复杂度是O(n2),平均复杂度是O(nlogn)代码实现import java.util.Arrays;/** * 时间复杂...
2018-09-04 19:46:01
246
原创 hashmap 底层原理
默认桶的数量是16个,默认的加载因子是0.75,超过16*0.75时会进行扩容,扩容是桶的数量*2。存的原理是: 对key进行hash计算,得到的hash值对桶的数量取摸,因为取模更加能平均存放,由于取模的算法比较消耗资源,Java用的底层是,与桶的数量的长度减一进行与运算,Java源码是static int indexFor(int h, int length) { ...
2018-09-04 19:33:39
306
原创 springboot 提示bean无法注入的问题
springboot在注入的时候提示Unsatisfied dependency expressed through field 'deptService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name '...
2018-08-27 17:07:18
1946
1
原创 Java最新面试题--2018(持续更新)
1.了解深拷贝,浅拷贝2.传播式事务,常用哪一种,一个方法中两个事务,其中一个事务抛异常会发生什么情况3.序列化接口的作用,都知道哪些序列化的方式,dubbo的序列化4.泛型,泛型擦除5.微服务的颗粒度6.hashmap的底层数据结构,红黑树,头插改尾插7.http和HTTPS之间的区别(CA证书,非对称加密)8.zookeeper在dubbo中起什么样的作用,zook...
2018-08-24 12:01:31
671
原创 解决报错https://serverfault.com/questions/858067/unknown-directive-stream-in-etc-nginx-nginx-conf86
之前按照网上的教程配置NGINX的时候,爆了这样一个错。搜了很多答案都没有解决。最后才发现是配置nginx.conf的时候upstream应该在server的外面具体的配置如下...
2018-07-30 16:38:31
1432
原创 禁止a标签的跳转功能
以前一直用<a href="#">的方式禁止a标签跳转,这样其实是不可以的,因为没点击一次a标签就会触发一次刷新的操作阻止a 标签的默认跳转行为!<a href ="javascript:return false;">禁止点击 </a> //或者<a href ="javascript:void(0);">禁止点击 &
2018-07-18 17:39:48
3333
原创 Linux下安装Redis详细教程
1.linux基本命令行: cd ll tar -zxvf cp -r rm -rf vim/vi mkdir mv touch scp -r ssh-copy-id(免秘钥登录) keyg...
2018-07-17 14:39:29
462
原创 spring和mybatis的整合之基于原始Dao的方式
这种方式需要写Dao的实现类,namespace可以任意命名。applicationContex.xml文件的配置信息如下<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org...
2018-07-05 11:16:56
178
原创 spring和mybatis的整合之基于mapper代理的方式
1. 实体类2.userMapper.java (也就是Dao)3.userMapeer.xml)(namespace要写mapper.java 的全类名)4.UserService.java5.UserServiceImpl.java用注解的方式,@Controllor:前端控制层,@Service:服务层,@Responstory:持久层:@Compenet:通用组件,@Autowire注解4...
2018-07-05 11:12:12
392
原创 动态代理
1.JDK动态代理,目标类和代理类继承同样的接口import java.lang.reflect.InvocationHandler;import java.lang.reflect.Method;import java.lang.reflect.Proxy;import cn.zzsxt.dao.impl.StudentDao;import cn.zzsxt.dao.impl.St...
2018-07-03 16:52:50
272
原创 Java设计模式之代理器模式
静态代理,优点:不改变原来的代码,缺点:无法加入新的类型代码userDao.javapackage com.sxt.dao;public interface UserDao { public void add();}userDaoImpl.javapackage com.sxt.dao.impl;import com.sxt.dao.UserDao;public class Us...
2018-07-03 14:48:28
153
原创 springMVC的web.xml常规配置
<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns
2018-07-02 09:06:10
197
原创 springmvc常规的配置文件
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://ww
2018-07-02 09:04:48
188
原创 mybaties配置文件详解
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration&
2018-06-28 14:26:17
687
原创 mybatis映射文件详解
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="c
2018-06-28 14:23:07
834
原创 jstl用法总结
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@page import="java.util.*" %> <%@page import="com.model.Student" %&
2018-05-30 14:34:46
224
原创 EL表达式用法总结
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dt
2018-05-30 14:02:21
337
原创 使用cookie显示上一次登录时间
package com.cookie;//这行代码用于自动识别包,并导包import java.io.IOException;import java.text.SimpleDateFormat;import java.util.Date;import javax.servlet.ServletException;import javax.servlet.http.Cookie;im...
2018-05-25 16:48:55
1167
原创 Servlet实现定时跳转
package com.refresh;//这行代码用于自动识别包,并导包import java.io.IOException;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import j...
2018-05-25 15:14:54
3541
1
原创 servlet设置头文件header的方式下载文件
package com.web.day2.response;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.net.URLEncoder;import javax.servlet.S...
2018-05-25 14:41:36
899
open-src.zip
2020-08-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人