JAVA/JSP经典面试题汇总

2014-07-30 20:02:00|?次阅读|上传:wustguangh【已有?条评论】发表评论

关键词:Java, JSP|来源:唯设编程网

145 、编程用 JAVA 解析 XML 的方式 . 答 : 用 SAX 方式解析 XML , XML 文件如下:

<?xml version="1.0" encoding="gb2312"?>
<person>
  <name> 王小明 </name>
  <college> 信息学院 </college> 
  <telephone>6258113</telephone>
  <notes> 男 ,1955 年生 , 博士, 95 年调入海南大学 </notes>
</person>

  事件回调类 SAXHandler.java

import java.io.*;

import java.util.Hashtable;

import org.xml.sax.*;

public class SAXHandler extends HandlerBase

  {

  private Hashtable table = new Hashtable();

  private String currentElement = null;

  private String currentValue = null;

  public void setTable(Hashtable table)

    {

    this.table = table;

    }

  public Hashtable getTable()

    {

    return table;

    }

  public void startElement(String tag, AttributeList attrs)

  throws SAXException

    {

    currentElement = tag;

    }

  public void characters(char[] ch, int start, int length)

  throws SAXException

    {

    currentValue = new String(ch, start, length);

    }

  public void endElement(String name) throws SAXException

    {

    if (currentElement.equals(name))

      table.put(currentElement, currentValue);

    }

  }

JSP 内容显示源码 ,SaxXml.jsp:

<HTML>

<HEAD>

<TITLE> 剖析 XML 文件 people.xml</TITLE>

</HEAD>

<BODY>

<%@ page errorPage="ErrPage.jsp"

contentType="text/html;charset=GB2312" %>

<%@ page import="java.io.*" %>

<%@ page import="java.util.Hashtable" %>

<%@ page import="org.w3c.dom.*" %>

<%@ page import="org.xml.sax.*" %>

<%@ page import="javax.xml.parsers.SAXParserFactory" %>

<%@ page import="javax.xml.parsers.SAXParser" %>

<%@ page import="SAXHandler" %>

<%

File file = new File("c:people.xml");

FileReader reader = new FileReader(file);

Parser parser;

SAXParserFactory spf = SAXParserFactory.newInstance();

SAXParser sp = spf.newSAXParser();

SAXHandler handler = new SAXHandler();

sp.parse(new InputSource(reader), handler);

Hashtable hashTable = handler.getTable();

out.println("<TABLE BORDER=2><CAPTION> 教师信息表 </CAPTION>");

out.println("<TR><TD> 姓名 </TD>" + "<TD>" +

  (String)hashTable.get(new String("name")) + "</TD></TR>");

out.println("<TR><TD> 学院 </TD>" + "<TD>" +

  (String)hashTable.get(new String("college"))+"</TD></TR>");

out.println("<TR><TD> 电话 </TD>" + "<TD>" +

  (String)hashTable.get(new String("telephone")) + "</TD></TR>");

out.println("<TR><TD> 备注 </TD>" + "<TD>" +

  (String)hashTable.get(new String("notes")) + "</TD></TR>");

out.println("</TABLE>");

%>

</BODY>

</HTML>

146 、 EJB 的基本架构 答 : 一个 EJB 包括三个部分 :

  Remote Interface 接口的代码 

  package Beans;

  import javax.ejb.EJBObject;

  import java.rmi.RemoteException;

  public interface Add extends EJBObject

  {

   //some method declare

  }

  Home Interface 接口的代码

  package Beans;

  import java.rmi.RemoteException;

  import jaax.ejb.CreateException;

  import javax.ejb.EJBHome;

  public interface AddHome extends EJBHome

  {

    //some method declare

  }

 

发表评论0条 】
网友评论(共?条评论)..
JAVA/JSP经典面试题汇总