当前位置:首页 > 芯闻号 > 充电吧
[导读]What is Java? Why Java? 大家学习Java有各自的理由,基本上Java是一个比较好的面向对象语言,api丰富 是当前比较主流的编程语言,J2SE/J2ME/J2EE在各个开发领域

What is Java? Why Java?
大家学习Java有各自的理由,基本上Java是一个比较好的面向对象语言,api丰富
是当前比较主流的编程语言,J2SE/J2ME/J2EE在各个开发领域都发展良好
Java不会取代其他开发语言或开发平台,如c/c++/c#或Delphi/.NET
没有最好的语言,只有某种应用场合下相对合适的语言

JRE
Java 2 Runtime Environment, Java 运行时环境
包括Java虚拟机(JVM),和必须的类库
它是运行Java程序和网页Applet的必备环境
它被包含在j2sdk中,也可以单独下载(约10M)
下载地址: http://java.sun.com/getjava/download.html

JDK/SDK/J2SE
Java 2 Software Development Kit, Standard Edtion
是开发Java的必备环境,包括编译器等工具和大量类库,一般IDE中也会自带
 下载地址:http://java.sun.com/j2se/downloads.html

J2EE
Java 2 Platform, Enterprise Edition
是Java在企业级应用的主要技术,也是目前Java最主要的应用场合
包括JAXP、JAXR、JAX-RPC、SAAJ、JAAS、JavaMail、JMS、JSF、JSP/Servlet等
开发J2EE,可以下载j2eesdk开发包,一般IDE中也会自带
相关链接:http://java.sun.com/j2ee

J2ME
Java 2 Platform, Macro Edition
是Java应用于嵌入式系统(如手机)的主要技术
相关链接:http://java.sun.com/j2me

开发方式
市面上的IDE(集成开发环境)可以极大的提高开发效率
但如果你初学Java,我们推荐用JDK+Editplus或UltraEdit
虽然简陋些,但却可以学的比较扎实
过早的依赖IDE只会让你对Java API蜻蜓点水,一知半解.
甚至都未能掌握Java的基本语法
掌握了扎实的基础后,再选择一款IDE进行开发是很容易的

学习或使用Java,多查javadoc是很重要的(推荐使用JavaDOCHelper,类似MSDN的界面)
版上的不少问题,其实稍微查查便不是问题

设置环境变量
 安装了JDK以后,要配置环境变量
Windows 2000
 我的电脑->属性->高级->环境变量
 添加以下环境变量(假定你的java安装在d:/Java/j2sdk1.4.2)
变量名 值 说明
JAVA_HOME d:/Java/j2sdk1.4.2
CLASSPATH . .表示当前目录,即搜索当前目录
PATH ...;%JAVA_HOME%/bin ...表示原来的PATH值
新开一个dos窗口,键入java和javac测试一下
Linux
以下为RedHat,bash为例 不同发行版略有不同,环境变量的设置详见Unix/Linux版
修改用户目录下的.bash_profile,如vi ~/.bash_profile
JAVA_HOME=/usr/local/java/j2sdk1.4.2
CLASSPATH=.
PATH=$PATH:$JAVA_HOME/bin
export JAVA_HOME CLASSPATH
重新登陆,使这个设置生效,在终端输入java javac测试一下

简单测试程序
 代码:--------------------------------
  public class Test{
   public static void main(String[] args){
    System.out.println("Hello world!");
   }
  }
 -------------------------------------
用记事本等工具编写,保存成Test.java
注意,
如果你的windows设置'不显示已知扩展名'的话,
很有可能被保存成Test.java.txt
然后在命令行工具,cd到Test.java所在目录,执行
   javac Test.java
   java Test

关于Java的学习
入门Java,请看一本系统讲解Java的书籍
这方面的书,市面上很多,大同小异,无所谓挑那本
但尽量挑本面向高版本的讲解语法的书,千万不要选《VJ++入门到精通》之类
推荐的书籍如 Java in a Nutshell, Java大学教程,Java核心技术,Java编程思想等
系统学习Java的基本知识之余,一定要勤实践,自己给自己一些动手机会
适度的记住一些常用api,不要过分依赖IDE的代码提示

开发工具

JBuilder
业界最主流的IDE之一,是Java开发工具的大哥大
目前最新版本 JBuilder 2005
无论开发j2se、j2me、j2ee还是xml/webservice,都是一把利器
Foundation Edition可免费下载,但功能较少
网上有流传企业版,为避免不必要的麻烦,请谨慎使用(尤其在公司)
相关链接:http://www.borland.com/products/jbuilder

Eclipse
新兴的Java IDE,免费、开放源代码、跨平台、功能强大、运行速度快
同时可以通过开发新的插件扩展现有插件的功能,比如在现有的Java开发环境中加
入Tomcat服务器插件。
相关链接:http://www.eclipse.org

Ant
它是流行的Java build工具,"Everyone should use ant"
Ant不是一个IDE,但却可以做很多IDE的事,如编译/打包/部署/单元测试/CVS等
对于中等规模以上的项目,必定依赖很多类库和拥有复杂的包结构
使用Ant处理这些是极佳的选择
相关链接:http://ant.apache.org

JSP
Java Server Page,一种Java Web开发的一项技术,和javascript没有什么关系.

Servlet
先于jsp出现的动态网页技术,类似cgi,但使用多线程处理请求.

jsp/servlet与Java的关系
Servlet只是继承了HttpServlet的Java类,而jsp最终会被编译成Servlet并执行
很多在开发web时遇到的问题,其实和jsp/servlet本身没什么关系,而是普通的Java问
题。 一个合格的jsp/servlet程序员首先应该是合格的Java程序员。
建议在学习和使用jsp/servlet前,先打下坚实的Java基础

