java 面试题 2
Jsp
方面
jsp的常用的命令答:page, include, talib, forward,
Servlet
方面
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 {
}
}
5
、
什么情况下调用
doget()
和
什么情况
dopost
答:当表单提交时method设置的 是 get 就调用 doget 方法,如果是 post 就调用 dopost方法。 http
get方法请求一页面,调用doget() http post方法请求一页面,调用dopost()
6
、
servlet
的
init()
方法和
service()
方
法的区别
答:初始化时调用init()方法有请求到达时调用service()方法,service()根据请求的类型,调用doget()或
depost()等方法
7
、
servlet
的
配置
<web-app><servlet><servlet-name>Admin</servlet-name><servlet-class>jb-aptech.adminservlet</servlet-class><init-param><param-name>email</param-name><param-value>admin@jb-aptech.com.cn</param-value></init-param>
相关文档:
在项目中,我们很多都用到了xml文件,无论是参数配置还是与其它系统的数据交互。
今天就来讲一下Java 中使用dom4j来操作XML文件。
我们需要引入的包:
//文件包
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileWriter;
//工具包
import java.util.Ite ......
package stone;
public class PrimerNumber {
public static void main(String[] args) {
int MAX_NUMBER = 100;
boolean[] notPrimer= new boolean[MAX_NUMBER];
for(int i=2;i<=MAX_NUMBER;i++){
if(!notPrimer[i-1]){
for(int j=2*i;j<=MAX_NUMBER;j++){
if(j%i==0) notPrimer[j-1]=tr ......
最近要改写一个核心加密认证类,从C#改写成Java。
发现在调试时,加密的数据无论如何也对不上。
经过跟踪,发现问题出在C#和Java byte类型的区别上:在C#里 byte类型是无符号的,而Java里是有符号的,所以C#里的129到Java里就成了负数。
发现了问题,解决就比较容易了,针对Java的byte,采用Int来进行存储。
通过如下代 ......
#include <iostream>
using namespace std;
class Base {
public:
virtual void fn(int x) {
cout << "In Base class, int x = " << x << endl;
}
};
class SubClass : public Base {
public:
// 函数的重载,这样的重载方式,在Java中能行,在C/C++中却不行
virt ......
某知名门户网站的一道笔试题
public class Test {
public static void stringUpd(String str) {
str = str.replace("j", "l");
System.out.println(str);
}
public static void stringBufferUpd(StringBuffer bf) {
bf.append("c");
System.out.println(bf);
}
......