🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: cn.bbs.comp.lang.java
Article #20118

Java�������⼯��������Sun�й�ٷ�վ��

#20118
From: ����Ư��������
Date: Fri, 19 Dec 2003 18:20
327 lines
23949 bytes
Java�������⼯��������Sun�й�ٷ�վ��
  �Ƽ�:simon ���ࣺJAVA ����ʱ�䣺2001-10-23 ����37909
Java�������⼯��
��:
�������Java 2(JDK1.2)��������?
��:
Java 2��װ��,��Ҫ����PATH��JAVA_HOME��������.��JDK1.1��ͬ����:���ú�JAVA_HOM
E����������,JVM���Զ�����ϵͳ����Լ��û��ĵ�ǰ·��.
Java 2����������������������ʾ:
Solarisƽ̨: setenv JAVA_HOME Java2�İ�װ·��
setenv PATH $JAVA_HOME/bin:${PATH}
Windowsƽ̨: set JAVA_HOME=Java2�İ�װ·��
set PATH=$JAVA_HOMEbin;%PATH%
��: ��ЩJava���ɿ�������֧��Java 2?
��:
Ŀǰ���е�Java���ɿ�������,��Inprise��JBuilder,Symantec��Visual Cafe, Sybase
��PowerJ,��֧��Java 2.
��:
�����Netscape��IE�����������Java appletʱ�����˴���,���ȷ������Χ?
��:
��java applet�������������ʱ,ʹ�õ�������������ȱʡJVM.��ͬ�������JDK��
֧�̶ֳ�Ҳ������ͬ. ���,��Netscape��IE�����������Java applet�����˴���,����
ʹ��JDK�ṩ�Ĺ���appletviewer��Sun��˾��Hotjava����������Ը�applet,��ȷ����
��IJ���������������.
���applet��appletviewer��Hotjava������һ����,�����IJ������������ ������
ȫ����JDK�������. ��ʱ,�������������ʹ��Hotjava��������߰�װ Sun��˾��Jav
a Plugin.
���applet��Hotjava�������appletviewer�����м��������,��Ӧ����ݴ��� ��ʾ��
��applet����.
��:
����JDBC����ݿ��в�����ݻ����ݿ�����ȡ���ʱ,Ϊ����ʱ�����ַ����ʾΪ����
?
��:
��������ʵ��ͨ�������JDBC driver��ʵ���й�. Ŀǰ�����JDBC driver���ñ���
�����ʽ�����������ַ�,���������ַ�"0x4175"�ᱻת��"0x41"��"0x75"���д���. ��
��������Ҫ��JDBC driver���ص��ַ��Լ�Ҫ����JDBC driver���ַ����ת��.
����JDBC driver����ݿ��в������ʱ,��Ҫ�Ƚ�Unicodeת��native code; �� JDBC 
driver����ݿ��в�ѯ���ʱ,����Ҫ��native codeת����Unicode. ��������������
ת����ʵ��:
String native2Unicode(String s) {
if (s == null || s.length() == 0) {
return null;
}
byte[] buffer = new byte[s.length()];
for (int i = 0; i s.length(); i++) { if (s.charAt(i)>= 0x100) {
c = s.charAt(i);
byte []buf = (""+c).getBytes();
buffer[j++] = (char)buf[0];
buffer[j++] = (char)buf[1];
}
else {
buffer[j++] = s.charAt(i);
}
}
return new String(buffer, 0, j);
}
��ʹ��������������֮��,��ЩJDBC driver����jdbc driver Manager��������ȷ ��
�ַ�����,����2�������Ͳ���Ҫ��.
��:
����Servlet������http���󲢲���ص�HTMLҳ��ʱ,���ʹHTMLҳ���е������ַ���
������ʾ?
��:
javax.servlet.http.HttpResponse�����ڲ����ҳ��.ͨ��HttpResponse����ķ���
getOutputStream()���Ի��ServletOutputStream��ʵ��,�����û��Ϳ�������Servlet
OutputStream.write�������������д�뷵��ҳ�������. ����ServletOutputStreamʹ
�õ���ȱʡ�ı��뷽ʽ,���Ҫʹ����ҳ���е������� ���ܹ�����ʾ,�����ʾ��ָ��
���õ��ַ���뷽ʽ. ͨ����Ҫ����һ�� OutputStreamWriter , �������:
public void doGet (HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException
{
res.setContentType("text/html");
ServletOutputStream out = res.getOutputStream();
OutputStreamWriter ow = new OutputStreamWriter(out,"GB2312");
ow.write("���Dz���");
ow.flush();
ow.close();
}
��:
�������Java WebServer��CLASSPATH,�԰��û���class�ļ�?
��:
�����ַ�����������Java WebServer��CLASSPATH��������,��ʹ�û���д��Servlet�ܹ�
�����û���class�ļ�.
���û���class�ļ��ŵ� JavaWebServer_Dir/classesĿ¼��,��Java WebServer ����ʱ
,classesĿ¼���Զ����뵽CLASSPATH������������.
�޸�httpd.nojre�ļ�,���û�class�ļ����ڵ�·����ӵ�CLASSPATH����������.
��:
Ϊʲô��Windowsƽ̨����Naming.lookup����ȡԶ��RMI����ʱ�����?
��:
�������������ò���ȷ�ܿ��ܻ����������ķ���.
RMIʹ����Java������,�ر���java.net.InetAddress��,���ѯTCP/IP��������, ����
IP��ַ���������ӳ���������IP��ַ��ӳ��.��Windowsƽ̨,���ֲ�ѯ���� ���ɱ�
�ص�Windows Socket����ʵ�ֵ�. �����ʱ�Ƿ�����Windows����,���RMI��.
�����Ļ������ó�ʹ��DNS,����ͨ����DNS�������鲻��������,�����ֵ���ʱ ��D
NS��ѯ����ʱ. �볢�Խ�RMIͨ�����漰��������������/IP��ַ�ӵ������ļ� winntsy
stem32driversetchosts��windowshosts��. ��ʽ����:
IP��ַ ������
�������Ӧ���������Եؼ��ٲ�ѯ���ʱ��.
��: ��дJava applicationʱ,�������proxy����Ϣ,�Ա�����ⲿ��վ?
��:
����java application�з����ⲿ��վ,����Ӧ����proxy��Ϣ,�����������:
import java.util.properties;
....
Properties sys = System.getProperties();
sys.put("proxySet","true");
sys.put("proxyHost","myHTTP.proxyserver.com");
sys.put("proxyPort","80");
System.setProperties(sys);
u = new URL(website);
connect = (HttpURLConnection)u.openConnection();
....
��: Swing���JList���б�����޸���,���֪ͨJList�ı���ʾ?
��:
JList�����һ����������ʾģʽListModel����ʾJList����ʾ���.
JList�����Ժ�,JList���Ԫ�ص�ֵ�����Ԫ�ص��������Զ�̬�ظı�.
JList��������ģʽListModel�й۲���ݵĸı�.���,һ��ListModel ����ȷʵ��Ӧ
����ÿ����ݷ���ı�ʱ,֪ͨ�¼��ļ�����.
��ʹ�ù��캯��JList(Object[])����һ��JList��ʵ��ʱ,ϵͳ���Զ� ����һ��Defaul
tListModel��ʵ�����洢JList����ʾ���, ���Ե��� DefaultListModel�ж���ļ��
��������̬���޸�JList�����,�� removeElementAt(index),addElement(Object)��. 
DefaultListModel ���޸���ݵ�ͬʱ,��֪ͨJList������ݵĸı�.
��:
��Java applet�����ʵ��һ��ģʽ�Ի���?
��:
��Java applet��ʵ��ģʽ�Ի���Ĺؼ�����ڴ���һ���Ի����ʱ�� ҪΪ�öԻ���ָ
��һ����ȷ�ĸ�����.��ΪApplet��Panel�������,�� ������Ϊ�Ի���ĸ�����,������
��Ҫ���applet���ڵĴ���,��Ϊģʽ �Ի���ĸ�����. �����������:
....
Dialog d = new Dialog( getParentWindow(comp),title);
// compΪapplet�ϵ�����һ�����
...
public void getParentWindow(Component compOnApplet,String title){
Container c = compOnApplet.getParent();
while (c != null) {
if (c instanceof Frame)
return (Frame) c;
c = c.getParent();
}
return null;
}
��: ��Java applet�������ʾ����һ��HTMLҳ��?
��:
ͨ��java.applet.Applet.getAppletContext()�������Ի�����applet��ص�AppletC
ontext, AppletContext.showDocument(URL)�����Ϳ���ʹapplet���ڵ��������ʾ����
һ����ҳ.
��:
��JDKʵ�ֵ�ǩ��applet,�ɷ���Netscape��IE������?
��:
��JDKʵ�ֵ�ǩ��applet,��������Netscape��IE������,���ǿ�����Hotjava���������
��.
��ͬ��������ṩ�˲�ͬ��ǩ��applet����,��Netscape�ṩ��zigbert���ߺ� Capabil
ity API, ��IE����Ҫʹ��CAB�ļ�. ����,������Netscape���߲���� ǩ��applet,����
��IE�����ǩ��applet,��������������������������.
���ҪʹJDK�����ǩ��applet�ܹ���Netscape��IE������,����������� Netscape��I
E�а�װJava Plugin,����JDKʵ�ֵ�ǩ��applet�Ϳ����������� �����������.
��:
��JNI�������Դ�JavaӦ���е���C�����,�������ʹ��C�������Ե��������C�����
?
��:
���һ����Java���õ�C�����C1����Ҫ��������һ��C�����C2,��ô�ڱ���C1��ʱ��Ӧ
�����ӳ����C2,��������(Solarisƽ̨):
��д����C���Java�ļ�,������.
javac java���
����C����ͷ�ļ�
javah -jni java�ļ���(�����׺.java)
��д��Java���õ�C����C1.c,�Լ���C1���õ�C2.c,������.
cc -G -Iinclude·���� C2.c -o libC2.so
cc -G -Iinclude·���� -lC2 C1.c -o libC1.so
���û�������
setenv LD_LIBRARY_PATH libC1.so,libC2.so����·��
:${LD_LIBRARY_PATH}
����javaӦ��
��:
��Java������,����г�PC���ļ�ϵͳ�е�����������?
��:
��Java 2�汾��,java.io���е�File���������˷���listRoots()����ʵ����һ����.
��:
ΪʲôRuntime.exec("ls")û���κ����?
��:
����Runtime.exec����������һ�����صĽ��,������һ��Process�����ʵ��,��ʵ���
���ڿ��ƽ�̻�ȡ�ý�̵������Ϣ. ���ڵ���Runtime.exec���������ӽ��û��
�Լ����ն˻����̨,��˸��ӽ�̵ı�׼IO(��stdin,stdou,stderr)��ͨ��Process.g
etOutputStream(),Process.getInputStream(), Process.getErrorStream()�����ض���
����ĸ������.�û���Ҫ����Щstream���� �ӽ��������ݻ��ȡ�ӽ�̵����. ��
����ȷִ��Runtime.exec("ls")���������:
try
{
process = Runtime.getRuntime().exec (command);
InputStreamReader ir=newInputStreamReader(process.getInputStream());
LineNumberReader input = new LineNumberReader (ir);
String line;
while ((line = input.readLine ()) != null)
System.out.println(line);
}
catch (java.io.IOException e){
System.err.println ("IOException " + e.getMessage());
}
��:
��β���ǩ��applet,��ʹapplet�ܹ����ʱ�����Դ?
��:
��jdk1.1��,����ʹ��javakey����������Կ,˽Կ,֤���ǩ���jar�ļ�,��ϸ���� ��
�ο�: http://java.sun.com/security/usingJavakey.html��java 2��ǩ��������˱�
�ϴ�ĸĽ�,�����û����������ð�ȫȨ��.Java 2�ṩ���������:keytool,policyt
ool��jarsigner��ʵ��ǩ��applet.����,Joe��д��һ��ǩ��applet:SignedApplet.jav
a,��ô����һ���򵥵�ǩ��applet�Ĺ������:
//������Կ,��Կ����Ϊjoe,����Ϊsign12,�������Կ��joestore��
keytool -genkey -alias joe -keypass sign12 -keystore joestore
//��SignedApplet.class������ļ�����jar�ļ�
jar cvf SignedAppletDemo.jar
//����keytool��ɵ���ǩ���֤�����ǩ��applet(jar�ļ�)
jarsigner -keystore joestore -signedjar joe.jar SignedAppletDemo.jar joe
//����ǩ��֤���keystore��������ļ�
keytool -export -keystore joestore -alias joe -file joe.cer
�����ǩ��applet�Ľ��ܷ�Susan,��Ҫͨ�����²�������ȫ��ִ��
Joe��д��ǩ��applet:
//�õ�Joe��֤�鲢��֮���뵽��Կ����susanstore��
keytool -import -alias joe -file joe.cer -keystore susanstore
//����policytool��������SusanҪ���policy�ļ�
policytool
//��appletviewer����֮,����������а�װjava plugin������֮.
����ǩ��applet��Java Plugin�еIJ�����ο�������ҳ:
http://java.sun.com/security/signExample12/
ע:���ϵ�����Ϊ�����,ʹ����keytool�������ǩ��֤��.��ʵ,�û�Ҳ����
ʹ��keytool -certreq����ҵCA�����������֤��.
��:
��ͨ��ObjectOutputStream��һ���ļ��ж����׷�ӷ�ʽд��object,Ϊʲô��ObjectI
nputStream��ȡ��Щobjectʱ�����StreamCorruptedException?
��:
ʹ��ȱʡ��serializetion��ʵ��ʱ,һ��ObjectOutputStream�Ĺ����һ��ObjectInpu
tStream�Ĺ������һһ��Ӧ.ObjectOutputStream�Ĺ��캯������������д��һ����
ʶͷ,��ObjectInputStream�����ȶ��������ʶͷ.���,�����׷�ӷ�ʽ��һ���ļ���
д��objectʱ,���ļ����������ʶͷ.������ObjectInputStream��deserialize��
��ObjectOutputStreamʱ,������StreamCorruptedException.һ�ֽ�������ǿ��Թ���
һ��ObjectOutputStream������,������writeStreamHeader()����.�����Ǻ��writeSt
reamHeader()����Ӧ�ж��Ƿ�Ϊ�״����ļ���д��object,��?�����super.writeStrea
mHeader();����,����׷�ӷ�ʽд��objectʱ,��Ӧ����ObjectOutputStream.reset()��
��.
��:
��������л�(serialization)������������,Ӧ��ν�����д�뵽����ȡ�ļ���?
��:
Ŀǰ,û��ֱ�ӵķ������Խ�����д�뵽����ȡ�ļ���.
���ǿ���ʹ��ByteArray����/�������Ϊ�н�,��������ȡ�ļ���д��������ȡ��
���ж����ֽ�,���ҿ��������ֽ�����������������/�����,�����ڶ�д����.��Ҫע��
�������ֽ�����Ҫ��һ������Ķ���,�����д����ʱ���������. ����,java.io.By
teArrayOutputStream�����ڻ�ȡObjectOutputStream���ֽ���,���пɵõ�byte���鲢
�ɽ�֮д�뵽����ȡ�ļ���.�෴,���ǿ��Դ�����ȡ�ļ��ж����ֽ�����,�������
����ByteArrayInputStream,������ObjectInputStream,�Զ�ȡ����.
��:
����RMIӦ��ʱ,�ɲ����Բ��ֹ��������ַ���rmiregistry,���Ǵӳ���������֮?
��:
����. java.rmi�����ṩ����java.rmi.registry.LocateRegistry,���ڻ�ȡ���ַ����
�������ַ���.����LocateRegistry.createRegistry(int port)����������ijһ�ض���
�ڴ������ַ���,�Ӷ��û��������ֹ�����rmiregistry.����,LocateRegistry.getRegi
stry(String host,int port)���������ڻ�ȡ���ַ���.
��:
ʹ����PrintJob���д�ӡ����ʱ,Ӧ������ô�ӡ����ȴ�ӡ����?
��:
ʹ�����·������Ի��PrintJob��ʵ�����ڿ��ƴ�ӡ����:
Toolkit.getPrintJob(Frame f, String jobtitle, Properties prop)
��ô���ڴ�ӡ���Ե����ÿ���ͨ���prop������������ʵ��,��ӡ���԰���:
awt.print.destination: ������"printer"��"file"
awt.print.printer: ��ӡ����
awt.print.fileName: ��ӡ�ļ���
awt.print.numCopies: ��ӡ����
awt.print.options: ��ӡ����Ĵ�ӡѡ��
awt.print.orientation: ��ӡ����,������"portrait"��"landscape"
awt.print.paperSize: ֽ�Ŵ�С,������"letter","legal","executive"��"a4"
��:
��JDK1.1��Thread�ඨ����suspend()��resume()����,������JDK1.2���Ѿ���ʱ,Ӧʹ��
ʲô���������֮?
��:
Thread.suspend�������ڲ�������.���һ��Ŀ���̶߳�ijһ�ؼ�ϵͳ��Դ�����˼����
��,Ȼ����̱߳�suspend,��ô��Ǹ��̱߳�resume,���������̶߳����޷����ʸ�ϵͳ
��Դ.�������һ���߳̽�����resume,ʹ���̼߳�������,���ڴ�֮ǰ,��Ҳ��Ҫ������
һϵͳ��Դ,�򽫲�������.
���,��Java 2��,�Ƚ����еķ�ʽ�Ƕ����̵߳�״̬����,��ʹĿ���߳���ѯ��״̬����
,��״̬Ϊ���״̬ʱ,����ʹ��wait()����ʹ֮���ڵȴ�״̬.һ����Ҫ���̼߳�������
,�����̻߳����notify()������֪ͨ��.
��:
ʹ��JDBC���,Ӧ��ο��ƽ��ResultSet��ָ��,ʹ֮�ܹ������ƶ�,�Լ��ƶ������
���ĵ�һ�к����һ��?
��:
��JDK1.1��,ResultSet����ֻ������next()����֧�����ָ�������.����Java 2��,Re
sultSet�����������·���֧�����ָ����ƶ�,����:
ResultSet.first():�����ָ���Ƶ����ĵ�һ��
ResultSet.last(): �����ָ���Ƶ��������һ��
ResultSet.previous(): �����ָ������һ��
���ϵķ���������JDBC2.0�Ĺ淶��,����֧��JDBC 2.0��JDBC����򶼿���֧������
����.ĿǰIntersolv��OpenLink��JDBC������̾��в�Ʒ֧��JDBC 2.0 .
��:
�ļ���Web Server֧��Servlet?���ʹIIS֧��Servlet?
��:
Ŀǰ,֧��Servlet�ķ������˲�Ʒ��Ҫ��: Sun��˾��Java WebServer,Lotus DominoGo
 WebServer,BEA weblogic Tengah Server,Jigsaw,NetForge,AcmeServer��Mot Bays J
etty��.
����,һЩ������Ҳ������Servlet engine,��ʹ����WebServer(��Netscape Web S
erver,IIS��)�ܹ�����Servlet,��LiveSoftware��Jrun(http://www.livesoftware.com
/ products/jrun/)��.
��:
�����JavaӦ���н�ͼ��洢��ͼ���ļ���?
��:
Java Advanced Imaging API(����Java Media API��)������JavaӦ����ִ�и��ӵ�,
�����ܵ�ͼ����.JAI API�ṩ�˴洢ͼ�������.Ŀǰ,JAI API֧�����¼���ͼ���ļ�
��ʽ:BMP,JEPG,PNG,PNM,TIFF.�������˽�ͼ��洢��BMP�ļ���һ�δ���:
OutputStream os = new FileOutputStream(fileToWriteTo);
BMPEncodeParam param = new BMPEncodeParam();
ImageEncoder enc = ImageCodec.createImageEncoder("BMP", os, param);
enc.encode(img);
os.close();
�йش洢ͼ���ļ��ı��ָ����ο�������ҳ:
http://java.sun.com/products/java-media/jai/forDevelopers/jai-guide/
��:
�����Java�����򴮿ڶ�д���? font>
��:
Sun��˾��Java Communication API2.0�����ڶ�д����,��֧��RS232���ں�IEEE 1284 
����,�ṩ��һ����ƽ̨�޹صĴ�/����ͨ�Ż���.
��ϸ�ĵ�,����ʣ�http://java.sun.com/products/javacomm/
ԭ���ߣ� ����
ԭ������ Sun�й�

--
ˮ ƿ ��
���������ı�ƿ��������ϣ��������������˹δ�޵�Ů��ϣ�ȹ������εģ�����Ӣ��
������ʿ����������˹��ϣ�ȼ޸�����DZ�ƿ���߳�ȱ����˹�㽫������(Toroy)����
�������׽�����ϲ�ȱ����ƿ�����״����һ���ӳ�һ��ƿ���ƣ����Ͽ�������������
�������������������
ͨ�����õ�·��13594169136     23207             
�� ��Դ:�����Ļ����� bbs.cqupt.edu.cn��[FROM: AliveForever] 
Technical Details
Message-ID: <49i071$9aT@bbs.cqupt.edu.cn>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news2.google.com!fu-berlin.de!image.surnet.ru!newsfeed.simtel.ru!Simtel.RU!news.bylinux.net!maily.cic.tsinghua.edu.cn!news.uestc.edu.cn!CQUPT

Show Full Headers
Complete Article Headers
X-Google-Language: Chinese,GB
X-Google-Thread: f6cb0,3e93f4108e1a1723,start
X-Google-Attributes: gidf6cb0,public
X-Google-ArrivalTime: 2003-12-23 09:41:00 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news2.google.com!fu-berlin.de!image.surnet.ru!newsfeed.simtel.ru!Simtel.RU!news.bylinux.net!maily.cic.tsinghua.edu.cn!news.uestc.edu.cn!CQUPT
From: chimera.bbs@bbs.cqupt.edu.cn (����Ư��������)
Newsgroups: cn.bbs.comp.lang.java
Subject: Java�������⼯��������Sun�й�ٷ�վ��
Date: 19 Dec 2003 18:20:26 GMT
Organization: ��������
Message-ID: <49i071$9aT@bbs.cqupt.edu.cn>
X-Filename: Java/M.1071858001.A
Lines: 327