java语言的开发环境(jdk、jre、jvm、快捷键)

1、Java  EE和Java  SE

Java SE(Java  Platform Standard Edition)标准版:是在java基础阶段主要学习的内容,该技术是java的最核心技术,适合小型项目开发。

Java EE  (Java  Platform Enterprise Edition)企业版:为开发企业环境下的应用程序提供的一套解决方案。该技术体系中包含的技术如Servlet Jsp等,主要针对于Web应用程序开发(大型项目)。

2、Java语言开发工具包

(1)JDK(Java Development Kit 开发): 包含了JAVA的运行环境JRE(JVM+Java系统类库)和JAVA工具,用于开发人员

JDK包含的基本组件包括:

javac – 编译器,将源程序转成字节码

jar – 打包工具,将相关的类文件打包成一个文件

javadoc – 文档生成器,从源码注释中提取文档

jdb – debugger,查错工具

java – 运行编译后的java程序(.class后缀的)

appletviewer:小程序浏览器,一种执行HTML文件上的Java小程序的Java浏览器。

Javah:产生可以调用Java过程的C过程,或建立能被Java程序调用的C过程的头文件。

Javap:Java反汇编器,显示编译类文件中的可访问功能和数据,同时显示字节代码含义。

Jconsole: Java进行系统调试和监控的工具。

类库:

java.lang: 这个是系统的基础类,比如String等都是这里面的,这个包是一个可以不用引入(import)就可以使用的包。
java.io: 这里面是所有输入输出有关的类,比如文件操作等。
java.nio:为了完善io包中的功能,提高io包中性能而写的一个新包 ,例如NIO非堵塞应用
java.net: 这里面是与网络有关的类,比如URL,URLConnection等。
java.util: 这个是系统辅助类,特别是集合类Collection,List,Map等。
java.sql: 这个是数据库操作的类,Connection, Statement,ResultSet等。
javax.servlet:这个是JSP,Servlet等使用到的类。

参考资料:百度百科

(2)JRE  (Java Runtime Environment Java运行环境):包含了java虚拟机,java基础类库,适用于用户。

(3)JVM(Java virtual machine Java虚拟机):实现跨平台的核心,将class文件解释执行,因为class文件不能由操作系统直接执行,因此,不同的平台有不同的jvm,jvm能够识别字节码文件(java源文件经编译器生成字节码文件)。

3、JDK的使用

 javac(编译器):编译源文件转化为class文件

 java:运行class文件

4、cmd窗口快捷键

windows+R:打开cmd

d::进入D盘

cd+文件夹名字:进入文件夹

cd:退至根目录

cd..:退至上一层文件夹

dir:展示当前目录的所有内容

 cls:清屏

 

5、eclipse快捷键

(1)自动补齐main方法:main+alt+/

(2)自动补齐输出语句:syso+alt+/

(3)代码格式:代码区右键----Source-----Format

(4)导包:ctrl+shift+O

(5)注释:

         单行:加:ctrl+/             取消:ctrl+/

         多行:加:ctrl+shift+/    取消:ctrl+shift+

6、历史

1995年,提出了java的概念,进行家电产品的控制,搭建了一个平台叫OAK,并开发了浏览器Hotjava

1996年,将OAK改名为java

1998年,jdk1.2

2004年,jdk1.5

2014年,jdk1.8,由Oracle推出,2009年Oracle收购

2018年,10

至今,13

7、要掌握的知识

(1)前端(后端工程师要懂得前端知识):html、css、js、jq(ajax、json、选择器)、框架(BootStrap)、日期组件(laydate)、图表统计(echarts.js)、数据结点、(ZTree.js)、vue(使用比较广泛的一个js组件)

(2)javase部分

基本数据类型、引用、jvm、递归、继承、多态、反射、泛型、集合

设计模式(单例、懒汉、饿汉、工厂设计模式(简单、方法、抽象)模板、适配器、代理(静态、动态))

线程等

(3)数据结构:数组、堆栈、二叉树、红黑树(java中的TreeSet和Linux的虚拟内存管理都是使用红黑树来实现的)、链表(双向、单向)、hash

(4)数据库

Oracle和MySql

(5)javaee

jsp、jstl标签库、servlet

(6)框架

ssh(struts、spring、hibernate)

ssm(spring、springmvc、mybatis)

理解:AOP、IoC、依赖注入、任务调度等概念

SpringBoot:简化配置文件

SpringCloud:微服务开发的

Shrio:实现登录认证等操作,SpringSecurrity可以实现相同的功能

(7)数据库连接池(Druid、C3p0)

(8)Linux

简单命令(安装jdk、数据库、web服务器安装、安装redis、Nginx,在上面部署和启动项目,观察项目的动态日志等)

(9)redis(缓存性数据库,nosql)

可以保存的数据类型、主动配置、高并发配置、高可用配置、乐观锁、悲观锁

(10)Nginx

反向服务器的配置

8、知识汇总

一、数据库(例:MySQL)
(1)增删改查(2)三范式(3)表设计(4)主外键
(5)关联查询(left join、right join、inner join)
(6)数据库函数使用(7)mysql的四大特性(8)四种隔离级别..


二、数据库拔高
(1)全局锁,表锁,行锁,死锁,乐观锁,悲观锁..
(2)索引,索引底层实现原理,存储方式,如何创建索引,优化索引..


三、Java后端
(1)Java基础(2)Java的集合: list,map(3)多线程,线程池
(4)juc下的锁(5)io和nio(6)JavaWeb,重点是JavaEE的框架
如:Spring, SpringMVC, SpringBoot, SpringSecurity, SpringData, Shiro, Hibernate, MyBatis等等
提醒:springboot框架火,必学,了解spring的实现原理,如ioc&aop,struts公司用的少


四、缓存和操作糸统
(1)redis基本数据类型和各种常用命令,数据持久化,持久化恢复
(2)linux常用命令,重点学linux如何查看日志


五、前端方面
JavaScript, Ajax, Jquery, html, css, 前后端的http通信方式
如:restful风格,请求头,请求体,请求方式


六、编程工具
idea, eclipse, maven, gradle, git, svn, navicat, sqlyog, postman, jemter, xshell, xftp, visualVM..
七、高级知识点
(1)数据库主从复制,集群搭建,读写分离,分库分表,如:sharding-jdbc, mycat
(2)对于上面的初中级知识点,学实现原理,阅读源玛
(3)redis主从复制,哨兵机制,redis集群搭建
(4)微服务框架spring cloud
(5)rpc框架dubbo
(6)JVM: 组成结构,垃圾回收,jvm优化
(7)网络通信框架netty
(8)分布式: zookeeper, elastic-search, kafaka,nginx, elastic-job, 分布式锁, 分布式事务..
(9)高并发下的服务熔断,降级,限流,分布式缓存架构,缓存血崩,穿透

Java后端学习路线总结https://www.cnblogs.com/zhai1997/p/12918621.html

每个人都会有一段异常艰难的时光 。 生活的压力 , 工作的失意 , 学业的压力。 爱的惶惶不可终日。 挺过来的 ,人生就会豁然开朗。 挺不过来的 ,时间也会教你 ,怎么与它们握手言和 ,所以不必害怕的。 ——杨绛
原文地址:https://www.cnblogs.com/zhai1997/p/11256862.html