以下问题不属于jsp/servlet范畴
.常用API的使用,诸如"如何把int变为String" "如何得到当前时间" "如何创建线程"
.JDBC的使用和相关注意事项,诸如"如何访问MySQL" "为什么我插入数据是乱码"
.其他J2EE技术的使用,诸如"如何使用JavaMail" "如何访问EJB"

推荐书籍
如果可能,请阅读一本系统的书籍来指导你学习这项技术
笔者只看过"JSP高级编程"(机械工业2001年,廖若雪)
其他大型出版社出版的书都应该不错,如Wrox,O'Reilly,或者国内出版社
挑书的时候最好选用jsp 1.2,servlet 2.3规范以上的书籍

Tomcat
这个是个开放源代码的JSP/Servlet服务器,是jsp/servlet的参考实现,适合初学
主页http://jakarta.apache.org/tomcat/
Tomcat 4.1和Tomcat 5都是目前稳定版本,后者支持最新的jsp/servlet标准
建议下载zip版的,解压缩,运行bin/starup.bat即可出现服务器启动的界面
如果启动失败,请确定本机的Java环境已正确,参见JAVA_HOME和PATH的配置

conf目录里是服务器的配置,webapps是部署网站的目录

自己写的java class应该放哪里
假设你的index.jsp的位置是X:/test/index.jsp, X:/test是你的项目目录
Test.class的位置应该是X:/test/WEB-INF/classes/Test.class

项目中的lib应该放哪里
X:/test/WEB-INF/lib/myLib.jar

如何写个servlet
package testservlet;

import java.io.*;
import javax.servlet.ServletException;
import javax.servlet.http.*;

public class FooServlet extends HttpServlet {
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
resp.getWriter().println("hi, I'm a servlet");
}
}
编译这个类 javac -classpath servlet-api.jar FooServlet.java
其中这个jar可以从tomcat-5.0.19/common/lib/servlet-api.jar获得
编译后的class放在 X:/test/WEB-INF/classes/testservlet/FooServlet.class
其中testservlet你包的名字,应尽量写package,避免莫名其妙的麻烦

编译X:/test/WEB-INF/web.xml,修改为

2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">


test
testservlet.FooServlet


test
/foobar


把这个程序部署到服务器上,比如把X:/test/*复制到tomcat/webapps/test/*
打开浏览器访问 http://localhost:8080/test/foobar,顺利的话会看到一行文字

jsp显示的是乱码怎么办
jsp的中文问题以下几种 //不包括jdbc读写数据库的中文问题
1. jsp中写了中文如

中文

, 却不能显示
解决方法 在jsp第一行加入
<%@ page contentType="text/html; charset=gb2312" %>

2. 表单中写了一个中文,如
却不能接受到 <%System.out.println(request.getParameter("a"));%>
解决方法 在jsp或servlet中处理参数前加一条
request.setCharacterEncoding("GB2312");

3. http://host/a.jsp?name=中文 这样的url中的name取不到
解决方法 应该使用java.net.URLEncoder类把这个字符串转成ascii

怎样实现文件上传
常见的Java文件上传api有
Jakarta Commons FileUpload http://jakarta.apache.org/commons/fileupload/
COS
SmartUpload
下载相关的文件,里面一般有demo的

JSTL和EL
分别是Java Standard Tag Lib和Expression Language
可以大大简化常规的jsp开发,并让页面更简洁,而不是充斥着scriptlet
本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

Python和Java是两种广泛应用于编程领域的高级编程语言,它们各有优劣。本文从程序设计应用、系统资源占用、高性能处理和语言特点等四方面详细介绍两种编程语言的区别。

关键字: python java 高性能处理

在这篇文章中,小编将为大家带来Java接口的相关报道。如果你对本文即将要讲解的内容存在一定兴趣,不妨继续往下阅读哦。

关键字: java 接口 Interface

应该有不少小伙伴有假期打工的经历,那今天就来给公众号的读者朋友们分享一个二哥编程星球里一个球友在富士康打工 50 天的感受,相信大家看完后会深深触动的。

关键字: 物联网 java 博客

在过去的几年中,Python的普及速度令人惊叹,Java的王者地位也常年不衰。目前两者的竞争愈发激烈,怎么选择成为了许多初学者萦绕心中的问题,网上有很多版本的说法牵引着他们的思维,让本来很简单的问题复杂化。

关键字: python java

我们都知道,浏览一个网页,有两个很主要的“电脑”在共同运行,一台是远程的,为你提供网页数据的“服务器”,一台是你正在使用的客户端电脑。

关键字: javascript java

在各种网页制作技术论坛中,常常有人询问javascript与Java有什么区别,甚至有人误认为javascript就是Java。javascript与Java确实有一定的联系,但它们并不像我们想象的那样联系紧密,甚至可以...

关键字: javascript java

对于很多初学者来讲,不太清楚Java和C语言的区别,为了让那个大家更清晰的了解,近日特意给大家归纳了一些两者的大致区别,希望能够给大家带来一定的帮助作用,也欢迎大家进行详细补充和归纳。

关键字: C语言 java

Java封装案例

关键字: java 实例

今天我们就要来讲讲看似线程安全的双重检查锁单例模式中可能会出现的指令重排问题。

关键字: java 单例模式 双重检查锁

今天我们来放松下心情,不聊分布式,云原生,来聊一聊初学者接触的最多的 java web 基础。

关键字: Spring xml java
关闭
关闭