JAVAEE程序设计复习题

JAVAEE程序设计复习题

一、 单选题(共50题,50分)
1、假设Dalian是一个Web服务目录,其虚拟目录为moon。A.jsp保存在Dalian的子目录sea中。那么在Tomcat服务器(端口号8080)所在计算机的浏览器键入下列哪种方式是访问A.jsp的正确方式?

2、Staternent类提供3种执行方法,用来执行更新操作的是( )。
A、 executeQuery()
B、 executeUpdate()
C、 execute()
D、 query()
正确答案: B

3、下列代码生成了一个结果集
conn=DriverManager.getConnection(uri,user,password);
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_READ_ONLY);
rs=stmt.executeQuery(“select * from book”);
下面哪项对该rs描述正确

A、 不能用结果集中的数据更新数据库中的表
B、 能用结果集中的数据更新数据库中的表
C、 执行update方法能更新数据库中的表
D、 不确定
正确答案: A

4、下列代码生成了一个结果集
conn=DriverManager.getConnection(uri,user,password);
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_READ_ONLY);
rs=stmt.executeQuery(“select * from book”);
rs.first();rs. previous();
下面哪项对该rs描述正确
A、 rs.isFirst()为真
B、 rs.ifLast()为真
C、 rs.isAfterLast()为真
D、 rs.isBeforeFirst()为真
正确答案: D

5、下列代码中rs为查询得到的结果集,代码运行后表格的每一行有几个单元格( )
while(rs.next()){
out.print("");
out.print(""+rs.getString(1)+"");
out.print(""+rs.getString(2)+"");
out.print(""+rs.getString(3)+"");
out.print(""+rs.getString(“publish”)+"");
out.print(""+rs.getFloat(“price”)+"");
out.print("");
}
A、 4
B、 5
C、 6
D、 不确定
正确答案: B

6、下面是创建Statement接口并执行executeUpdate方法的代码片段:
conn=DriverManager.getConnection(“jdbc:odbc:book”,"","");
stmt=conn.createStatement();
String strsql=“insert into bookvalues(‘TP003’, ‘ASP.NET’,‘李’,‘清华出版社’,35)”;
n=stmt.executeUpdate(strsql);
代码执行成功后n的值为
A、 1
B、 0
C、 -1
D、 一个整数
正确答案: A

7、负责处理驱动的调入并产生对新的数据库连接支持的接口是( )。
A、 DriverManager
B、 Connection
C、 Statement
D、 ResultSct
正确答案: A

8、查询结果集ResultSet对象是以统一的行列形式组织数据的,执行ResultSetrs=stmt.executeQuery(“select bid,name,author,publish,price from book”);语句,得到的结果集rs的列数为
A、 4
B、 5
C、 6
D、 不确定
正确答案: B

9、在JDBC中,下列哪个接口不能被Connection创建
A、 Statement
B、 PreparedStatement
C、 CallableStatement
D、 RowsetStatement
正确答案: D

10、盒子模型是所有布局控制的基础,下列哪项是盒子模型的内边距
A、 ContentContainer
B、 padding
C、 border
D、 margin
正确答案: B

11、能够替代<字符的替代字符是()?
A、 &lt
B、 >
C、 <
D、  
正确答案: C

12、在以下( )标签用来对页面内容进行预定义。

A、 <p> 
B、 <br> 
C、 <hr> 
D、 <pre> 
正确答案: D 

13、标记在标记之间,标记之间的内容将显示到()
A、 浏览器的页面上部
B、 浏览器的标题栏上
C、 浏览器的状态栏中
D、 浏览器的页面下部
正确答案: B

14、文本下标标记为( )
A、
B、
C、
D、
正确答案: A

15、

标记中,align属性为段落文字的对齐方式,不能取的值为()
A、 Left
B、 Right
C、 Center
D、 width
正确答案: D

16、当多个用户请求同一个JSP页面时,Tomcat服务器为每个客户启动一个()
A、 进程
B、 线程
C、 程序
D、 服务
正确答案: B

17、超级链接是互联网的灵魂,下面哪个是正确的链接标记( )
A

<a href="http://www.sina.com" " title="新浪网" >新浪网</a> 
B、 <a target="http://www.sina.com"" title="新浪网" >新浪网</a> 
C、 <a href="新浪网" title="新浪网"> http://www.sina.com </a> 
D、 <a target="新浪网" title="新浪网">http://www.sina.com</a> 

