自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 收藏
  • 关注

原创 一天一问答(八): 后端开发是否需要写Junit单元测试?

一、思考: 是否会出现这种情况,代码写完,自己也测试几遍了,策划,测试同学都验收了,为啥线上总会出现一些显而易见的bug?谁的锅? 肯定程序员啊,因为代码是我们写的。。。 根据我个人工作经验,策划都只是验收功能,能否跑通,有无明显问题,然后交给测试同学,游戏公司测试同学都是黑盒测试不会去测试你代码内部方法是否有问题。那最终还是得靠自己啊。...

2019-08-06 16:31:40 598

原创 一天一问答(七): git clone CAfile: C:/Program Files/Git/usr/bin/curl-ca-bundle.crt

111@111-PC MINGW64 /e/reposity (master)$ git clone https://github.com/antirez/redis.gitCloning into 'redis'...fatal: unable to access 'https://github.com/antirez/redis.git/': error setting certific...

2019-04-25 15:36:02 1081

原创 一天一问答(六):String str = new String("Hello"); 到底创建了几个对象?

new 出来的对象都会放到堆里面,所以只有一个? 错了!!!1,String 对象是final的,是不能继承的,为啥是final的??? 够完美了 所以不用继承了吧。。。2,会在堆里创建一个引用对象,“Hello” 会放到常量池中,所以在常量池中也会创建一个对象;综上:会创建两个对象;3.String a = "hello";String b ="hello";Syst...

2019-04-12 11:25:25 874

原创 一天一问答(五):Springboot 中@GetMapping() 和@RequestMapping的区别

@RequestMapping 有RequestMethod.GET 和 RequestMethod.POST 两种方式;@RequestMapping(value="/hello",method=RequestMathod.GET)@GetMapping("hello") 相当于缩写了 上面的,只能使用GET...

2019-04-10 22:37:55 2647

原创 一天一问答(四):docker 启动mysql5.6,但是Navicat连接不上?报2003

docker 启动mysql步骤:1.下载镜像docker pull mysq:5.62.启动mysqldocker run --name mydql5_6 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.6连接就报上面的错误。。3.但是cmd 能正确连接mysqldocker exec -it mysql5_6 bashmy...

2019-04-08 12:01:29 1674

原创 一天一问答(三):jvm 配置的各种参数代表啥意思?

-Xms: 初始堆大小,如 -Xms128M-Xmx:最大堆大小, 如-Xmx512M-Xss:虚拟机栈中每个栈帧的最大值,一般设置为128k-Xmn:新生代的大小,一般情况下为-Xmx 的1/3 老年代占2/3-XX:+PrintGCDetails 打印gc信息...

2019-03-21 00:13:45 199

原创 一天一问答(二):linux服务器上,web路径怎么弄得?

tomcat 服务器路径:http://ip地址:端口号/webapps下面得路径上面得路径就是:http://127.0.0.1:8085/PaymentServer/dscljsp/charge.jsp

2019-03-18 17:43:50 189

原创 一天一问答(一):java 代码中assert是啥?

