java中的常见问题

类别:Java 点击:0 评论:0 推荐:

 

 

初学JAVA的朋友很可能碰到很多问题,下面收集整理了一些供参考。

    摘?自:JAVA俱乐部                   

           1。[问]Application和Applet各自指什么?在使用中有区别吗?
              [答]Application和Applet是利用JAVA语言生成的可运行代码中最常用的两种,两                     者都必须在JAVA虚拟机上运行。简单来讲,

Application更象我们平常用VB,VC等编写 的桌面程序,多以控制台(CONSOLE)方式运行,当然也很容易实现窗口应用。

而Applet可以嵌入Web页面中,在支持JAVA虚拟机的浏览器上运行。在使用时应该区别应用。

          2。[问]我编写了一个简单的Application,也通过了编译,得到了一个CLASS文件,可是我使用JDK的JAVA命令运行它时,却报告CLASS找不到的错误。
              [答]这是初学JAVA时常遇到的问题,其实很简单,你看看自己在程序中定义的主类
              名和你对程序的命名(*.JAVA)是不是相同?如果两个名称不相同,就会出现这个错误。

           3。[问]我想学习JAVA语言,可是面对很多JAVA的开发工具,不知道用什么好?
              [答]目前出现了很多JAVA开发工具,各自有自己的特色。对于初学者,建议使用SUN公司的JDK开始学习,注意利用JDK的文档资料,这对打好JAVA的基本功很有帮助。将来正式使用JAVA开发项目时,可以选择一些工程化的可视化工具,如Microsoft的VJ++,等。实际上,经常是在开发中综合利用JDK和其他可视化工具。

           4。[问]经常会看见还有一个JAVAScript这样的东西,它和JAVA有区别吗?
              [答]对比JAVA来讲,JAVAScript并不能说是一套完整的语言,它定义了一套方法,事件处理等,主要用于Web页面开发中增加页面效果,进行数据有效性检查等。在开发Microsoft ASP时也可以作为一种编程脚本。它有一个基本对等的东西就是VBScript.

 

常见中文问题的解决方法

1.JDK的中文问题: 
不要使用DataInputStream与DataOutputStream,而要用 BufferedReader与BufferedWriter。

3.数据库中文问题: Access + Javaodbc驱动程序不能支持中文(用getByte()也 不行),目前我还没有找到解决方法。 MySQl + Javaodbc驱动程序也有中文问题,目前我还没有找 到解决方法。 MySQl + mm.mysql.jdbc没有任何中文问题,但是建立数据 表,有中文输入的域,最好设成bianry,否则因为MySQL的 varchar、char、text等属性的域在查询时是不分大小写时, 这样中文查询时会出现问题。

4.Jsp的中文问题。 setPropotery时的中文问题,使用URLDecoder.decode()进行 转换即可。 

 


如何设置Java 2(JDK1.2)的环境变量? 

答: 
Java 2安装后,需要设置PATH和JAVA_HOME环境变量.与JDK1.1不同的是:设置好JAVA_HOME环境变量后,JVM将自动搜索系统类库以及用户的当前路径. 

Solaris平台: setenv JAVA_HOME Java2的安装路径 
setenv PATH $JAVA_HOME/bin:${PATH

Windows平台: set JAVA_HOME=Java2的安装路径 
set PATH=$JAVA_HOMEbin;%PATH% 

 

问: 使用JDBC编程,应如何控制结果集ResultSet的指针,使之能够上下移动,以及移动到结果集的第一行和最后一行? 

答: 
在JDK1.1中,ResultSet类中只定义了next()方法支持数据指针的下移.但在Java 2中,ResultSet类增加了如下方法支持数据指针的移动,包括: 

ResultSet.first():将数据指针移到结果集的第一行 
ResultSet.last(): 
将数据指针移到结果集的最后一行 
ResultSet.previous(): 
将数据指针上移一行 

以上的方法定义在JDBC2.0的规范中,所有支持JDBC 2.0的JDBC驱动程序都可以支持上述方法.目前Intersolv和OpenLink等JDBC驱动程序厂商均有产品支持JDBC 2.0 . 
Java Advanced Imaging API

tomcat

Tomcat是一个带有jsp环境的servlet容器.servlet容器是一个根据用户的行为可以管理和激活servlet的运行时的shell.
粗略地可以将servlet容器分为如下几类:

独立的servlet容器
内置有web服务器的一部分.指当使用基于Java的web服务器的情形,例如servlet容器是JavaWebServer的一个部分. 独立的servlet容器是Tomcat的默认模式.
大多数的web服务器并非基于Java,因此,我们可以得出如下两种容器的模式.


进程内的servlet容器
servlet容器作为web服务器的插件和Java容器的实现.Web服务器插件在内部地址空间打开一个JVM(java virtual machine)使Java容器得以在内部运行.如有某个需要调用servlet的请求,,插件将取得对此请求的控制并将他传递(使用JNI)给Java容器.进程内容器对于多线程,单进程的服务器非常合适并且提供很好的运行速度,但伸缩性有所不足.


进程外的servlet容器
servlet容器运行于web服务器之外的地址空间且作为web服务器的插件和Java容器的实现的结合.web服务器插件和Java容器 JVM使用IPC机制(通常是TCP/IP)进行通讯.当一个调用servlet的请求到达时,插件将取得对此请求的控制并将其传递(使用IPC等)给Java容器,进程外容器的反应时间或进程外容器引擎不如进程内容器,但进程外容器引擎在许多其他可比的范围内更好(伸缩性,稳定性等).
Tomcat既可作为独立的容器(主要是用于开发与调试)又可作为对现有服务器的附加(当前支持Apache,IIS和Netscape服务器).即任何时候配置Tomcat你都必须决定如何应用他,如选择第二或第三种模式,你还需要安装一个web服务器接口.
Tomcat与Jserv有何区别?Tomcat是Jserv吗?
这是个常见的误解.Jserv是Servlet API2.0兼容并与Apache一起使用的容器.Tomcat是一个完全重写的并与Servlet API2.2和JSP1.1兼容的容器.

2) cookie

l         在Java Servlet中,如果你光  Cookie cookie = new Cookie(name,value)

那么当用户退出Browser时,cookie会被删除掉,而不会被存储在客户端的硬盘上。

如果要存储 cookie,需加一句   cookie.setMaxAge(200)

l         cookie是跟某一个server相关的,运行在同一个server上的servlet共享一个cookie.

未完待续………………….

 

本文地址:http://com.8s8s.com/it/it14087.htm