正确答案: A
18、下面关于Java中会话跟踪的说法错误的是( )。
A、 HTTP协议是无状态的,所以服务器需要用会话跟踪技术来分辨每个客户
B、 服务器为每个会话分配了一个ID作为唯一标识
C、 session由客户端创建,我们再用request.getSession()来获得HttpSession对象
D、 使用会话跟踪可以实现诸如用户登录和购物车此类的功能
正确答案: C

19、{
阅读下面代码片段:
RequestDispatcher dispatcher=request.getRequestDispatcher(“a.jsp”);
dispatcher.forward(request,response);
}
关于该段代码的作用,下列叙述哪项是正确的?
A、 页面重定向到a.jsp页面
B、 将请求转发到a.jsp页面
C、 从a.jsp定向到当前页面
D、 从a.jsp转发到当前页面
正确答案: B

20、当response的状态行代码为哪个时,表示用户请求的资源不可用?
A、 101
B、 202
C、 303
D、 404
正确答案: D

21、{
request.setAttribute(“user”,“svse”);
session.setAttribute(“user”,“bob”);
使用{user}则显示
}
A、 null
B、 svse
C、 bob
D、 啥也没有
正确答案: B

22、{
Form表单的method属性能取下列哪项的值( )
}
A、 submit
B、 puts
C、 post
D、 out
正确答案: C

23、Form表单的method属性能取下列哪项的值
A、 submit
B、 puts
C、 post
D、 out
正确答案: C

24、在JSP页面中,正确引入JavaBean的是()

A<% jsp: useBean id =”myBean” scope =”page” class=”pkg.MyBean” %> 
B<jsp: useBean name=”myBean” scope =”page” class=”pkg.MyBean” > 
C<jsp: useBean id =”myBean” scope =”page” class=”pkg.MyBean” /> 
D<jsp: useBean name=”myBean” scope =”page” class=”pkg.MyBean” /> 
正确答案: C 

25、下面哪一项属于工具Bean的用途?
A、 完成一定运算和操作,包含一些特定的或通用的方法,进行计算和事务处理。
B、 负责数据的存取
C、 接受客户端的请求,将处理结果返回客户端
D、 在多台机器上跨几个地址空间运行
正确答案: A

26、下列那个调用数据类型转换方法会发生NumberFormatException异常?
A、 Long.parseLong(“1234”)
B、 Integer.parseInt(“1234”)
C、 Double.parseDouble(“123.45”)
D、 Integer.parseInt(“123a”)
正确答案: D

27、关于JavaBean,下列的叙述哪一项是不正确的?
A、 JavaBean的类必须是具体的和公共的,并且具有无参数的构造器
B、 JavaBean的类属性是私有的,要通过公共方法进行访问
C、 JavaBean和Servlet一样,使用之前必须在项目的web.xml中注册
D、 JavaBean属性和表单控件名称能很好地耦合,得到表单提交的参数
正确答案: C

28、使用格式<jsp:setPropertyname=“beanid” property=“bean的属性"value=”<%=expression %>" />给Bean的属性赋值,expression的数据类型和bean的属性类型
A、 必须一致
B、 可以不一致
C、 必须不同
D、 无要求
正确答案: A

29、在JSP中,对标记描述正确的是()
A、 jsp:setProperty和jsp:getProPerty必须在一个JSP文件中搭配出现
B、 就如同session.setAttribute()一样,来设计属性/值对
C、 和jsp:useBean动作一起使用,来设置bean的属性值
D、 就如同request.setAttribute()一样,来设置属性/值对
正确答案: C

30、{
在Java EE中,User类提供了username属性,在index.jsp中经过表单提交信息至user.jsp页面,如果提交的信息为“ruby”,则user.jsp页面中最终的显示结果为:( )
index.jsp中有如下代码段:

user.jsp中有如下代码段: } A、 ruby B、 null C、 RUBY D、 页面无显示 正确答案: A

31、关于JSP Model1模式的缺点,下列的叙述哪一项是不正确的?
A、 应用是基于过程的
B、 业务逻辑和表示逻辑混合
C、 软件维护和扩展困难
D、 产生较多的文件
正确答案: D

