1、Mybatis 与 hibernate 的区别:
(1)、Mybatis 是半自动化的 ORM(对象关系映射)框架,hibernate 是全自动化的 ORM 框架。MyBatis是需要书写 sql 语句的,hibernate 中不需要书写 SQL 语句、写的是 HQL 语句(2)、Hiberate 的数据迁移性比 Mybatis 要强。
(3)、Mybatis 面向的是库/表;hibernate 中 hgl 是面向对象的。
2、SpringMVC 与 Struts2 的区别
- SpringMVC 的核心类是 DispatcherServlet;
- Struts2 的核心类是 StrutsPreparedAndExcuteFilter,是过滤器。
- SpringMvC 与 Struts2 在获取表单参数方面有所不同。
- Struts2 是通过 get/set 方法,或者通过模型驱动来获取参数。
3、SpringMVc 常用的注解
@Controller、@responseBody、 @RequestParam、 @RequestMapping、 @PostMapping、 @GetMapping @ControllerAdvice、@ExceptionHandler、@Autowired @Resource
4、SpringMVC 执行的流程
login.do/login.htm ———— > HandlerMapping
映射处理器
用户
———— > DispatcherServlet
核心控制器
———— > ViewResolver
解析视图
5、Spring 如何管理事务
(1)实现事务:
- 1、注解@Transactional(readonly=fase)
- 2、xmI 形式配置
(2) 什么情况下需要实现事务:
- 例如转账
(3)什么是事务? :
- 一组操作要么全部成功,要么全部失败
(4)事务个 4 大特性?
- A (原子性-不可逆)、
- C (一致性) )、
- I(隔离性-事务之间)、
- D (持久性)
(5)事务的隔离级别?
- Read uncommitted(读取未提交)、
- read committed(读取提交)、
- repetable read、
- serializable
(6) 什么是脏读?
一个事务读取了另外一个事务未提交的数据
6、Spring之IOC、AOP 等
7、Linux 中的命令 (要掌握30个)
- 安装过 Redis、Rabbima
- 部署项目:阿里云服务(linux)
8、Oracle 与 MysQL 的区别
(1)数据类型方面:
- Oralce: number、varchar2、nvarchar2、date年月日时分秒)等
- mysql: varchar、date、 datetime
(2) oracle是没有主键自增,需要通过序列来实现。MysQL直接实现
(3) Oracle分页使用的是rownum,mysql使用的是limit
9、jsp的9 个内置对象
- pageContext、request、session、
- application(ServletContext)、 response、 out、
- exception、 config、page 等 tomcat 服务器-->
work 目录下(存放Jsp 翻译成 servlet 后的代码)
10、四大域
page 域(当前整个界面)---> request 域 ---- > session (打开同一种浏览器)
---- > application 域 (存放不常用的数据)
11、JSP 与 Servlet 区别
(1) jsp 本质上就是 servlet
(2) jsp 擅长表示(展示数据),servlet 控制、业务逻辑
12、jsp有哪几大指令?
总共有3大指令: page、include、taglib 指令
13、动态引入与静态引入的区别
- 动态引入: A页面引入到 B的sp页面,A、B首先会译成两个单独的 servlet,然后动态拼接
- 静态引入: A页面引入到 B的jsp页面,只会生成一个 servlet