[color=darkred]poi创建excel流程[/color]:
创建webbook(对应excel),创建sheet(工作簿),创建表头,填充数据,保存excel文件
[color=darkred]java堆和栈:[/color]
堆是一个动态的数据区,类的对象从中分配空间,由垃圾回收收回空间,动态分配,效率较低。
栈存取速度快,数据可共享,数据大小、生存周期必须是确定的,灵活性差,主要用来存放基本类型。
[color=darkred]java多线程:[/color]
java多线程三种方式,继承Thread类,实现Runable接口,使用ExecuterService,Callable,Future实现有返回结果的多线程。
[color=darkred]servlet并发处理[/color]
当请求来临时,servlet容器会初始化对应的servlet。如果多个请求同时访问的是同一个servlet,Servlet容器会创建多个线程同时调用servlet的service()方法来处理这些请求,而不是多个servlet实例。
如果给service方法设置了synchronized关键字,servlet容器则是序列化请求依次通过service方法。
但如果servlet实现了SingleThreadModel接口(此时,这个servlet只能一次处理一个请求),那么servlet容器会根据请求的数量创建多个servlet的实例(每个servlet实例相当于一个线程),并调用servlet的service方法来处理请求。
[color=darkred]java classloader[/color]
当JVM(Java虚拟机)启动时,会形成由三个类加载器组成的初始类加载器层次结构:
bootstrap classloader
|
extension classloader
|
system classloader
bootstrap classloader -引导(也称为原始)类加载器,它负责加载Java的核心类(jre/lib下的jar)。
extension classloader -扩展类加载器,它负责加载JRE的扩展目录(JAVA_HOME/jre/lib/ext或者由java.ext.dirs系统属性指定的)中JAR的 类包
system classloader -系统(也称为应用)类加载器,它负责在JVM被启动时,加载来自在命令java中的-classpath或者java.class.path系统属性或 者 CLASSPATH操作系统属性所指定的JAR类包和类路径。
[color=darkred]hibernate[/color]
三种状态:临时,持久,游离
对于get和load的根本区别,一句话,hibernate对于load方法认为该数据在数据库中一定存在,可以放心的使用代理来延迟加载,如果在使用过程中发现了问题,只能抛异常;而对于get方法,hibernate一定要获取到真实的数据,否则返回null。
创建webbook(对应excel),创建sheet(工作簿),创建表头,填充数据,保存excel文件
[color=darkred]java堆和栈:[/color]
堆是一个动态的数据区,类的对象从中分配空间,由垃圾回收收回空间,动态分配,效率较低。
栈存取速度快,数据可共享,数据大小、生存周期必须是确定的,灵活性差,主要用来存放基本类型。
[color=darkred]java多线程:[/color]
java多线程三种方式,继承Thread类,实现Runable接口,使用ExecuterService,Callable,Future实现有返回结果的多线程。
[color=darkred]servlet并发处理[/color]
当请求来临时,servlet容器会初始化对应的servlet。如果多个请求同时访问的是同一个servlet,Servlet容器会创建多个线程同时调用servlet的service()方法来处理这些请求,而不是多个servlet实例。
如果给service方法设置了synchronized关键字,servlet容器则是序列化请求依次通过service方法。
但如果servlet实现了SingleThreadModel接口(此时,这个servlet只能一次处理一个请求),那么servlet容器会根据请求的数量创建多个servlet的实例(每个servlet实例相当于一个线程),并调用servlet的service方法来处理请求。
[color=darkred]java classloader[/color]
当JVM(Java虚拟机)启动时,会形成由三个类加载器组成的初始类加载器层次结构:
bootstrap classloader
|
extension classloader
|
system classloader
bootstrap classloader -引导(也称为原始)类加载器,它负责加载Java的核心类(jre/lib下的jar)。
extension classloader -扩展类加载器,它负责加载JRE的扩展目录(JAVA_HOME/jre/lib/ext或者由java.ext.dirs系统属性指定的)中JAR的 类包
system classloader -系统(也称为应用)类加载器,它负责在JVM被启动时,加载来自在命令java中的-classpath或者java.class.path系统属性或 者 CLASSPATH操作系统属性所指定的JAR类包和类路径。
[color=darkred]hibernate[/color]
三种状态:临时,持久,游离
对于get和load的根本区别,一句话,hibernate对于load方法认为该数据在数据库中一定存在,可以放心的使用代理来延迟加载,如果在使用过程中发现了问题,只能抛异常;而对于get方法,hibernate一定要获取到真实的数据,否则返回null。
本文详细介绍了Java中的关键概念和技术,包括POI操作Excel的方法、Java内存管理中的堆和栈的区别、多线程的实现方式、servlet并发处理机制、类加载器的工作原理以及Hibernate的使用技巧。
900

被折叠的 条评论
为什么被折叠?



