1 Jsp和Servlet的区别
相同点
jsp经编译后就变成了servlet,jsp本质就是servlet,jvm只能识别java的类,不能识别jsp代码,web容器将jsp的代码编译成jvm能够识别的java类。当客户端通过 http 请求一个 JSP 页面,首先 Tomcat 会将JSP翻译并编译成为 Servlet,然后执行 Servlet的生命周期方法处理请求与响应。
不同点
JSP侧重视图展现数据,Sevlet主要用于控制逻辑获取数据。
Servlet中没有内置对象 。
JSP中的内置对象都是必须通过HttpServletRequest对象,HttpServletResponse对象以及HttpServlet对象得到。
2 JSP中foreach标签作用,常用属性
作用:遍历集合/迭代输出标签内部的内容。它既可以进行固定次数的迭代输出,也可以依据集合中对象的个数来决定迭代的次数。
常用标签:
- items:指定要遍历的集合,必须使用EL表达式
- var:指定每个元素的变量名,相当于集合中每个对象 ${对象名.属性名} 获取每个属性
3 四大作用域与作用范围
- 页面域page : 只在一个页面中起作用
- 请求域request : 一个用户的一次请求(可以访问多个页面的)
- 会话域session : 一个用户的多次请求
- 上下文域application : 多个用户的多次请求
4 MVC含义
MVC 是一种分层开发的模式,其中有:
- M:Model,业务模型,处理业务,存储数据,获取数据。 JavaBean对象
- V:View,视图,界面展示,展示数据。JSP或HTML
- C:Controller,控制器,处理请求,调用模型和视图。Servlet
MVC的好处
1.职责单一,互不影响
2.有利于分工协作
3.有利于组件重用
5 三层架构含义
三层架构就是对一个功能模块分层设计,其中把功能划分为表示层(UI)、业务逻辑层(BLL)和数据访问层(DAL)的三层架构(java的三层架构:SSM= SpringMVC/Struts2 + Spring + MyBatis/Hibernate)
- 数据访问层:对数据库的CRUD基本操作
- 业务逻辑层:对业务逻辑进行封装,组合数据访问层中基本功能,形成复杂的业务逻辑功能
- 表现层:接收请求,封装数据,调用业务逻辑层,响应数据