| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3412 人关注过本帖
标题:J2EE面试题
只看楼主 加入收藏
野蛮女人
Rank: 5Rank: 5
等 级:贵宾
威 望:19
帖 子:827
专家分:0
注 册:2007-4-7
结帖率:100%
收藏
 问题点数:0 回复次数:10 
J2EE面试题

1、说一说Servlet的生命周期?

答:servlet有良好的生存期的定义,包括加载和实例化、初始化、处理请求以及服务结束。这个生存期由javax.servlet.Servlet接口的init,service和destroy方法表达。

2、Servlet版本间(忘了问的是哪两个版本了)的不同?

希望大家补上,谢谢

3、java SERVLET API中forward() 与redirect()的区别?

答:前者仅是容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址;后者则是完全的跳转,浏览器将会得到跳转的地址,并重新发送请求链接。这样,从浏览器的地址栏中可以看到跳转后的链接地址。所以,前者更加高效,在前者可以满足需要时,尽量使用forward()方法,并且,这样也有助于隐藏实际的链接。在有些情况下,比如,需要跳转到一个其它服务器上的资源,则必须使用sendRedirect()方法。

4、Servlet的基本架构

程序代码:
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 {

}

}


Jdbc、Jdo方面

1、可能会让你写一段Jdbc连Oracle的程序,并实现数据查询.

答:程序如下:

程序代码:
package hello.ant; 

import java.sql.*;

public class jdbc

