JavaWeb 知识
在这里给大家推荐一个讲的不错的JavaWeb视频:
javaweb零基础入门到精通IDEA版
通过练习这些面试题顺便复习一下之前所学内容,由于思维导图太大没法分享过来,大家可以通过视频进行复习,如果需要资源的话可以留下邮箱,我看到会发到邮箱!
结构图:
1、HTTP请求的GET与POST方式的区别。
2、什么是Servlet,说一说Servlet的生命周期?
Servlet(Server Applet)是 Java Servlet 的简称,称为小服务程序或服务连接器,用 Java 编写的服务器端程序,具有独立于平台和协议的特性,主要功能在于交互式地浏览和生成数据,生成动态 Web 内容。
思维导图:
3、Servlet的基本结构?什么情况下调用doGet()和doPost()?
public class ServletName extends HttpServlet{
public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{
}
public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException{
}
}
到目前为止,只有一种情况可以发送POST请求:使用form表单,并且form标签中的method属性值为:method=“post”。
其他所有情况一律都是get请求:
- 在浏览器地址栏上直接输入URL,敲回车,属于get请求。
- 在浏览器上直接点击超链接,属于get请求。
- 使用form表单提交数据时,form标签中没有写method属性,默认就是get
- 或者使用form的时候,form标签中method属性值为:method=“get”
JSP 页面中的form标签里的method属性为get时调用doGet(),为post时调用doPost()。
4、Servlet 中转发和重定向的区别?
思维导图:
5、Request对象的主要方法?
- void setAttribute(String name, Object obj); // 向域当中绑定数据。
- Object getAttribute(String name); // 从域当中根据name获取数据。
- void removeAttribute(String name); // 将域当中绑定的数据移除
- String remoteAddr = request.getRemoteAddr(); // 获取客户端的IP地址
- request.setCharacterEncoding(“UTF-8”); //如果前端请求体提交的是中文,后端获取之后出现乱码,这行代码解决乱码问题
- String contextPath = request.getContextPath(); // 获取应用的根路径
- String method = request.getMethod(); // 获取请求方式
- String uri = request.getRequestURI(); // 获取请求的URI
- String servletPath = request.getServletPath(); // 获取servlet path
6、request.getAttribute()和request.getParameter()有何区别?
关于request对象中两个非常容易混淆的方法:
- // uri?username=zhangsan&userpwd=123&sex=1
String username = request.getParameter(“username”);
// 之前一定是执行过:- request.setAttribute(“name”, new Object())
Object obj = request.getAttribute(“name”);
// 以上两个方法的区别是什么?
// 第一个方法:获取的是 用户在浏览器上提交的数据。
// 第二个方法:获取的是 请求域当中绑定的数据。
7、MVC的各部分都有哪些技术来实现?如何实现?
MVC是Model-View-Controller的简写。Model代表的是应用的业务逻辑,View是应用的表示面,Controller是提供应用的处理过程控制(一般是一个Servlet),通过这种设计模型把应用逻辑,处理过程和显示逻辑分成不同的组件实现,这些组件可以进行交互和重用。