更新时间:2020-06-29 15:41:50 来源:极悦 浏览1963次
实现一个拷贝文件的工具类要使用字节流还是字符流?
应该使用字节流,因为在文件中可能会包含图片之类的字节
线程的实现方式?怎么样启动线程?怎么区分线程?
线程的实现方式有三种:第一种是继承Thread类,第二种是实现Runnable接口,第三种是实现java.util.concurrent下的Callable接口。
线程的启动:调用start()方法---可以使得线程处于可运行状态,但是不一定会执行,如果实在main()方法中调用的话,run()会执行
区分线程:给线程设置名字
线程并发库和线程池的作用?
线程池的好处:
限定线程的个数,不会导致由于线程过多导致系统运行缓慢或崩溃
线程池每次都不需要去创建和销毁,节约了资源
线程池不需要每次都去创建,响应时间更快
设计模式和常用的设计模式?
一共有23中设计模式?常用的有单例模式、工厂模式、装饰者模式、代理模式
单例模式:
工厂模式:
装饰者模式:
代理模式:
HTTP、GET、POST请求的区别?
GET请求的数据会暴露在地址栏当中,而POST不会
对于GET,特定的浏览器和服务器对于URL有长度限制,传输数据时会受到限制
POST的安全性比GET高
说说你对Servlet的理解?
就是运行在WEB服务器上的一个Java小程序,用来接收和响应客户端发送过来的请求,通常使用HTTP协议
使用方法:
编写一个Java类,实现servlet接口
把开发好的Java类部署到web服务器当中
Servlet的生命周期?
当用户第一次访问Servlet的时候,服务器会创建一个Servlet的实例,那么Servlet中的init方法就会执行。任何一次请求都会创建一个线程访问Servlet中的service方法,根据请求的不同方式调用不同的doXXX()方法。当Servlet从服务器中移除或者关闭服务器,Servlet的实例就会被销毁,那么destory()方法就会执行。
Servlet中Forward和Redirect的区别
forward重定向:两次request,重定向可以访问自己的web应用以外的资源。重定向的过程,传输的信息会被丢失。
redirect请求转发:服务器内部把对一个request/response的处理权交给另外一个客户端,传输的信息不会丢失。
JSP和Servlet的相同点和不同点?
1、联系:
JSP是Servlet技术的扩展,本质上是Servlet的简易方式,更强调应用的外表表达。
JSP编译后是”类servlet”。
2、不同点:
-Servlet的应用逻辑是在Java文件中,并且完全从表示层中的HTML里分离开来。Servlet如果要实现html功能,必须使用Writer输出对应的html.
-JSP的情况是Java和HTML可以组合成一个扩展名为.jsp的文件。做界面展示比较方便,而嵌入逻辑复杂.
-JSP侧重于视图,Servlet主要用于控制逻辑
JSP内置对象和四大作用域
九大内置对象:
request、response、config、application、session、exception、page、out、pagecontext
四大作用域:
page---只能在当前页面使用
request---只能在同一次请求当中使用
session---只能在同一个会话(session对象)中使用
context---只能在同一个web应用中使用
20、session和cookie的区别和使用场景?
区别:
1.cookie的数据存储在客户端,session的数据存储在服务器上
2.cookie不是很安全,别人可以通过分析存放在本地的cookie并进行cookie欺骗,考虑到安全应该使用session
3.session会在一定时间内保存在服务器上,当访问增多时,会影响服务器的性能.考虑到服务器性能,应当使用cookie.
4.单个cookie保存数据不能超过4k,很多浏览器显示一个站点最多保存20个cookie
5.将重要信息保存在session中(登陆),将其他需要保留的信心存放在cookie中(购物车,cookie是可以在客户端禁用的,这时候要使用cookie+数据库的方式实现购物车,当cookie中不能取出数据,就从数据库中取)
以上就是极悦java培训机构的小编针对“2020年Java开发面试题问题总结”的内容进行的回答,希望对大家有所帮助,如有疑问,请在线咨询,有专业老师随时为你服务。
0基础 0学费 15天面授
Java就业班有基础 直达就业
业余时间 高薪转行
Java在职加薪班工作1~3年,加薪神器
工作3~5年,晋升架构
提交申请后,顾问老师会电话与您沟通安排学习