下面是千锋java工程师培训班的老师整理的2018全新面试题(含答案),希望可以对大家有所帮助。
1.简述软件开发文档?
需求分析、概要设计、详细设计、操作手册、测试计划
2.你认为一个项目如何才正确?
是企业利益扩大化。
3.struts2工作原理?
客户端初始化一个执行servlet的请求
这个请求经过一系列的过滤器,被FilterDispatcher调用,询问ActionMapper来决定是否调用Action
FilterDispatcher把请求的处理交给ActionProxy
ActionProxy经由Configuraction Manager询问相关的配置文件,找到需要的Action类
ActionProxy创建ActionInvocation的实例
ActionInvocation调用Action前后的拦截器
Action执行完毕后,根据struts.xml配置文件找到对应的视图页面
4.你认为项目中很重要的过程是那些?
分析、设计阶段 尽量找出进度的优先级
5.Hibernate 工作原理?
读取并解析配置文件
创建SessionFactory
打开Session
创建事务:transaction
持久化操作
提交事务
关闭Session
关闭SessionFactory
6.谈谈SSH整合?
struts(表示层)+spring(业务层)+hibernate(持久层)
struts是一个表示层的框架,主要用于接收请求,分发请求。struts其实属于MVC中的VC层次的
hibernate是一个持久层的框架,主要负责与关系数据库的操作
spring是一个业务层的框架,是一个整合的框架,能够很好的黏合表示层和持久层。
7.maven是什么?有什么作用?
是一个项目管理、构建工具
作用:帮助下载jar 寻找依赖,帮助下载依赖 热部署、热编译
8.WEB 前端优化?
减少HTTP请求的数量(合并css、js、图片)
利用浏览器的缓存机制
利用GZIP压缩机制:只针对文本类资源有效
把CSS文件放在HTML开头
把javascript文件放在HTML结尾
避免CSS表达式(判断浏览器)
使用javascript压缩
减少DNS查找
避免重定向
使用ajax
9.安全性测试
利用安全性测试技术,找到潜在的漏洞
Java高级程序员面试题
10.事务隔离级别(4种)
Serializable(串行化):一个事务在执行过程中完全看不到其他事物对数据库所做的更新(事务执行的时候不允许别的事务并发执行,事务只能一个接着一个地执行,而不能并发执行)
Repeatable Read(可重复读):一个事务在执行过程中可以看到其它事务已经提交的新插入的记录,但是不能看到其它事务对已有记录的更新
Read Commited(读已提交数据):一个事务在执行过程中可以看到其它事务已经提交的新插入的记录,而且能看到其它事务已经提交的对已有记录的更新。
Read Uncommitted(读未提交数据):一个事务在执行过程中可以看到其它事务没有提交的新插入的记录的更新,而且能看其它事务没有提交到对已有记录的更新。
相关文章
了解千锋动态
关注千锋教育服务号
扫一扫快速进入
千锋移动端页面
扫码匿名提建议
直达CEO信箱