32、关于JSP Model2模式的优点,下列的叙述哪一项是不正确的?
A、 模型具有较高的通用性
B、 Servlet对象擅长控制
C、 分离了视图层和业务层
D、 M、V、C之间具有较低的耦合性
正确答案: D

33、下面哪一项对Servlet描述错误?
A、 Servlet是一个特殊的Java类,它必须直接或间接实现Servlet接口
B、 Servlet接口定义了Servelt的生命周期方法
C、 当多个客户请求一个Servlet时,服务器为每一个客户启动一个进程
D、 Servlet客户线程调用service方法响应客户的请求
正确答案: C

34、下面哪一项不在Servlet的工作过程中?
A、 服务器将请求信息发送至Servlet
B、 客户端运行Applet
C、 Servlet生成响应内容并将其传给服务器
D、 服务器将动态内容发送至客户端
正确答案: B

35、下面Servlet的哪个方法用来为请求服务,在Servlet生命周期中,Servlet每被请求一次它就会被调用一次。
A、 service()
B、 init()
C、 doPost()
D、 destroy()
正确答案: A

36、给定一个Model1体系结构,其中有一个JSP页面处理所有控制器函数,这个JSP控制器要把请求分派给另一个JSP页面
A、 <jsp:forward page=”view.jsp”/>
B、 <jsp:forward file=”view.jsp”/>
C、 <jsp:dispatch page=”view.jsp”/>
D、 <jsp:dispatch file=”view.jsp”/>
正确答案: A

37、在部署带有Servlet的javaWeb程序时,( )不是必须的
A、 web.xml
B、 index.html文件
C、 WEB-INF文件夹
D、 classes文件夹
正确答案: B

38、在一个Filter中,处理filter业务的是()方法
A、 dealFilter (ServletRequestrequest,ServletResponse response,FilterChain chain)
B、 dealFilter (ServletRequestrequest,ServletResponse response)
C、 doFilter (ServletRequestrequest,ServletResponse response, FilterChain chain)
D、 doFilter (ServletRequestrequest,ServletResponse response)
正确答案: C

39、在JavaEE中,关于创建HttpServletRequest对象的说法正确的是( )
A、 从request获取传入的参数,可以调用getParameter方法
B、 由Java Web应用的Servlet或JSP组件负责创建,当Servlet或JSP组件响应HTTP请求时,先创建HttpServletRequest对象
C、 由程序员通过编码形式创建,以传递请求数据
D、 以上都不对
正确答案: A

40、public classSecurityFilter ______{…}如果想要让该类成为一个过滤器,横线处应为
A、 implements HttpFilter
B、 extends Filter
C、 extends HttpFilter
D、 implements Filter
正确答案: D