assert 断言 ,jdk1.4之后出现得大概意思就是 assert 后面跟着是Boolean值,如果是true,就继续执行下去,如果是false就终止并弹出一个错误提示.public static void main(String[] args) { int a = 10; assert a < 10; System.out.println("继续执行...

2019-03-14 18:32:45 548

原创 protobuf:IDEA+maven 基础使用教程

1,idea 下载插件Protobuf supportsetting->Plugins 搜索;安装完成之后重启IDEA2,建立好maven项目之后引入Protobuf 和 grpc<properties> <grpc.version>1.17.1</grpc.version> <protobuf.version>3.5.0...

2019-01-05 17:34:49 1298

原创 Git 学习笔记

Git 学习笔记学习链接:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/001375840202368c74be33fbd884e71b570f2cc3c0d1dcf0001.git version 查看版本2.git init; Git repository 初始化3...

2018-12-04 16:24:42 1161

原创 java网络编程:NIO

先将Server运行起来 public static void serverStart() throws IOException { //channel bytebuffer selector 三兄弟 ServerSocketChannel channel = ServerSocketChannel.open(); channel.socket()...

2018-11-12 17:24:29 277

原创 JUC(二):线程池

JUC:线程池1.什么是线程池2.线程池得实现ThreadPoolExecutor 实现原理ThreadPoolExecutor 源码1.什么是线程池可以理解为缓冲区,一组线程得管理工具,如果系统中,频繁得创建销毁线程会带来一定得成本,所以可以预先创建预定数量得线程,由线程池来管理,线程不会立即销毁,以共享得方式为别人提供服务;链接参考link2.线程池得实现ThreadPoolExe...

2018-11-07 17:23:16 167

原创 JUC(一):Atomic系列

AtomicInteger:先看看源码public class AtomicInteger extends Number implements java.io.Serializable { private static final long serialVersionUID = 6214790243416807050L; // setup to use Unsafe.com...

2018-11-02 17:22:12 422

原创 MySQL 技术内幕(一):体系结构

一.Mysql 体系结构连接client |连接池 |存储引擎(并发性,事务支持,引用完整性,物理存储,索引支持,内存高速缓冲,) |磁盘1,数据库是啥? 数据库是文件的集合,是依照某种数据模型组织起来并存放于二级存储中的数据集合;2,数据库实例是什么? 实例是程序,用于操作数据库,是位于用户与操作系统之间得一层数据管理软件,用户对...

2018-10-18 11:19:45 158

原创 java 编程思想(五):隐藏实现过程

一、访问控制权限:(1)public:访问接口;后面的成员声明适用于所用人,对象实例化之后,都可以访问;class parent{    public void teach(){    }}(2)private:不能接触;除了本类 内部,其他对象是不能够直接访问的,继承也不行;(3)protected:只有继承该类的对象才能访问;(4)声明前面什么也也不加:只有在同...

2018-09-30 08:18:11 160

原创 java编程思想(四):初始化和消除

1.使用构造函数进行初始化class Color{ Color(){ System.out.println("color init"); }}public static void main(String[] args) { for(int i = 0;i< 10;i++){ new Color(); }}最终输...

2018-09-26 21:45:00 116

原创 java编程思想(三):控制程序流程

一、== 和 equals    == 判断是比较得两个对象是否是同一个对象判断内存地址和值;   equals 在Object下是:   public boolean equals(Object obj) {        return (this == obj);   }   调用的也是==,如果某个具体类想对比类得值是否相同的时候,需要重写equals;  Strin...

2018-09-20 23:14:05 104

原创 Linux 上 java项目cpu 居高不下,导致项目卡顿

1,登陆到linux 服务器,使用top 查看进程得cpu 使用率topcpu 高得是pid=214122.使用   top -Hp 21412,查看该进程中 线程占用cpu最高得id3.使用 jstack pid  打印信息:可能出现 jstack command not found;可能是因为linux 上面没有配置环境变量;需要找到jdk路径,在bin下执行 ...

2018-09-11 16:01:36 1574

原创 mvn :unsupported major.miror version 51.0

maven 3.0以上版本需要,jdk8及以上51.0 是jdk7, 52.0 是jdk8出现上面错误就是版本不一致导致,需要检查当前得jdk版本java -version如果当前显示得还是 jdk8,那就需要查看环境变量是不是配置了jdk8 以下得版本;...

2018-08-29 15:27:27 586

原创 java 动态代理

代理分为静态代理和动态代理:字面理解代理得含义:代理类似经纪人,经纪人知道明星们所包含得技能,什么唱歌,跳舞,跑步之类得,代言活动方就直接找经纪人谈事情,但是具体得参与活动还是需要明星自己去处理.一. 静态代理: 为每个需要代理得对象(目标对象)生成一个代理类.那么有多少明星,就需要多少经纪人了,就导致了经纪人太多了,public interface Star{    int get...

2018-08-14 16:59:42 145

原创 java数据结构:HashMap

 一,Map<String,String> map = new HashMap<String,String>(); 由数组和链表组成: class Node{     final int hash = 0;     Object key;     Object value;     Node next; } Node[] element;二,Has...

2018-07-29 18:45:31 357

原创 Redis in Action(一):基本语法

1,redis是一非关系型数据库,key-value,高可用(performance),支持内存持久化到磁盘,主从复制,发布订阅;2,redis 支持5中数据结构:Strings,Lists,Sets,Hashes and ZsetsString: Strings,intergers,or floating-point valuesList: Linked list of String...

2018-07-28 19:43:24 641

原创 Python入门:第一个py项目

需求:写一个Python文件批量将xlsx生成csv文件1, 到python 官网下载安装包:https://www.python.org/getit/2,配置环境变量,类似:Python.exe文件路径C:\Python27放到path中,pip.exe文件路径C:\Python27\Scripts放到path中3,使用pycharm编译器创建py文件;# -*- coding...

2018-07-25 20:09:22 1833

原创 Maven 打包生成jar,执行报错,ClassNotFoundException:org/apache/loggin/log4j/LogManager

简单得程序代码:public class App { private static Logger logger = LogManager.getLogger(App.class); public static void main(String[] args) throws InterruptedException { for (int i = 0; i &...

2018-07-24 17:39:57 3203

原创 java并发编程(四):java的锁

锁使用来控制多个线程访问共享资源的方式,一般来说一个锁能够防止多个线程同时访问一个资源;有synchronized 和 Locksynchronized 将锁的获取和释放固话了,只有现获取再释放;1,Lock 包含了synchronized 不具备的功能;(1)尝试非阻塞的获取锁:当前线程尝试获取锁,如果这一时刻锁没有被其它线程获取到,则成功获取该锁;(2)能被中断的获取锁:获...

2018-07-18 23:37:05 116

原创 连接mysql 出现:java.sql.SQLException: Unable to load authentication plugin ‘caching_sha2_password‘.

数据测试的时候出现:网上查资料说的是mysql5.x 版本和 8.x版本的区别;5.7版本是:default_authentication_plugin=mysql_native_password8.x版本就是:default_authentication_plugin=caching_sha2_password有网友说是 将my.ini 中的配置改成5.7 就可以了,但是my.ini在哪儿呢。。...

2018-07-14 20:36:32 65329 19

原创 java并发编程(三):线程的状态,threadlocal

1. 线程的状态:    new:初始状态;线程开始创建, 但是还没开始调用start(),(设置线程所属线程组,优先级,是否是daemon线程);    RUNNING:运行状态:调用start(),等待cpu时间片来轮训执行(线程创建就绪,调用start(),表示:当前线程同步告知虚拟机,只要线程规划器空闲,应立即启动调用start()线程的方法);    Blocked:阻塞状态...

2018-07-08 15:26:29 182

原创 java并发编程(二):happened-before

1,java内存模型基础两个关键的问题是:线程之间如何通信,线程之间如何同步;每个线程有个本地内存,共享变量存在于主内存中,当要使用这个共享内存的时候,本地内存会存放共享变量的副本,当A内存有更新,就会将数据刷新到主内存中,B就到主内存中获取A之前更新过的共享变量;1.1 happens-before:如果一个操作所执行的结果需要对另一个操作可见,那么两个操作之间必要会存在...

2018-06-28 23:06:33 1169

原创 java并发编程(一):volatile和锁的级别

1,volatile的运用;volatile是个轻量级的synchronized,在多线程中保证了共享变量的‘可见性’,就是一个线程修改共享变量的值之后,另一 程能够读到这个修改的值;volatile修饰的变量变成汇编之后会有一lock前缀指令;volatile的两条实现原则: (1),Lock前缀指令会引起处理器缓存会回写到内存;(2),一个处理器的缓存回写到内存中,会导...

2018-06-28 00:21:15 574

原创 linux 执行jar包的时候报no main manifest attribute;

# java -jar home/helloworld.jar no main manifest attribute, in home/helloworld.jar在idea中打包没有问题,正常情况下,需要在jar的mainfest.mf中指定main类,报错之后,就需要重新指定他的main classjava -cp home/helloworld.jar com.zhou.App...

2018-06-25 23:12:57 44255

原创 Spring + mybatis (一):连接数据库简单用例;

使用maven将依赖包引入到项目中;<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --><dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId&g...

2018-06-23 23:57:29 312

原创 Spring:各种注解

1,@Conditional   按照一定的条件进行判断,当满足条件的时候,bean才注册到ioc 容器中;public class WindowsConditional implements Conditional{        public boolean match(****){            return false;                }}在bean中使用的时候@C...

2018-05-29 23:17:44 7313

原创 JAVA基础一: 文件File

绝对路径:文件存放在操作系统中的完整路径;c:\\program\\java\\A.java相对路径:相对于当前目录而言的路劲,不会从根目录出发;1.文件读写;一般读写文件需要两次拷贝,从磁盘读取到操作系统内核,在由内核拷贝到应用程序内存中,操作系统在内核态,用户程序是用户态,应用系统调用操作系统的功能需要切换两种时态,先是从用户态切换到内核态,再由内核态切换到用户态,这样开销很大,所以需要尽量减...

2018-05-19 00:09:24 144

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除