- 浏览: 84349 次
- 性别:
- 来自: 杭州
最新评论
-
java8988:
natapp.cn开始收费,大家可以到https://ngro ...
微信公众号开发前期环境搭建
文章列表
原文链接:https://www.jianshu.com/p/63534c3baec3 转载请注明出处
1540361271922.png
从master直接切换到另一分支名(drpV2.0.24)的时候,出现游离状态,没有改动代码,只是想让HEAD从游离状态中恢复到正常分支上,但git checkout drpV2.0.24 并没有用...还是在游离状态...
解决方法
git branch -v 查看当前领先多少
1540361405219.png
原文地址:https://www.jianshu.com/p/2b17c3879879
idea方法注释,系统默认的只能获取到参数,无法获取返回值,如下:
/**
*
* @param id
* @param type
* @return
*/
public static String getName(Long id, int type) {
return null;
}
使用Eclipse时我们生成注释的习惯是/**+Enter,这里我们也按照这种习惯来设置IDEA的方法注释 ...
想要成为架构师,对技术的深度和广度都有很高的要求,本文列举出成为一个架构师必备的技能和学习路线。对于学习途径有疑惑或苦恼,或者有优秀资料可以提供的同学,可加微信,共同交流学习
wx_qcode.jpg
1. 阅读源码
说到阅读源码,可能很多同学都尝试过去阅读一些开源框架的源码,但是很难找到一个入口点;即便找到入口点,又会觉得源码中好绕,看着看着把自己都看晕了。其实,阅读源码是需要基础的。开源框架的源码中都使用了大量的设计模式,所以在阅读源码之前,我们首先要熟悉常见的设计模式
1.1 常用设计模式
Proxy 代理模式
原文地址:https://www.jianshu.com/p/deee6abf0b72 转载请注明出处
TCP: 传输控制协议(英语:Transmission Control Protocol,缩写为TCP)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC 793定义。
UDP:用户数据报协议 ...
原文地址:https://www.jianshu.com/p/173009ccfd7b 转载请注明出处
短连接
连接->传输数据->关闭连接
HTTP是无状态的,浏览器和服务器每进行一次HTTP操作,就建立一次连接,但任务结束就中断连接。
也可以这样说:短连接是指SOCKET连接后发送后接收完数据后马上断开连接。
长连接
连接->传输数据->保持连接 -> 传输数据-> ... ->关闭连接。
长连接指建立SOCKET连接后不管是否使用都保持连接,但安全性较差。
http的长连接
HTTP也可以建立长连接的,使用Connect ...
简介
Java为数据结构中的映射定义了一个接口java.util.Map,此接口主要有四个常用的实现类,分别是HashMap、Hashtable、LinkedHashMap和TreeMap,类继承关系如下图所示:
image.png
下面针对各个实现类的特点做一些说明:
HashMap:根据键的hashCode值存储数据,直接定位到它的值,因而具有很快的访问速度,但遍历顺序却是不确定的。 HashMap最多只允许一条记录的键为null,允许多条记录的值为null。HashMap非线程安全,即任一时刻可以有多个线程同时写HashMap,可能会导致数 ...
栈
一般是指 堆内存(Heap)的管理,因为栈(stack)、PC寄存器(PC Register)、本地方法栈(Native Method Stack)都是和线程一样的生命周期-Xss 设置栈内存大小栈是不需要垃圾回收的,尽管说垃圾回收是java内存管理的一个很热的话题,栈中的对象如果用垃圾回收的观点来看,他永远是live状态,是可以reachable的,所以也不需要回收,他占有的空间随着Thread的结束而释放
堆
堆内存分为以下几个区:Old Space 、 Eden 、From Space、To Space
图示
-Xms和-Xmx来指定堆内存最小值 ...
什么是分布式锁?
控制分布式架构中多个模块访问的优先级
要介绍分布式锁,首先要提到与分布式锁相对应的是线程锁、进程锁。
线程锁:主要用来给方法、代码块加锁。当某个方法或代码使用锁,在同一时刻仅有一个线程执行该方法或该代码段。线程锁只在同一JVM中有效果,因为线程锁的实现在根本上是依靠线程之间共享内存实现的,比如synchronized是共享对象头,显示锁Lock是共享某个变量(state)。
进程锁:为了控制同一操作系统中多个进程访问某个共享资源,因为进程具有独立性,各个进程无法访问其他进程的资源,因此无法通过synchronized等线程锁实现进程锁。
分布式锁:当多个进程不在同 ...
redis入门常见问题
- 博客分类:
- redis
spring集成redis遇到的一些问题
1.Error creating bean with name 'enableRedisKeyspaceNotificationsInitializer' defined in class path resource 好像看不出报的什么错,继续往下看详细信息
org.springframework.beans.factory.BeanCreationException: Error creating bean with name
'enableRedisKeyspaceNotificationsInitializer' defined in ...
换了mac电脑,依据windows下idea的设置,依次File-->Othering Settings-->Default Settings ->Inspections->Serialization issues,将serialzable class without "serialVersionUID"打上勾,Apply之后,选中类名,按atl+enter键,依旧不会提示生成serialVersionUID;
其实mac下提示生成serialVersionUID的方式如下(亲测可用):
Mac版本是设置Preferences,具体步骤如下:
...
使用git时,想从某个分支(branch_A)的某个提交(commitId:9e53a6db43cd5e5d52e5b28b34d83f38ccdb668b)应用于另外一个分支(branch_B),可使用cherry-pick, cherry-pick会重演某些commit, 即把某些commit的更改重新执行一遍;
1.基于branch_B分支新建分支branch_B_1, 并且到新创建的分支上
git checkout -b branch_B branch_B_1
2.将branch_A分支上的某个commit在branch_B_1分支上重演
...
在看源码的时候,发现类之间的结构比较复杂,点着点着都不知道点到那里去了,有点晕,问了下度娘,发现idea已经集成了uml,直接上图:
File-->Settings 打开settings界面
定位到plugins,输入UML,如下图所示:
确保UML Support 这个方框对勾已经打上,点击右下角的 apply,重启idea
然后找一个java类文件,右击Diagram
从git的某次提交(commit)拉取分支:
git checkout -b branchname <commitId>
参考:https://stackoverflow.com/questions/2816715/branch-from-a-previous-commit-using-git
va项目为第三方提供类库的时候,打好的jar包中,第三方调用的时候,取出来的中文乱码,如下所示:
查看项目编码类型为utf-8,打包出现如下日志:
编码GBK的不可映射字符
部分文件编码为GBK,解决方法如下:(在打包的时候设置编码类型为utf-8)
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-co ...
git将主干合并到当前分支时,出现如下结果:
原因在于:执行git merge前,主干的代码没有更新
正确的操作步骤如下:
1 .切换到主干
$ git checkout master
2. 更新主干代码
$ git pull origin master
3. 切换回分支
$ git checkout feature/20170527_894373_inventory_order_export_1
4. 执行合并操作
$ git merge master
这样就对了,剩下的就是解决冲突,然后提交代码
附:git命令大全
...