1、线程间通信方法
wait,notify
2、stringbuilder 和 stringbuffer 区别
前者线程不安全,效率高
3、cache缓存 与 buffer缓冲 区别
前者读,后者写
4、http原理和HTTP报文(请求、应答)
请求报文格式如下: 请求行 - 通用信息头 - 请求头 - 实体头 - 报文主体(仅post方法有) 应答报文格式如下: 状态行 - 通用信息头 - 响应头 - 实体头 - 报文主体
5、如何理解对象的单例和多例,如何用代码的方式确定某个上下文中的对象是多例的而不是单例的。
单例:在所有上下文中对象的内存地址只有一个,不会变。无论在哪个上下文中new 该对象,打印出来的内存地址,显示的都是一个地址。
6、spring 容器初始化过程
7、spring bean的生命周期;singleton 与 prototype 在这个过程中有何区别
8、spring bean的作用域,singleton 与 prototype 的区别及使用场景
9、Spring框架中的单例Beans是线程安全的么?
Spring的单例bean是线程安全的。如果你的bean有多种状态的话(比如 View Model 对象),就需要自行保证线程安全。
最浅显的解决办法就是将多态bean的作用域由“singleton”变更为“prototype”。
10、请解释自动装配模式的区别?
byName:该选项可以根据bean名称设置依赖关系。当向一个bean中自动装配一个属性时,容器将根据bean的名称自动在在配置文件中查询一个匹配的bean。如果找到的话,就装配这个属性,
如果没找到的话就报错。
byType:该选项可以根据bean类型设置依赖关系。当向一个bean中自动装配一个属性时,容器将根据bean的类型自动在在配置文件中查询一个匹配的bean。如果找到的话,就装配这个属性,
如果没找到的话就报错。
11、@Qualifier注解的作用
@Quanlifier注解来告诉Spring容器要装配哪个bean
12、请说明AOP是什么,用于哪些应用场景?
Aspect-OrientedProgramming,面向切面编程;应用场景:事物,日志
13、常用端口
21 ftp 文件传输协议(FTP)端口;有时被文件服务协议(FSP)使用 22 ssh 安全 Shell(SSH)服务 23 telnet Telnet 服务 25 smtp 简单邮件传输协议(SMTP) 53 domain 域名服务(如 BIND) NOTE:其实就是DNS域名解析服务 80 http 用于万维网(WWW)服务的超文本传输协议(HTTP) 109 pop2 邮局协议版本2 110 pop3 邮局协议版本3 143 imap 互联网消息存取协议(IMAP) 161 snmp 简单网络管理协议(SNMP) 443 https 安全超文本传输协议(HTTP) 加密的超文本协议https 873 rsync rsync 文件传输服务 3306 mysql MySQL 数据库服务 8080 webcache 万维网(WWW)缓存服务 7001 WebLogic 9080 Webshpere 9090 webshpere管理工具 8080 JBOSS 8080 TOMCAT 1080 QQ 1521 Oracle
6379 redis
11211 memcached
14、内存泄露的原因:
1 全局对象,主要是集合或队列,对象堆积; 2 stream,writer,reader 使用完,没有关闭。
15、串数据原因:
16、转发和重定向的区别
请求的转发只发出了一次请求,而重定向则发出了两次请求,可通过 chrome F12 查看核实
转发:
地址栏是初次发出请求的地址
在最终的Servlet 中,request 对象和中转的那个 request 是同一个对象
重定向:
地址栏不再是初次发出请求的地址,地址栏为最后响应的地址
在最终的Servlet 中,request 对象和中转的那个 request 不是同一个对象