Servlet&JSP课后习题解答(8)

2019-09-01 10:46

第10章课后练习

? 选择题

1. 哪几个Web容器提供的验证方式,会出现对话框让使用者输入名称、密码? (A) BASIC

(B) FORM (C) DIGEST

(D) CLIENT_CERT 答案:A、C、D

2. 以下何者验证方式,有机会自行设计登入画面与注销机制? (A) BASIC (B) FORM (C) DIGEST

(D) CLIENT_CERT

答案:B

3. 在使用容器窗体验证时,

的action属性应设置为? (A) j_security (B) j_check

(C) j_security_check (D) 没有规范

答案:C

4. 假设有以下的web.xml设定档:

Login Required /delete.jsp /delete.do GET POST

admin

36

以下描述何者正确?

(A) 只有admin角色才可以存取/delete.jsp与/delete.do (B) admin角色只允许使用GET与POST方法 (C) GET与POST方法只允许admin使用

(D) 其它角色可使用GET、POST以外的HTTP方法存取 答案:A、C、D

提示:admin可以使用所有的HTTP方法来存取/delete.jsp与/delete.do。

5. 如果要保证数据传输时的完整性与机密性,必须在

中使用哪两个标签? (A) (B) (C) (D) 答案:A、B

6. 假设有以下的web.xml设定档:

Login Required /delete.jsp /delete.do

以下描述何者正确?

(A) 所有角色都可以存取/delete.jsp与/delete.do

(B) 存取/delete.jsp与/delete.do任何HTTP方法都是允许的 (C) 没有任何角色可以存取/delete.jsp与/delete.do (D) 这个设定片段是错误的,无法部署 答案:C

7. 验证成功但授权失败,则会出现哪种状态码及讯息?

(A) (B) (C) (D)

404 Not Found 401 Unauthorized 403 Forbidden 500 Error

37

答案:C

8. 哪几个Web容器提供的验证方式,会需要使用到凭证? (A) (B) (C) (D) 答案:D

BASIC FORM DIGEST

CLIENT_CERT

9. HttpServletRequest中的isUserInRole()可以协助达到安全的哪项

要求? (A) 验证 (B) 授权 (C) 机密性 (D) 完整性 答案:B

提示:会使用到isUserInRole()方法的URL,基本上会先透过宣告式安全的验证及授权,再透过isUserInRole()作更细部的授权控制。

10. 以下何者是的合法设定值? (A) NONE

(B) CONFIDENTIAL (C) INTEGRAL (D) SSL 答案:A、B、C

? 实作题

1. 以第9章的课后练习为基础,假设你将开发一个删除留言的功能,这个功能

只能登入且具备admin角色的使用者才可以使用,若删除留言需要用到

/delete.jsp与/delete.do两个URL,请使用容器宣告式窗体验证对这两个URL加以保护。

38

第11章课后练习

? 选择题

1. 哪些JDBC驱动程序可以有跨平台的特性? (A) TYPE 1 (B) TYPE 2 (C) TYPE 3 (D) TYPE 4 答案:C、D

2. 哪种JDBC驱动程序是基于数据库所提供的API来进行实作? (A) (B) (C) (D) 答案:B

TYPE 1 TYPE 2 TYPE 3 TYPE 4

3. JDBC相关接口或类别,是放在哪个套件之下加以管理? (A) (B) (C) (D) 答案:C

java.lang javax.sql java.sql java.util

4. 使用JDBC时,通常会需要处理哪个受检例外(Checked Exception)?

(A) RuntimeException (B) SQLException (C) DBException (D) DataException 答案:B

5. 关于Connection的描述,何者正确?

(A) 可以从DriverManager上取得Connection (B) 可以从DataSource上取得Connection (C) 在方法结束之后Connection会自动关闭 (D) Connection是执行绪安全(Thread-safe)

39

答案:A、B

提示:Connection不是执行绪安全的,不可以在多执行绪环境下共享Connection,以免发生数据错乱的问题。

6. 使用Statement来执行SELECT等查询用的SQL指令时,应使用下列哪

个方法? (A) (B) (C) (D) 答案:B

executeSQL() executeQuery() executeUpdate() executeFind()

7. 哪个对象正确使用下,可以适当地避免SQL Injection的问题? (A) (B) (C) (D) 答案:B

Statement ResultSet

PreparedStatement Command

8. 取得Connection之后,如何取得Statement对象? (A) (B) (C) (D) 答案:A

conn.createStatement() conn.buildStatement() conn.getStatement()

conn.createSQLStatement()

9. 以下描述何者有误?

(A) 使用Statement一定会发生SQL Injection

(B) 使用PreparedStatement就不会发生SQL Injection (C) 不使用Connection时必须加以关闭

(D) ResultSet代表查询的结果集合 答案:A、B

提示:只要有正确的使用观念,即使用Statement也不一定会发生SQL Injection。如果使用不正确,使用PreparedStatement也有可能发生SQL Injection。

10. 使用Statement的executeQuery()方法,会传回哪个型态?

(A) int

40


Servlet&JSP课后习题解答(8).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:环境工程课程设计

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: