OpenJDK
OpenJDK源代码不完整,只包含最精简的JDK,允许在商业上使用(GPL v2开源协议),全球各大公司加上一些商业技术插件就形成了自己公司的JDK。
SunJDK只允许用于个人研究(JRL开源协议)。
JavaEE
Java EE是社区驱动的企业级软件开发的标准,是一个标准中间件体系结构,目标是简化和规范化,编程思想是组件和容器。包含13种核心技术规范:JDBC,JNDI,EJB,RMI,Java IDL,JSP,Servlet,XML,JMS,JTA,JTS,JavaMail,JAF。
分层模型:领域对象POJO,数据访问层DAO,业务逻辑层Service,控制层Controller。
可以粗略地认为JavaWeb是JavaEE的一部分。
JavaSE是Java程序设计语言和Java平台的总称。
运行class或jar
java.exe运行之后cmd控制台进入阻塞状态,不能输入其它命令。
javaw.exe运行之后控制台还可以输入其他命令。
Git命令
git clone:从远程服务器克隆一个完全一致的版本库到本地,从无到有的过程。
git pull:从远程服务器获取一个分支(branch)的更新到本地,在本地有版本的库中,同步更新部分到本地库。先取回某个分支的更新,再与本地的指定分支合并。
git pull = git fetch + git merge
git fetch:从远程仓库获取更新的数据。
git merge:将某个或某些分支合并到当前分支中,自动进行新的提交。<需要另一个分支的所有代码变动,那么就采用merge >
git cherry-pick:将指定的提交应用于当前分支,会在当前分支产生一个新的提交。<只需要部分代码变动(某几个提交),这时采用cherry-pick >
IDEA导入项目
Create project from existing sources:只能导入由idea创建的项目源码。
Import project from external model:可以导入Eclipse/Flash Builder等创建的项目,这些项目将会被成功转为idea项目文件。
Maven仓库
优先级:首先检查本地仓库,本地仓库没有就去查找项目pom文件中配置的仓库。如果配置了私服仓库,则查找私服仓库;若私服仓库中没有,由于super pom中配置了一个默认中央仓库(~\apache-maven-3.6.1\lib\maven-model-builder-3.6.1.jar\org\apache\maven\model\pom-4.0.0.xml),最后会去默认中央仓库查找。
Mirror:为<mirrorOf>仓库ID</mirrorOf>
对应的仓库使用镜像。若设置为*
,所有远程仓库都从该镜像获取,慎用。注意,精确匹配 > 通配符匹配。
本地仓库每个依赖包的 _remote.repositories文件标示该资源的来源,如果源头不存在,Maven解析错误。可将文件删除。
Log日志
log4j:停止更新,遗留版本。只有输出功能,没有转接功能。
log4j2:同时有日志输出和转接功能。jar包 log4j-core , log4j-api 。
slf4j:不是一个真正的日志实现,而是一个抽象层。jar包 slf4j-api 。必须绑定具体的日志框架。
logback:SpringBoot默认的日志,实现了slf4j的API。jar包 logback-core , logback- classic 。