JavaWeb练习题
JavaWeb试题解析链接:https://blog.youkuaiyun.com/Lvruoyu/article/details/124440007
关注拂晓DayBreak公众号,回复javaweb练习题,便捷观看
题干 | 选项A | 选项B | 选项C | 选项D |
---|---|---|---|---|
超链接指向的地址写在哪个属性里 | Value | url | Href | Action |
在表单中添加隐藏域时,需要设置标记的type属性值为 | Hidden | submit | Text | File |
不是JSP运行必须的是 | 操作系统 | Java JDK | 支持Jsp的Web服务器 | 数据库 |
下面哪种是B/S结构 | 数据库/服务器 | 浏览器/服务器 | 控制台/服务器 | 客户端/服务器 |
下面哪些标记不可以改变文本的格式 | < h2> | < center> | < br> | < input> |
以下哪个不属于JSP指令标签 | jsp:include | taglib | Include | Page |
下面哪个不可以作为< form>标签的属性 | id | method | Src | Action |
在Java Web中,Servlet从实例化到消亡是一个生命周期。下列描述正确的是 | init()方法是容器调用的Servlet实例的第一个方法 | 在典型的Servlet生命周期模型中,每次Web请求就会创建一个Servlet实例,请求结束Servlet就消亡了 | 在容器把请求传送给Servlet之后,和在调用Servlet实例的doGet或者doPost方法之前,容器不会调用Servlet实例的其他方法 | 在Servlet 实例消亡之前,容器调用Servlet实例的close()方法 |
仔细查看下面的这段代码: < style> .one{ font-family:宋体; font-size:24px; color:red; } 这段css代码会改变哪一个标签的样式 | < h2 id=“one”> 应用了选择器one | < h2 type=“one”> 应用了选择器one | < h2 name=“one”> 应用了选择器one | < h2 class=“one”> 应用了选择器one |
包含CSS样式的方式,不包含哪种 | 内嵌式 | 链接式 | 注入式 | 行内样式 |
下面( )命令可用于编译Java程序 | Javadoc | Javap | javac | Java |
Java源代码文件的扩展名是 | .com | 以上都不对 | .java | .class |
对于ServletRequest接口的获取请求参数的方法的描述那一项是正确的? | getParameter方法只用于接收POST请求参数,接收GET请求参数需要使用getQueryString方法 | 如果一个参数key有多个值,那么getParameter(key)方法会返回空 | 如果一个参数key有多个值,那么getParameterValues(key)方法会返回一个包含所有值的字符串数组 | getParameter方法返回Object对象,使用前要强制类型转换:如String str=(String) request.getParameter(key) |
下面哪个标记可以更改网页的标题 | < title> | < body> | < head> | < html> |
下面哪一组属于JSP动作标识 | <c:out> jsp:include | jsp:include jsp:page | jsp:include <c:out> | jsp:include jsp:forward |
在Jsp页面中嵌入Java逻辑代码。应用的哪个标记 | <!-- – > | /* */ | <%-- --%> | <% %> |
关于MVC架构的缺点,下列的叙述哪一项是不正确的 | 提高了对开发人员的要求 | 代码复用率低 | 增加了文件管理的难度 | 产生较多的文件 |
在Jsp页面中不包括,下面哪项内容 | 属性文件 | 动态脚本 | HTML标记语言 | JSP指令标签项 |
仔细查看下面的这段web配置: < servlet> < servlet-name>SimpleServlet< /servlet-name> < servlet-class>com.lyq.SimpleServlet< /servlet-class> < /servlet> < servlet-mapping> < servlet-name>SimpleServlet< /servlet-name> < url-pattern>/SimpleServlet< /url-pattern> < /servlet-mapping> JSP中使用哪个URL可是访问此配置中的Servlet | /SimpleServlet | com.lyq.SimpleServlet | SimpleServlet | Servlet |
要设置JSP页面支持的语言,要设置page指令的哪个属性 | contentType属性 | Import属性 | extends属性 | language属性 |
jsp的哪个指令允许页面使用者自定义标签库? | include指令 | taglib指令 | page指令 | plugin指令 |
下面哪项内容使用request对象无法实现 | 定义属性 | 获取客户端IP | 获取表单提交的信息 | 将页面重定向至index.jsp页 |
HttpServlet类中,用来处理POST请求的方法是 | doHead | doGet | doPost | doPut |
下面哪个接口可以向数据库发送sql | PreparedStatement | ResultSet | DriverManager | Connection |
下面哪项不属于Jsp内置对象 | include | out | session | Page |
开发Servlet程序通常继承哪个接口 | 处理从数据库返回的结果 | 关闭数据库 | 向数据库发送SQL语句 | 同数据库建立连接 |
Servlet程序的入口点是 | init() | main() | service() | doGet() |
以下哪个对象提供了访问和放置页面中共享数据的方式 | pageContext | response | request | session |
获取用户提交的表单属性,使用的是request对象的什么方法 | getRemotePort()方法 | setAttribute()方法 | setCharacterEncoding()方法 | getParameter()方法 |
session的有效有效时间是以什么为单位的 | 秒 | 毫秒 | 分钟 | 小时 |
下面的代码是哪种数据库的驱动 Class.forName(“com.mysql.jdbc.Driver”); | SqlServer | MySQL | DB2 | Oracle |
下列动态网页和静态网页的根本区别描述错误的是 | 静态网页服务器端返回的HTML文件是事先存储好的 | 动态网页服务器端返回的HTML文件是程序生成的 | 静态网页文件里只有HTML标记,没有程序代码 | 动态网页中只有程序,不能有HTML代码 |
下列关于Servlet接口的说法中,正确的是 | Servlet接口中只有一个默认的实现类HttpServlet | Servlet接口中定义了4个抽象方法 | Servlet接口的抽象方法中,init()、service()和destroy()方法可以表现Servlet的生命周期 | GenericServlet类不是Servlet接口的实现类 |
Servlet的service()方法是作用是 | 完成初始化工作 | 获取Servlet对象的配置信息 | 处理客户端的请求 | 释放资源 |
题干 |
---|
在网页中添加一个表单,需要添加____________________________________标记。 |
使用< jsp:setProperty>动作标记可以在JSP页面中设置Bean的属性,但必须保证Bean有对应的____________________________________方法。 |
在表单中添加一个提交按钮,< input>标记的type属性值应该为____________________________________。 |
Servlet中使用的方法doGet, ________________________________________________________ , ________________________________________________________ . |
HTML中换行标记是____________________________________,段落标记是____________________________________,标题标记是____________________________________,居中标记是____________________________________。 |
Tomcat服务器的默认端口号是____________________________________ |
把图片固定成300像素宽、200像素高。 < img src=“red.jpg” ____________________________________/> |
能在浏览器的地址栏中看到提交数据的表单提交方式是____________________________________ |
JSP页面中包含有几种注释形式____________________________________ |
JSP的编译指令标记通常是指page指令,,。 |
要实现将index.jsp页面,转发至erter,.jsp页面中,需要使用____________________________________标识。 |
在“<%=”和“%>”标记之间放置____________________________________,可以直接输出其值。 |
在表单中添加一个提交按钮____________________________________。 < form action=“welcome.jsp” > < !— 请在此处添加提交按钮 --> < /from> |
当一个客户线程执行某个方法时,其他客户必须等待,直到这个客户线程调用执行完毕该方法后,其他客户线程才能执行,这样的方法在定义时必须使用关键字____________________________________ |
include指令中 的file属性的意思是____________________________________ |
一般用JSP来处理____________________________________,用Servlet来实现页面显示 |
负责处理客户请求的对象是____________________________________。 |
JSP的Page编译指令的属性Language的默认值是____________________________________。 |
要把Java的表达式结果输出到JSP页面中使用的是____________________________________。 |
JSP页面中request.getParamter(String )得到的数据,其类型是____________________________________。 |
要包含一个外部文件,需要使用____________________________________动作标识。 |
< jsp:useBean id=“bean的名称” scope=“bean的有效范围” class=“包名.类名”/>动作标记中,scope的值不可以是____________________________________ |
要实现将index.jsp页面,转发至erter,.jsp页面中,需要使用____________________________________标识。 |
当一个客户线程执行某个方法时,其他客户必须等待,直到这个客户线程调用执行完毕该方法后,其他客户线程才能执行,这样的方法在定义时必须使用关键字____________________________________。 |
在连接数据库之前,首先要加载要连接数据库的驱动到JVM(Java虚拟机),通过java.lang.Class类的静态方法____________________________________实现。 |
JavaBean的作用范围可以是page、request、session和____________________________________四个作用范围中的一种 |
Servlet的生命周期的三个阶段分别为____________________________________阶段、____________________________________阶段和____________________________________阶段。 |
能在浏览器的地址栏中看到提交数据的表单提交方式是____________________________________ |
对于insert、update和delete语句,调用____________________________________方法,而select语句则调用____________________________________方法, |
JavaBean的属性必须声明为private,方法必须声明为____________________________________访问类型 |
Servlet在调用doGet()或doPose()方法之前,首先调用____________________________________方法。 |
为了实现请求重定向,HttpServletResponse接口定义了一个____________________________________方法 |
Java字节码文件的扩展名是____________________________________。 |
Servlet的配置主要有两种方式,分别是通过Web应用的配置文件_______________________________________来完成配置和使用_______________________________________注解的方式完成。 |
假设Form表单的提交方式为GET,那么在Servlet中调用的是____________________________________方法。 |
Servlet的生命周期大致可以分为三个阶段,分别是____________________________________、____________________________________和销毁阶段。 |
Servlet的生命周期的三个阶段分别为____________________________________阶段、____________________________________阶段和____________________________________阶段。 |
如果当前Web资源不想处理请求,RequestDispatcher接口提供了一个____________________________________方法,该方法可以将当前请求传递给其他Web资源对这些信息进行处理并响应给客户端,这种方式称为请求转发。 |
添加一个超链接“百度”,点击之后可以连接到百度搜索__________________________________。 |
题干
1. 实现第一个JDBC程序。
提示:
第一步加载并注册数据库驱动
第二步通过DriverManager获取数据库连接(数据库名字db,数据库用户root,数据库密码123456)
第三步通过Connection对象获取Statement对象
第四步使用Statement对象执行SQL语句(sql语句为String sql = "select * from users";)
第五步遍历输出结果集
请按照提示完成代码编写
2.简述请求转发和重定向的区别
3.程序填空--显示用户上次访问时间
当用户访问某些Web应用时,经常会显示出该用户上一次的访问时间。例如,QQ登录成功后,会显示用户上次的登录时间。本案例要求使用Cookie技术实现显示用户上次的访问时间。
@WebServlet(name = "ServletDemo11",value = "/ServletDemo11")
public class ServletDemo11 extends HttpServlet {
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// 指定服务器输出内容的编码方式为UTF-8,防止发生乱码
resp.setContentType("① ");
// 获取所有的cookie
Cookie[] cookies = req.getCookies();
// 定义一个flag变量用于判断cookie是否为空
boolean ② = false;
// 遍历cookies数组
if (cookies != null && cookies.length > 0) {
// 定义一个字符串,用于保存 lastTime
String lastTime = "lastTime";
for (Cookie cookie : cookies) {
// 获取cookie的名称
String name = ③ ;
// 判断是否为lastTime
if (lastTime.equals(name)) {
// 该cookie不是第一次登录,显示上次登录的时间
flag = true;
// 获取cookie的value
String value = ④ ;
System.out.println(value);
System.out.println("------------");
// 解码
value = URLDecoder.decode(value, "utf-8");
System.out.println(value);
resp.getWriter().write("欢迎回来 , 您上次访问的时间是: " + value);
// 重新设置访问的时间
Date date = new Date();
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年mm月dd日 HH:mm:ss");
String format = simpleDateFormat.format(date);
System.out.println(format);
System.out.println("-------------");
String encode = URLEncoder.encode(format,"utf-8");
System.out.println(encode);
// 保存cookie的值
cookie.⑤ ;
// 设置cookie的存活时间 一个月
cookie.⑥ ;
// 将cookie返回
resp.addCookie(cookie);
break;
}
}
if (cookies == null || cookies.length == 0 || flag == false) {
Date date = new Date();
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年mm月dd日 HH:mm:ss");
String format = simpleDateFormat.format(date);
System.out.println(format);
System.out.println("-------------");
String encode = URLEncoder.encode(format,"utf-8");
System.out.println(encode);
// 创建一个cookie
Cookie cookie = new Cookie(lastTime,encode);
// 设置cookie的存活时间 一个月
cookie.setMaxAge(60 * 60 * 24 * 30);
// 加入当前cookie请求时间
resp.addCookie(cookie);
resp.getWriter().write("您好欢迎首次登陆!!!");
}
}
}
}
4.有人说:JSP是Servlet的高级实现,在MVC中,控制器部分应该用JSP实现,请您回答JSP和servlet的异同
5.简单回答Servlet的工作过程。