41、{
在Servlet中有一段代码如下
public void doPost(HttpServletRequestrequest, HttpServletResponse response)
throwsServletException, IOException {
request.setAttribute(“name”, new Integer(100));
response.sendRedirect(“show.jsp”);
}
在show.jsp中 <%=request.getAttribute(“name”)%>
页面结果为
A、 100
B、 java.lang.Integer
C、 Integer
D、 null
正确答案: D

42、在HTTP请求中包含一个名字为“username”,值为“Tom”的Cookie,以下哪个选项能输出这个Cookie的名字“username”?()
A、 ${cookie.username.name}??
B、 ${cookie.username.value}?
C、 ${cookie.username}??
D、 ${request.cookie.username.name}
正确答案: A

43、以下哪些EL表达式的值为false?()?
A、 ${fn:contains(“It315”,”IT”)}?
B、 ${fn:contains(“It315”,”315”)}?
C、 ${fn:containsIgnoreCase(“It315”,”IT”)}?
D、 ${fn:startsWith(“It315”,”I”)}?
正确答案: A

44、{
运行以下这段代码会出现什么情况?()
<%
String strs[] = {“www”,”mywebsite”,”org”}; %>
${fn:join(strs,”.”)}
}
A、 输出“www. mywebsite.org”
B、 输出“wwwmywebsiteorg”
C、 没有任何输出结果
D、 抛出异常,命名变量strs不存在x
正确答案: C

45、以下哪些是不合法的EL表达式?()
A、 ${param.username}?
B、 ${empty?requestScope}?
C、 ${“aaa”+“bbb”}?
D、 ${header[“user-agent”]}?
正确答案: C

46、在id号为test的div元素中,异步加载一个完整页面b.html的方法是:
A、 $("#test").load(“b.html”);
B、 $("#test").getJSON(“b.html”);
C、 $("#test").load(b.html);
D、 $("#test").getScript(“b.html”);
正确答案: A

47、关于JavaScript中的函数和对象,下列说法不正确的是:
A、 每一个函数都有一个prototype对象。
B、 函数就是一个特殊类型的对象。
C、 函数附属于它所附加到的对象上,只能通过该对象访问。
D、 同一个函数可以被附属到多个对象上。
正确答案: C

48、应用以下哪一个DOCTYPE使得当前主流浏览器解释CSS的模式是Quirks mode?
A、
B、
C、
D、
正确答案: B

49、设置全局ajax请求的方法是:
A、 $.ajax([options]);
B、 $.ajaxSetup([options]);
C、 $.ajaxsetup([options]);
D、 $.ajaxset([options]);
正确答案: B

50、以下哪些说法是正确的?
A、 每个HTTP请求对应一个单独的ActionServlet实例
B、 对于每个请求访问HelloAction的HTTP请求,Struts框架会创建一个单独的HelloAction实例。
C、 每个子应用对应一个单独的RequestProcessor实例
D、 每个子应用对应一个单独的web.xml文件
正确答案: C

二、 多选题(共15题,15分)
1、在JSTL中,常用标签有 。
A、 <c:out>
B、 <c:set>
C、 <c:if>
D、 <c:remove>
E、 <c:catch>
正确答案: ABDE

2、下列关于SQL标签说法中正确的是 。
A、 sql:setDataSource标签用于设置数据源
B、 sql:query标签用来查询数据库
C、 <sql: update >标签用来对数据库进行更新操作
D、 sql:param标签用来设置SQL预处理语句中的参数
E、 sql:transaction标签为sql:query和sql:update建立事务处理上下文
正确答案: ABCDE

3、以下哪些选项可以输出HttpSession对象的id属性?()?
A、 ${session.id}?
B、 ${pageContext.session.id}??
C、 <%=session.getId()%>??
D、 <%=session.id%>
正确答案: BC

4、下列对于JSTL的说法正确的是 。
A、 JSTL是指(JavaServer Pages Standard Tag Library,JSP)标准标记库
B、 JSTL特别为条件处理、迭代、国际化、数据库访问和可扩展标记语言(XML)处理提供支持
C、 JSTL在应用程序服务器之间提供了一致的接口,最大程序地提高了WEB应用在各应用服务器之间的移植。
D、 JSTL简化了JSP和WEB应用程序的开发。
E、 JSTL以一种统一的方式减少了JSP中的scriptlet代码数量
正确答案: ABCDE

5、以下哪些EL表达式的值为cat?()
A、 ${fn:replace(“cAt”,”A”,”a”)}
B、 ${fn:substring(“Tomcat”,”3”,”6”)}
C、 ${fn:substringAfter(“Tomcat”,”Tom”)}
D、 ${fn:indexOf(“Tomcat”,”cat”)}
正确答案: ABC

6、使用Ajax应用程序的优势在于:
A、 通过异步模式,提升了用户体验
B、 优化了浏览器和服务器之间的传输,减少不必要的数据往返,减少了带宽占用
C、 Ajax引擎在客户端运行,承担了一部分本来由服务器承担的工作,从而减少了大用户量下的服务器负载。
D、 Ajax可以实现动态不刷新(局部刷新),就是能在不更新整个页面的前提下维护数据。
正确答案: ABCD

7、Ajax包含下列哪些技术。
A、 基于web标准(standards-basedpresentation)XHTML+CSS的表示;
B、 使用 DOM(Document ObjectModel)进行动态显示及交互;
C、 使用 XML 和 XSLT 进行数据交换及相关操作;
D、 使用 XMLHttpRequest 进行异步数据查询、检索;
E、 使用 JavaScript 将所有的东西绑定在一起。
正确答案: ABCDE

8、下面关于XMLhttprequest对象的解释正确的是():
A、 Ajax的核心是JavaScript对象XmlHttpRequest。
B、 XmlHttpRequest对象在Internet Explorer 5中首次引入,它是一种支持异步请求的技术。
C、 XmlHttpRequest使您可以使用JavaScript向服务器提出请求并处理响应,而不阻塞用户。
D、 通过XMLHttpRequest对象,Web开发人员可以在页面加载以后进行页面的局部更新。
正确答案: ABCD

9、在Struts应用的模型中包含哪些组件?
A、 JSP
B、 Servlet
C、 ActionServlet
D、 Action
E、 代表业务逻辑或业务数据的JavaBean
F、 EJB
G、 客户化标签
正确答案: EF

10、{
对于以下这段配置ActionServlet的代码,哪些说法是正确的?

action
org.apache.struts.action.ActionServlet

config
/WEB-INF/myconfig.xml

2

<!- Standard Action Servlet Mapping ->

action
*.do

}
A、 Servlet容器在启动Struts应用时,会初始化这个ActionServlet。
B、 对于所有URL中以”.do”结尾的HTTP请求,都由ActionServlet处理。
C、 这段代码位于struts-config.xml中。
D、 这段代码位于web.xml中。
正确答案: ABD

11、在Struts应用的视图中包含哪些组件?
A、 JSP
B、 Servlet
C、 ActionServlet
D、 Action
E、 代表业务逻辑或业务数据的JavaBean
F、 EJB
G、 客户化标签
正确答案: AG

12、把静态文本放在Resource Bundle中,而不是直接在JSP文件中包含这些静态文本,有什么优点?
A、 提高可维护性
B、 提高可重用性
C、 支持国际化
D、 提高运行速度
正确答案: ABC

13、在Struts应用的控制器中包含哪些组件?
A、 JSP
B、 Servlet
C、 ActionServlet
D、 Action
E、 代表业务逻辑或业务数据的JavaBean
F、 EJB
G、 客户化标签
正确答案: BCD

14、{
以下代码定义了一个变量,如何输出这个变量的值?
<bean:define id=\”stringBean\” value=“helloWorld“/>
}
A、 <bean:write name=“stringBean\”/>
B、 <bean:write name=“helloWorld\”/>
C、 <%= stringBean%>
D、 <% String myBean=(String)pageContext.getAttribute(“stringBean”,PageContext.PAGE_SCOPE);%><%=myBean%>
正确答案: AD

15、{
对于以下代码,HelloAction希望把请求转发给hello.jsp,在HelloAction的execute()方法中如何实现?
<action path = \”/HelloWorld\”
type = \”hello.HelloAction\”
name = \”HelloForm\”
scope = \”request\”
validate = \”true\”
input = \”/hello.jsp\”

} A、 return (new ActionForward(mapping.getInput())); B、 return (mapping.findForward(\”SayHello\”)); C、 return (mapping.findForward(“hello.jsp\”)); 正确答案: AB

三、 判断题(共20题,20分)
1、Connection.createStatement()不带参数创建Statement对象,不能够来回的滚动读取结果集。
正确答案: 正确
2、JDBC加载不同数据库的驱动程序,使用相应的参数可以建立与各种数据库的连接。
正确答案: 正确
3、JDBC的URL字符串是由驱动程序的编写者提供的,并非由该驱动程序的使用者指定。
正确答案: 正确
4、Statement对象提供了intexecuteUpdate(String sqlStatement)方法,用于实现对数据库中数据的添加、删除和更新操作。
正确答案: 正确
5、JDBC构建在ODBC基础上,为数据库应用开发人员、数据库前台工具开发人员提供了一种标准,使开发人员可以用任何语言编写完整的数据库应用程序。
正确答案: 错误
6、JSP页面中不能包含脚本元素。
正确答案: 错误
7、在网页中图形文件与网页文件是分别存储的。
正确答案: 正确
8、程序片变量的有效范围与其声明位置有关,即从声明位置向后有效,可以在声明位置后的程序片、表达式中使用。
正确答案: 正确
9、JSP引擎执行字节码文件的主要人物之一是直接将HTML内容发给客户端。
正确答案: 正确
10、在“<%!”和“%>”标记之间声明的Java的变量在整个页面内有效,不同的客户之间不共享。
正确答案: 错误
11、绝对路径是文件名的完整路径;相对路径是指相对当前网页文件名的路径。
正确答案: 正确
12、动态网页和静态网页的根本区别在于服务器端返回的HTML文件是事先存储好的还是由动态网页程序生成的()
正确答案: 正确
13、同一个客户在同一个Web服务目录中的session对象是相同的,在不同的Web服务目录中的session对象是不相同的。
正确答案: 正确
14、url重写可以把session对象的id作为url参数传带过去,可以使用request对象的encodeURL(“”)。
正确答案: 错误
15、session对象可以用来保存用户会话期间需要保存的数据信息。
正确答案: 正确
16、out对象是一个输出流,它实现了javax.servlet.JspWriter接口,用来向客户端输出数据。
正确答案: 正确
17、application对象对所有用户都是共享的,任何对它的操作都会影响到所有的用户。
正确答案: 正确
18、修改了Bean的字节码后,要将新的字节码复制到对应的WEB-INF\classes目录中,重新启动tomcat服务器才能生效。
正确答案: 正确
19、在JSP页面中调用的Bean类中如果有构造方法,必须是public类型且必有参数。
正确答案: 错误
20、使用格式<jsp:setProperty name=“beanid” property=“bean的属性” value=“字符串”/>给Bean的属性赋值,这个字符串会自动被转化为属性的数据类型。
正确答案: 正确
四、编写程序题(共10分)

编写一个LoginServlet,如果账号和密码相等,跳转到登陆成功页面,如果不相等,跳转到登陆失败页面。下面是编写的代码,其中有一段是正确的。
A、
package servlets;
import java.io.IOException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class LoginServlet extends HttpServlet {
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String account = request.getParameter(“account”);
String password = request.getParameter(“password”);
String loginState = “Fail”;
String targetUrl = “/loginFail.jsp”;
//认为账号密码相等就算登录成功,此处是对DAO的简化
if(account.equals(password)){
loginState = “Success”;
targetUrl = “/loginSuccess.jsp”;
HttpSession session = request.getSession();
session.setAttribute(“account”, account);
}
request.setAttribute(“loginState”, loginState);
ServletContext application = this.getServletContext();
RequestDispatcher rd =
application.getRequestDispatcher(targetUrl);
rd.forward(request, response);
}
}

