java必备知识点大全.pdf
Java必备知识点大全的内容非常丰富,涵盖了Java语言的基础知识、常用的框架以及数据库的应用等方面,是每一个Java开发者学习和面试时的重要参考。下面是对文档中各个知识点的详细解析。 基础篇: JDK常用的包:Java Development Kit (JDK) 是开发Java应用程序所需的软件开发包。常用的包包括java.lang、java.util、java.io等。 Get和Post的区别:Get和Post是HTTP协议中的两种请求方法,Get用于请求服务器发送某些资源,Post用于向服务器提交数据。 Java多态的具体体现:多态是面向对象程序设计的一个基本特性,指的是允许不同类的对象对同一消息做出响应。 StringBuffer、StringBuilder与String的区别:StringBuffer和StringBuilder都是可变的字符序列,而String是不可变的字符序列。区别在于StringBuffer是线程安全的,而StringBuilder不是。 Hashtable与HashMap的区别:Hashtable和HashMap都是Map接口的实现类,Hashtable是线程安全的,而HashMap不是。此外,Hashtable不允许键或值为null,而HashMap可以。 九大隐式对象:JSP中有九个预定义的对象,包括request、response、session、application等。 Forward与Redirect的区别:Forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器。Redirect则是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址。 JQuery总结:JQuery是一个快速、小巧、功能丰富的JavaScript库,简化了HTML文档遍历和操作、事件处理、动画和Ajax交互。 XML和Json的特点:XML是一种标记语言,用于存储和传输数据;Json是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。 request.getSession(true):当请求中没有session时,创建一个session。 request.getSession()、request.getSession(false):获取当前请求的session,若没有则返回null。 Page和PageContext的区别:Page是JSP页面中的一个对象实例,而PageContext是用于管理JSP页面中各种对象的容器。 Ajax总结:Ajax(Asynchronous JavaScript and XML)是一种用于创建快速动态网页的技术。 JSP九大隐式对象中四个作用域的大小与作用范围:JSP九大隐式对象包括page、request、session和application,它们的作用域由小到大排列。 List、Set、Collection、Collections:List是有序的Collection,Set不允许重复元素,Collection是集合框架的根接口,Collections则是提供各种方法来操作集合的工具类。 Java的基本数据类型:Java中的基本数据类型有byte、short、int、long、float、double、char和boolean。 冒泡排序:一种简单的排序算法,通过重复遍历要排序的数列,比较每对相邻元素,若前者比后者大,则交换它们。 二分查找法:查找过程中,将待查找区间分成两半,然后决定待查找的值是在左边区间还是右边区间。 时间类型转换:在Java中,处理时间类型通常会用到Date、Calendar、LocalDate等类,并且需要进行相应的类型转换。 阶乘:一个正整数的阶乘是所有小于及等于该数的正整数的积。 UE和UI的区别:UE是指用户体验(User Experience),UI是指用户界面(User Interface)。 OSI七层模型:计算机网络分层模型,包括物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。 线程和进程的区别:进程是系统进行资源分配和调度的一个独立单位,线程是进程中的一个实体,是CPU调度和分派的基本单位。 JVM的内存结构:包括方法区、堆、虚拟机栈、本地方法栈和程序计数器。 内存泄露和内存溢出:内存泄露是不再使用的对象无法被垃圾回收器回收,内存溢出是程序运行过程中分配内存时空间不足。 单例:确保一个类只有一个实例,并提供一个全局访问点。 解析xml文件的几种技术:DOM、SAX、StAX和JAXB。 项目的生命周期:通常指的是项目从启动、规划、执行、监控、收尾的过程。 OSCache的判断:操作系统级别的缓存,用于提高系统的性能。 经常访问的技术网站:如Stack Overflow、GitHub等。 项目团队中交流的工具:如Slack、Trello等。 平时浏览的书籍:推荐学习Java的书籍,如《Java核心技术》、《Effective Java》等。 Java Exception体系结构:Java异常处理体系包括Throwable、Error、Exception和RuntimeException等。 session和cookie的区别:session用于保存用户状态,cookie是服务器在本地机器上存储的一小段文本。 字节流与字符流的区别:字节流用于读写二进制数据,字符流用于读写文本数据。 final、finally、finalize三者区别:final用于声明常量,finally用在try-catch-finally语句中表示必须执行的代码块,finalize是Object类的一个方法,垃圾回收器在销毁对象之前会调用它。 Io流的层次结构:Java中Io流有四层,分别是字节流、字符流、节点流和处理流。 JavaSE、JavaEE、JavaME的区别:JavaSE是Java标准版,JavaEE是Java企业版,JavaME是Java微版。 JDK、JRE、JVM的区别:JDK是Java Development Kit的缩写,包括JRE和开发工具;JRE是Java Runtime Environment,是运行Java程序的环境;JVM是Java Virtual Machine,是运行Java字节码的虚拟机。 报错的状态码:HTTP协议中定义了各种状态码来标识请求的响应状态。 协议以及默认的端口号:HTTP默认端口号为80,HTTPS默认端口号为443。 抽象类与接口的区别:抽象类是抽象方法和实例变量的集合,接口则定义了类应该做什么,但不提供实现。 修饰符的作用:Java中的修饰符用于定义类、方法和变量的访问规则。 框架篇: Struts1的运行原理:Struts1是一个基于MVC架构的Web应用框架。 Struts2的运行原理:Struts2是在Struts1和WebWork技术基础上进行了合并的一个MVC框架。 Struts2的体系结构:Struts2由核心过滤器、拦截器和结果类型等组成。 SpringMVC的运行原理:SpringMVC是Spring框架的一部分,是一个基于MVC的Web框架。 Struts1.x与Struts2.x的区别:Struts2支持拦截器、支持动态方法调用和更灵活的配置。 SpringMVC、struts1和struts2区别:SpringMVC与Struts1和Struts2的主要区别在于它们的控制反转(IOC)和面向切面编程(AOP)。 Struts2中result中的type类型:Struts2中result可以是 dispatcher、chain、redirect、redirectAction等类型。 Struts2标签:Struts2提供自定义的标签来简化JSP页面的开发。 SSI整合:SSI即Server Side Include,用于在Web服务器端包含其他文件。 SSH整合:SSH是Struts2、Spring和Hibernate三个框架整合的统称。 SpringMVC整合:SpringMVC与Spring和Hibernate的整合。 Hibernate中get和load的区别:get是立即加载,load是延迟加载。 Hibernate、Ibatis、Jdbc三者的区别:Hibernate和Ibatis都是JDBC的封装框架,但Hibernate是全自动的ORM映射,而Ibatis是半自动的。 Hibernate的运行原理:Hibernate通过映射关系将Java对象和数据库表进行映射。 Hibernate五大核心(类/接口)简述:Session、Transaction、Query、Criteria和Configuration。 Hibernate与JDBC的区别:Hibernate是对JDBC的封装,简化了数据库操作。 Hibernate中的两大配置文件:hibernate.cfg.xml和mapping文件。 Hibernate事务处理:Hibernate提供了声明式事务管理和编程式事务管理。 Hibernate的三种状态以及状态的转换:Hibernate对象状态分为瞬时状态、持久状态和托管状态,它们之间可以相互转换。 分页步骤:分页通常是将一个大数据集分割为若干个小数据集。 Hibernate缓存概述:Hibernate缓存分为一级缓存和二级缓存,用来提高数据访问的性能。 Ssh的概述:Ssh是Struts、Spring、Hibernate三大框架整合的简称。 防止表单重复提交:为了防止表单被重复提交,可以使用token令牌或者点击后禁用提交按钮。 JSP标签:JSP标签用于在JSP文件中嵌入Java代码。 过滤器器:过滤器是用于对Web应用中的请求和响应进行预处理和后处理的组件。 拦截器器的理解:拦截器是在AOP(面向切面编程)思想下扩展出来的一种技术,它可以拦截方法或方法调用。 Spring融入框架:Spring是目前最流行的开源框架,它提供了控制反转(Inversion of Control, IoC)和面向切面编程(AOP)等特性。 数据库篇: JDBC连接数据库步骤:JDBC连接数据库通常包括加载驱动、创建连接、创建语句、执行语句和处理结果等步骤。 数据库连接池:数据库连接池是一个存储数据库连接的容器,可以快速提供可用的数据库连接。 MySQL的数据库导入导出:可以通过命令行工具如mysqldump进行数据库的导入导出操作。 JDBC分段批量提交时出现异常的处理:可以通过设置合适的批处理大小和异常捕获处理。 JDBC批量处理数据:JDBC提供批量更新功能,可以一次性发送多个更新请求。 Oracle分页:Oracle提供了ROWNUM和ROWID进行分页查询。 Oracle的基本数据类型:包括 NUMBER、DATE、VARCHAR2等。 id、rowid、rownum的区别:id通常是主键字段的名称,rowid是Oracle数据库中每行数据的唯一标识,rownum是查询结果集中行的编号。 主键和唯一索引的区别:主键用于标识表中的每一行,唯一索引则是保证列中值的唯一性。 Preparedstatement和statement的区别:PreparedStatement预编译SQL语句,可以防止SQL注入,并提高性能;Statement则是在运行时编译SQL语句。 数据库三范式:第一范式要求表的每一列都是不可分割的基本数据项;第二范式要求表中的所有列都必须依赖于主键;第三范式要求非主属性不依赖于其他非主属性。 视图概述:视图是从一个或多个表中导出的表,它是一种虚拟表。 存储过程概述:存储过程是一组为了完成特定功能的SQL语句集,它存储在数据库中,可以通过指定名称和参数进行调用。 索引概述:索引用于加速数据库表中数据的检索。 必背的SQL语句:包括数据查询语句SELECT、数据插入语句INSERT、数据更新语句UPDATE、数据删除语句DELETE等。 业务场景篇: Spring的概述:Spring是一个开源框架,用于简化Java开发。 事务概述:事务是一组操作的集合,它是一个不可分割的工作单位。 权限概述:在软件开发中,权限管理是指对不同用户执行不同操作的限制。 OSCache业务场景:OSCache是操作系统级别的缓存,提高数据的存取速度。 线程概述:线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中。 Ajax请求Session超时问题:Ajax请求可能会遇到Session超时的问题,需要特别处理。 Java线程池概述:Java线程池可以重用一组线程来执行多个任务,提高程序性能。 OSCache概述:OSCache用于将频繁访问的数据缓存在内存中,减少磁盘I/O操作。 OSCache+auto:自动管理OSCache的使用,确保缓存的性能和效率。
剩余69页未读,继续阅读
- qq_358315642019-11-14说实话,名为 java必备知识点大全 没毛病,就是有点简单了,并且还有些很少很少用的技术
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (源码)基于ESP8266和Arduino的HomeMatic水表读数系统.zip
- (源码)基于Django和OpenCV的智能车视频处理系统.zip
- (源码)基于ESP8266的WebDAV服务器与3D打印机管理系统.zip
- (源码)基于Nio实现的Mycat 2.0数据库代理系统.zip
- (源码)基于Java的高校学生就业管理系统.zip
- (源码)基于Spring Boot框架的博客系统.zip
- (源码)基于Spring Boot框架的博客管理系统.zip
- (源码)基于ESP8266和Blynk的IR设备控制系统.zip
- (源码)基于Java和JSP的校园论坛系统.zip
- (源码)基于ROS Kinetic框架的AGV激光雷达导航与SLAM系统.zip