目录
1、请描述HTML、CSS、DOM、JavaScript分别表示的含义。
2、请列举出HTML常用的标记。(至少10个)
1、简述HTTP1.1协议的通信过程?
2、简述POST请求和GET请求有什么不同?(至少2点)
3、Tomcat安装目录下的子目录及其说明如下:
1、请列举Servlet接口中的方法,并分别说明这些方法的特点及其作用。
2、简述ServletContext接口的三个主要作用。
1、简述请求转发与重定向的异同?(至少写3点)
2、请写出禁止浏览器缓存页面的核心代码。
1、简述什么是会话技术?
2、简述Cookie与Session的区别?(至少写出3点)
1、请简述JSP的运行原理。
2、请简述JSP中的9个隐式对象。
1、简述Javabean规范都有哪些?(至少写出2点)
2、简述定义EL标识符的规范。
1、简述过滤器的作用。
2、简述Servlet事件监听器的作用。(写出三点)
1、请简述什么是JDBC。
2、简述JDBC的实现步骤。
1、请思考数据库连接池的工作机制是什么?
2、简述DriverManager和DataSource中的getConnection()方法的区别。
1、简述什么是MVC设计模式。
2、简述MVC设计模式中模型(Model)模块的作用。
3、 实现文件上传的表单页面都需要哪些配置?
4、简述文件下载的实现原理。
1、请描述传智书城项目的开发环境。
2、请写出传智书城项目搭建所需要导入的jar包。
1、请描述HTML、CSS、DOM、JavaScript分别表示的含义。
HTML:HTML是英文Hyper Text Markup Language的缩写,中文译为“超文本标记语言”,其主要作用是通过HTML标记对网页中的文本、图片、声音等内容进行描述。
CSS:CSS 是 Cascading Style Sheet 的缩写,译作“层叠样式表单”,是用于(增强)控制网页样式并允许将样式信息与网页内容分离的一种标记性语言。
DOM:DOM是Document Object Model(文档对象模型)的简称,是W3C组织推荐的处理可扩展标志语言的标准编程接口,它可以以一种独立于平台和语言的方式访问和修改一个文档的内容和结构。
JavaScript:JavaScript是Web中一种功能强大的脚本语言,被设计为向 HTML 页面增加交互性,常用来为网页添加各式各样的动态功能,它不需要进行编译,直接嵌入在HTML页面中,就可以把静态的页面转变成支持用户交互并响应事件的动态页面。
1、简述HTTP1.1协议的通信过程?
HTTP1.1协议的通信过程如下:
客户端与服务器端建立TCP连接。
客户端可以向服务器端发送多个请求,并且在发送下个请求时,无需等待上次请求的返回结果。
服务器必须按照接受客户端请求的先后顺序依次返回响应结果。
4)客户端发出关闭TCP连接的请求。
服务器端关闭TCP连接。
2、简述POST请求和GET请求有什么不同?(至少2点)
POST传输数据大小无限制
POST比GET请求方式更安全
3、请列举出Tomcat安装目录下的子目录,并对其进行简要说明?(至少列出5个)
Tomcat安装目录下的子目录及其说明如下:
bin:用于存放Tomcat的可执行文件和脚本文件(扩展名为.bat的文件),如tomcat7.exe、startup.bat;
conf:用于存放Tomcat的各种配置文件,如web.xml、server.xml;
lib:用于存放Tomcat服务器和所有Web应用程序需要访问的JAR文件;
logs:用于存放Tomcat的日志文件;
temp:用于存放Tomcat运行时产生的临时文件;
webapps:Web应用程序的主要发布目录,通常将要发布的应用程序放到这个目录下;
work:Tomcat的工作目录,JSP编译生成的Servlet源文件和字节码文件放到这个目录下。
1、请列举Servlet接口中的方法,并分别说明这些方法的特点及其作用。
sservlet接口中有init、service、destroy 、getServletConfig和getServletInfo这 5个方法,这些方法的特点及其作用具体如下:
1)init(ServletConfig config)方法,该方法在服务器对Servlet第一次访问时调用,负责Servlet初始化工作。在一个Servlet的生命周期中只执行一次。该方法接收一个ServletConfig类型的参数,Servlet容器可以通过这个参数向Servlet传递初始化配置信息。
2)service(ServletRequest request,ServletResponse response)方法,该方法负责响应用户的请求,当容器接收到客户端访问Servlet对象的请求时,就会调用此方法。
3)destroy()方法,该方法方法负责释放Servlet对象占用的资源。当Servlet对象被销毁时,容器会调用此方法。
4)getServletConfig()方法,该方法返回容器调用init(ServletConfig config)方法时传递给Servlet的ServletConfig对象。
5)getServletInfo()方法,该方法返回一个字符串,其中包含了关于Servlet的信息,例如,作者、版本和版权等信息。
2、简述ServletContext接口的三个主要作用。
1)获取Web应用程序的初始化参数
2)实现多个Servlet对象共享数据
3)读取Web应用下的资源文件
1、简述请求转发与重定向的异同?(至少写3点)
1、请求转发与重定向的异同点如下:
1)请求转发和重定向都可以实现访问一个资源时转向当前应用资源
2)请求转发是一次请求一次响应,而重定向为两次请求两次响应
3)一般情况下应该使用请求转发,减少浏览器对服务器的访问,减轻服务器压力
4)如果需要改变浏览器的地址栏,或更改浏览器的刷新按钮的功能时需要使用重定向
2、请写出禁止浏览器缓存页面的核心代码。
response.setDateHeader(“Expires”,0);
response.setHeader(“Cache-Control”,“no-cache”);
response.setHeader(“Pragma”,“no-cache”);
1、简述什么是会话技术?
会话过程类似于生活中的打电话过程,它指的是一个客户端(浏览器)与Web服务器之间连续发生的一系列请求和响应过程。在Servlet技术中,提供了两个用于保存会话数据的对象,分别是Cookie和Session。
2、简述Cookie与Session的区别?(至少写出3点)
1)Cookie和HttpSession是保存会话相关数据的技术,其中Cookie将信息存储在浏览器端,是客户端技术,Session将数据保存在服务器端,是服务器端技术
2)Cookie是基于HTTP协议中的Set-Cookie响应头和Cookie请求头进行工作的
3)默认情况下HttpSession是基于一个名称为JSESSIONID 的特殊Cookie工作的
4)浏览器对Cookie具有严格的限制,一个网站能在浏览器中保存多少Cookie是有限制的
5)HttpSession默认是基于Cookie运作的。
1、请简述JSP的运行原理。
1)客户端发出请求,请求访问JSP文件。
2)JSP容器先将JSP文件转换成一个Java源文件(Java Servlet源程序),在转换过程中,如果发现JSP文件中存在任何语法错误,则中断转换过程,并向服务端和客户端返回出错信息。
3)如果转换成功,则JSP容器将生成的Java源文件编译成相应的字节码文件*.class。该class文件就是一个Servlet,Servlet容器会像处理其他Servlet一样来处理它。
4)由Servlet容器加载转换后的Servlet类(.class文件)创建一个该Servlet(JSP页面的转换结果)实例,并执行Servlet的jspInit()方法。jspInit()方法在Servlet的整个生命周期中只会执行一次。
5)执行jspService()方法来处理客户端的请求。对于每一个请求,JSP容器都会创建一个新的线程来处理它。如果多个客户端同时请求该JSP文件,则JSP容器也会创建多个线程,使得每一个客户端请求都对应一个线程。JSP运行过程中采用的这种多线程的执行方式可以极大地降低对系统资源的需求,提高系统的并发量并缩短响应时间。需要注意的是,由于第(4)步生成的Servlet是常驻内存的,所以响应速度非常快。
6)如果JSP文件被修改了,则服务器将根据设置决定是否对该文件重新编译,如果需要重新编译,则使用重新编译后的结果取代内存中常驻的Servlet,并继续上述处理过程。
7)虽然JSP效率很高,但在第一次调用的时候往往由于需要转换和编译,所以会产生一些轻微的延迟。此外,由于系统资源不足等原因,JSP容器可能会以某种不确定的方式将Servlet从内存中移除,发生这种情况时首先会调用jspDestroy()方法,然后Servlet实例会被加入“垃圾收集”处理。
8)当请求处理完成后,响应对象由JSP容器接收,并将HTML格式的响应信息发送回客户端。
2、请简述JSP中的9个隐式对象。
1)out:主要用于页面输出;
2)request:用于得到用户请求信息;
3)response:表示服务器向客户端的回应信息;
4)config:包含服务器的配置信息,可以使用该对象获得Servlet初始化参数;
5)session:主要用来保存用户信息;
6)application:包含所有用户的共享信息;
7)page:指当前页面转换后的Servlet类的实例;
8)pageContext:表示JSP页面容器,它提供了对JSP页面内所有的对象及名字空间的访问;
9)exception::表示JSP页面所发生的异常,在错误页中才起作用。
1、简述Javabean规范都有哪些?(至少写出2点)
1)它必须具有一个公共的、无参的构造方法,这个方法可以是编译器自动产生的缺省构造方法。
2)它提供公共的setter方法和getter方法让外部程序设置和获取JavaBean的属性。
3)它是一个公有类。
4)通常需要实现java.io.Serializable,用于序列化。
2、简述定义EL标识符的规范。
1)可以由任意顺序的大小写字母、数字和下划线组成
2)不能以数字开头
3)不能是EL中的保留字,如and、or、gt;
4)不能是EL隐式对象,如pageContext;
5)不能包含单引号(’)、双引号(")、减号(-)和正斜线等特殊字符
1、简述过滤器的作用。
Filter被称作过滤器或者拦截器,其基本功能就是对Servlet容器调用Servlet的过程进行拦截,从而在Servlet进行响应处理前后实现一些特殊功能。
2、简述Servlet事件监听器的作用。(写出三点)
1)监听Web应用程序中ServletContext、HttpSession和ServletRequest等域对象的创建和销毁过程。
2)监听ServletContext、HttpSession和ServletRequest等域对象属性的修改。
3)感知绑定到HttpSession域中某个对象的状态。
1、请简述什么是JDBC。
JDBC的全称是Java数据库连接(Java Database Connectivity),它是一套用于执行SQL语句的Java API。应用程序可通过这套API连接到关系数据库,并使用SQL语句来完成对数据库中数据的查询、更新和删除等处理。
2、简述JDBC的实现步骤。
1)加载并注册数据库驱动
2)通过DriverManager获取数据库连接
3)通过Connection对象获取Statement对象
4)使用Statement执行SQL语句
5)操作ResultSet结果集
6)关闭连接,释放资源