B、
package servlets;
import java.io.IOException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class LoginServlet extends HttpServlet {
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String account = request.getParameter(“account”);
String password = request.getParameter(“password”);
String loginState = “Fail”;
String targetUrl = “/loginFail.jsp”;
//认为账号密码相等就算登录成功,此处是对DAO的简化
if(account.equals(password)){
loginState = “Success”;
targetUrl = “/loginSuccess.jsp”;
HttpSession session = request.getSession();
session.setAttribute(“account”, account);
}
request.setAttribute(“loginState”, loginState);
ServletContext application = this.getServletContext();
RequestDispatcher rd =
application.getRequestDispatcher(targetUrl);
rd.forward(request, response);
}
}
C、
package servlets;
import java.io.IOException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class LoginServlet {
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String account = request.getParameter(“account”);
String password = request.getParameter(“password”);
String loginState = “Fail”;
String targetUrl = “/loginFail.jsp”;
//认为账号密码相等就算登录成功,此处是对DAO的简化
if(account.equals(password)){
loginState = “Success”;
targetUrl = “/loginSuccess.jsp”;
HttpSession session = request.getSession();
session.setAttribute(“account”, account);
}
request.setAttribute(“loginState”, loginState);
ServletContext application = this.getServletContext();
RequestDispatcher rd =
application.getRequestDispatcher(targetUrl);
rd.forward(request, response);
}
}
D、
package servlets;
import java.io.IOException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class LoginServlet extends HttpServlet {
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String account = request.getParameter(“account”);
String password = request.getParameter(“password”);
String loginState = “Fail”;
String targetUrl = “/loginFail.jsp”;
//认为账号密码相等就算登录成功,此处是对DAO的简化
if(account=password)){
loginState = “Success”;
targetUrl = “/loginSuccess.jsp”;
HttpSession session = request.getSession();
session.setAttribute(“account”, account);
}
request.setAttribute(“loginState”, loginState);
ServletContext application = this.getServletContext();
RequestDispatcher rd =
application.getRequestDispatcher(targetUrl);
rd.forward(request, response);
}
}

正确答案:B

猜你喜欢

转载自blog.csdn.net/qq_45962183/article/details/106925734