{

String dbUrl=\"jdbc:oracle:thin:@127.0.0.1:1521:orcl\";

String theUser=\"admin\";

String thePw=\"manager\";

Connection c=null;

Statement conn;

ResultSet rs=null;

public jdbc()

{

try{

Class.forName(\"oracle.jdbc.driver.OracleDriver\").newInstance();

c = DriverManager.getConnection(dbUrl,theUser,thePw);

conn=c.createStatement();

}catch(Exception e){

e.printStackTrace();

}

}

public boolean executeUpdate(String sql)

{

try

{

conn.executeUpdate(sql);

return true;

}

catch (SQLException e)

{

e.printStackTrace();

return false;

}

}

public ResultSet executeQuery(String sql)

{

rs=null;

try

{

rs=conn.executeQuery(sql);

}

catch (SQLException e)

{

e.printStackTrace();

}

return rs;

}

public void close()

{

try

{

conn.close();

c.close();

}

catch (Exception e)

{

e.printStackTrace();

}

}

public static void main(String[] args)

{

ResultSet rs;

jdbc conn = new jdbc();

rs=conn.executeQuery(\"select * from test\");

try{

while (rs.next())

{

System.out.println(rs.getString(\"id\"));

System.out.println(rs.getString(\"name\"));

}

}catch(Exception e)

{

e.printStackTrace();

}

}

}

2、Class.forName的作用?为什么要用?

答:调用该访问返回一个以字符串指定类名的类的对象。

3、Jdo是什么?

答:JDO是java对象持久化的新的规范,为java data object的简称,也是一个用于存取某种数据仓库中的对象的标准化API。JDO提供了透明的对象存储,因此对开发人员来说,存储数据对象完全不需要额外的代码(如JDBC API的使用)。这些繁琐的例行工作已经转移到JDO产品提供商身上,使开发人员解脱出来,从而集中时间和精力在业务逻辑上。另外,JDO很灵活,因为它可以在任何数据底层上运行。JDBC只是面向关系数据库(RDBMS)JDO更通用,提供到任何数据底层的存储功能,比如关系数据库、文件、XML以及对象数据库(ODBMS)等等,使得应用可移植性更强。

4、在ORACLE大数据量下的分页解决方法。一般用截取ID方法,还有是三层嵌套方法。

答:一种分页方法 (这个代码好像有问题 谁能改改

程序代码:
<% 

int i=1;

int numPages=14;

String pages = request.getParameter(\"page\") ;

int currentPage = 1;

currentPage=(pages==null)?(1):{Integer.parseInt(pages)}

sql = \"select count(*) from tables\";

ResultSet rs = DBLink.executeQuery(sql) ;

while(rs.next()) i = rs.getInt(1) ;

int intPageCount=1;

intPageCount=(i%numPages==0)?(i/numPages):(i/numPages+1);

int nextPage ;

int upPage;

nextPage = currentPage+1;

if (nextPage>=intPageCount) nextPage=intPageCount;

upPage = currentPage-1;

if (upPage<=1) upPage=1;

rs.close();

sql=\"select * from tables\";

rs=DBLink.executeQuery(sql);

i=0;

while((i<numPages*(currentPage-1))&&rs.next()){i++;}

%>

//输出内容

//输出翻页连接

合计:<%=currentPage%>/<%=intPageCount%><a href=\"List.jsp?page=1\">第一页</a><a
href=\"List.jsp?page=<%=upPage%>\">上一页</a>

<%

for(int j=1;j<=intPageCount;j++){

if(currentPage!=j){

%>

<a href=\"list.jsp?page=<%=j%>\">[<%=j%>]</a>

<%

}else{

out.println(j);

}

}

%>

<a href=\"List.jsp?page=<%=nextPage%>\">下一页</a><a href=\"List.jsp?page=<%=intPageCount%>\">最后页
</a>

[此贴子已经被作者于2007-7-13 9:10:51编辑过]

搜索更多相关主题的帖子: 浏览器 生命周期 生存期 Servlet 面试 
2007-07-12 20:58
yanwu1515
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2007-11-3
收藏
得分:0 
经典的题目啊,应该是很实用的,多谢提醒!
2007-11-06 21:01
无缘今生
Rank: 2
等 级:新手上路
威 望:3
帖 子:523
专家分:7
注 册:2007-6-25
收藏
得分:0 
看来,我的路还很远...

时不再来!!!
2007-11-06 21:45
cander56
Rank: 1
等 级:新手上路
帖 子:32
专家分:0
注 册:2007-11-3
收藏
得分:0 
我一个都不知道
2007-11-07 00:04
guoxhvip
Rank: 8Rank: 8
来 自:聖西羅南看臺
等 级:贵宾
威 望:44
帖 子:4052
专家分:135
注 册:2006-10-8
收藏
得分:0 
还需要不断学习

愛生活 && 愛編程
2007-11-07 01:47
hwoarangzk
Rank: 4
来 自:冰封王座
等 级:贵宾
威 望:12
帖 子:1894
专家分:0
注 册:2007-7-17
收藏
得分:0 
学习了!

I'm here, as always...
2007-11-07 09:25
xinxue
Rank: 1
等 级:新手上路
帖 子:128
专家分:0
注 册:2006-2-28
收藏
得分:0 
谢谢提醒
2007-11-07 09:54
witchery
Rank: 1
来 自:西安
等 级:新手上路
帖 子:205
专家分:0
注 册:2005-8-6
收藏
得分:0 
全是基础 ...
2007-11-07 12:07
hardes
Rank: 1
等 级:新手上路
帖 子:322
专家分:0
注 册:2006-6-3
收藏
得分:0 

受教了,看来我的路还很远!!
唉!!!
任重而道远啦!!


当神已无能为力,就让爷来普度众生吧!
2007-11-07 18:34
sea7
Rank: 2
等 级:新手上路
威 望:3
帖 子:291
专家分:0
注 册:2007-2-17
收藏
得分:0 
分页的代码有问题,读取数据库时应该创建一个可滚动的result,这样才能实现分页,另外是几点个人意见:
1.这样实现的分页只是一种假分页,简单地说就是,你一次把数据全部从数据库读出来然后分页显示而已,这样有一个很 大的缺点就是你所有的数据全部存放在页面,每一次换页这些数据都要在客户端和服务期端往返传送对性能影响很大。
2.页面出现java脚本语言,对页面布局造成很大影响(也不好看),在实际开发中会使得美工和程序员分工分工不明确。
以上属于个人意见

软件是一种修养
2007-11-07 21:51
快速回复:J2EE面试题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.030579 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved