打印

Solaris操作系统上搭建Java EE开发环境

本帖已经被作者加入个人空间

Solaris操作系统上搭建Java EE开发环境

1.1下载JDK

JDK 是 Java Development Kit 的缩写,他是整个 Java 的核心,包括了 Java 运行环境( Java Runtime Envirnment ),一些 Java 工具和 Java 基础的类库 (rt.jar) 。不论什么 Java 应用服务实质都是内置了某个版本的 JDK 。因此掌握 JDK 是学好 Java 的第一步。

Java 开发工具包是免费下载使用的。若读者需要可以根据不同的操作系统平台,下载相应的 JDK 进行安装,也可以通过笔者所提供的 URL 地址下载相应的 JDK 。 JDK 当前的最新版本为 jdk1.6.0_04 ,在此笔者将以 Solaris 平台为例,介绍下载的具体过程,步骤如下:

( 1 )在浏览器地址栏输入“ http://java.sun.com/javase/downloads/index.jsp ”,按“ Enter ”键即可进入如图 1-1-1 所示的页面。

  图 1-1-1
( 2 )在当前页面下找到“ JDK 6 Update 4 ” 一项,单击后面的“ Download ”按钮,进入图 1-1-2 所示页面,在下拉菜单中选中“ Solaris ”并在是否同意的选项中打勾,

    图 1-1-2
( 3 )如图 1-1-2 所示单击下方的“ Continue ”便进入如图 1-1-3 所示页面。

图 1-1-3
( 4 )在当前页面下寻找如图 1-1-4 所示的写有“ Solaris x86 self-extracting file ”的一行,再单击其下方的“ jdk-6u4-solaris-i586.sh ”的超链接便开始下载适用于 Solaris 操作系统的 JDK 。

[ 本帖最后由 云杉上的蝴蝶 于 2008-4-6 20:43 编辑 ]
本帖最近评分记录
  • 网络忏悔 X币 +8 感谢您发布的原创,期待您的下篇佳作! 2008-4-6 23:04
|-- AI by Spruce Lab -- | Discover the Info. Tech. for Personal! && Powered by Solaris & Oracle

通告:即日起启用新MSN和Mail地址:aic.lab.sif@gmail.com 原来的最多1个月后停用!

TOP

1.2安装JDK

下载完成后,既可进行安装,下面介绍在 Solaris 操作系统下安装 JDK 的方法。

( 1 )进入存放 jdk-6u4-solaris-i586.sh 安装程序的目录,右击安装程序单击“属性”,在弹出的属性对话框中点击上方的“权限”标签如图 1-2-1 所示将“所有者”、“群组”、“其它”三项的权限选项全部选中后单击“关闭”按钮,关闭对话框。

图 1-2-1

( 2 )双击 JDK 安装程序,在弹出的对话框中单击“在终端中运行”, 如图 1-2-2 所示。

图 1-2-2

( 3 )点击“在终端中运行”后便进入 JDK 的安装界面,如图 1-2-3 所示。

图 1-2-3

( 4 )使用“ Enter ”键阅读完 JDK 的安装协议后,便会出现如图 1-2-4 所示信息。

图 1-2-4

( 5 )在窗口键入“ yes ”按“ Enter ”键便开始了 JDK 的安装,如图 1-2-5 所示

图 1-2-5

( 6 )安装完成后终端窗体会自动关闭,此时刷新 JDK 所安装的目录,便会看见 JDK 安装完毕后所生成的文件夹如图 1-2-6 所示。笔者在这里对 JDK 的安装和操作都在系统根目录下,读者可根据自己的需要选择 JDK 的安装目录。

图 1-2-6

( 7 )虽然,我们现在已经安装了最新版的 JDK 但 Solaris 系统本身还是默认使用其自带的 JDK 版本,读者可以通过在“终端”键入如下命令 , 来查看系统当前的 JDK 版本。

java –version

命令执行后结果如图 1-2-7 所示

图 1-2-7

那么我们应当如何来使用最新的 JDK 呢?请读者按照接下来的步骤继续操作。

( 8 )在安装 JDK 的目录下右击生成的 JDK 文件夹将其重命名为 jdk6 如图 1-2-8 ,这样便于之后的配置

图 1-2-8

也许有的读者会问此时在“终端”键入“ PATH=/jkd6/bin:$PATH ”不就行了么,是的这样的确也可以,但接下来会发生什么呢?读者可能会发现当您像上面这样配置后便可以使用自己安装的 jdk 了,这一点同样可以用“ java -version ”来证明,如图 1-2-9 所示

图 1-2-9

可是在您高兴过后,您很快就会发现当你在下次开机的时候您的 jdk 版本又会回到系统原先的 JDK 版本如图 1-2-7 所示,用这种方法您需要在每次重启后重新执行一遍“ PATH=/jkd6/bin:$PATH ”命令 , 下面我们就来介绍一个 “懒人”的方法 , 参见下面步骤。

( 9 )在系统根目录下“ etc ”文件夹中找到“ profile ”文件如图 1-2-10 所示

图 1-2-10

( 10 )双击选择“显示”打开此文件,如图 1-2-11 所示

图 1-2-11

( 11 )在文件中加入如下内容

JAVA_HOME=/jdk

export JAVA_HOME

JRE_HOME=/jdk/jre

export JRE_HOME

在“ PATH ”处添加如下内容,并用“ : ”与后面的内容隔开。

PATH=$ JAVA_HOME/bin :$ JRE_HOME/bin:

如图 1-2-12 所示

图 1-2-12

( 12 )保存关闭后,重新启动计算机,这时您就可以使用您安装的 JDK 了,同时您还可以通过在“终端”键入如下命令进一步了解 PATH 变量的设置

echo $PATH

( 13 )感兴趣的读者还可以通过一个小的 Java 程序来验证自己 JDK 环境变量的设置,在系统根目录下新建一个 Test.java 文件,下面给出 Test.java 的完整代码。

public class Test{

public static void main(String args[]){

System.out.println("ok!!!"); // 打印显示“ ok!!! ”

}

}

保存后,在“终端”中键入如下命令

javac Test.java

java Test

如果程序没问题终端窗口会显示我们所要打印的信息,如图 1-2-13所示,到此, JDK 的安装就算完成。

图 1-2-13
|-- AI by Spruce Lab -- | Discover the Info. Tech. for Personal! && Powered by Solaris & Oracle

通告:即日起启用新MSN和Mail地址:aic.lab.sif@gmail.com 原来的最多1个月后停用!

TOP

2.1下载Tomcat

Tomcat 服务器是一个免费的开放源代码的 Web 应用服务器,它是 Apache 软件基金会( Apache Software Foundation )的 Jakarta 项目中的一个核心项目,由 Apache 、 Sun 和其他一些公司及个人共同开发而成。

由于有了 Sun 的参与和支持,最新的 Servlet 和 JSP 规范总是能在 Tomcat 中得到体现。因为 Tomcat 技术先进、性能稳定,而且免费,因而深受 Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的 Web 应用服务器。

下面笔者将以 Solaris 平台为例,介绍 Tomcat 下载的具体过程,步骤如下:

( 1 )在浏览器地址栏输入“ http://tomcat.apache.org/download-60.cgi ”,按“ Enter ”建即可进入如图 2-1-1 所示页面。

图 2-1-1

( 2 )在当前页面下单击左侧的“ Tomcat 6.x ”后将页面向下滚动到底部如图 2-1-2 所示单击“ Binary Distributions ”处“ Core ”下方的“ zip (pgp, md5) ”,便开始 Tomcat 的下载了。

图 2-1-2
|-- AI by Spruce Lab -- | Discover the Info. Tech. for Personal! && Powered by Solaris & Oracle

通告:即日起启用新MSN和Mail地址:aic.lab.sif@gmail.com 原来的最多1个月后停用!

TOP

2.2安装Tomcat

下面介绍在 Solaris 操作系统下安装 Tomcat 的方法。

( 1 )进入存放 Tomcat 压缩文件的目录,右击 Tomcat 压缩文件,单击“属性”,在弹出的属性对话框中单击上方的“权限”标签如图 2-2-1 所示将“所有者”、“群组”、“其它”三项的权限选项全部选中后单击“关闭”按钮,关闭对话框。


图 2-2-1

( 2 )右击修改后的 Tomcat 压缩文件单击“解压缩到此处”,如图 2-2-2 所示,笔者在这里将 Tomcat 解压到系统根目录下,读者可根据自己的需要选择解压目录,

图 2-2-2

( 6 )完成解压后将在当前目录下生成一个“ apache-tomcat-6.0.14 ”的文件夹,右击新生成的“ apache-tomcat-6.0.14 ”的文件夹将其改名为“ tomcat6 ”同样这样做也是为了简化我们对 Tomcat 的配置

( 7 )解压完成后, Tomcat 还不能正常的运行,我们还需对 Tomcat 的环境变量进行配置,在系统根目录下找到“ etc ”文件夹中的“ profile ”文件,

( 8 )打开此文件,在文件中加入如下内容

CATALINA_HOME=/tomcat6

CATALINA_BASE=/tomcat6

export CATALINA_HOME CATALINA_BASE

CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CATALINA_HOME/lin

export CLASSPATH

在“ PATH ” 中加入如下内容,并用“ : ”与后面的内容隔开。

$ CATALINA_HOME/bin

如图 2-2-3 所示 , 修改完毕后,保存关闭“ profile ”文件,注意 , 对“ profile ”文件的修改必须重新启动一下计算机,才能正常执行。

图 2-2-3

好了,我们现在已经对 Tomcat 进行了配置,下面我们就来测试一下我的配置是否成功,

(9) 重启完计算机后,在“终端”处键入如下命令

startup.sh

执行后将会出现如图 2-2-4 所示界面,这表示我们已经成功将 Tomcat 启动

图 2-2-4

(10) 读者可以通过打开浏览器,并在地址栏中输入“ http://localhost:8080 ” 来进一步验证 Tomcat 的安装和配置是否正确,如果正确则在浏览器中可以看到如图 2-2-5 所示界面。

图 2-2-5

如果读者不能看到图 2-2-5 所示界面或界面出现错误,说明安装的 Tomcat 存在问题,请读者根据上述步骤,核对或重新对 Tomcat 进行配置。

( 11 )使用完 Tomcat 需要对其进行关闭,读者可以通过在“终端”键入如下命令

shutdown.sh

执行后将会出现如图 2-2-6 所示界面

图 2-2-6

此时,若再通过浏览器来访问 Tomcat 将出现错误信息无法访问,如图 2-2-7 。

图 2-2-7
|-- AI by Spruce Lab -- | Discover the Info. Tech. for Personal! && Powered by Solaris & Oracle

通告:即日起启用新MSN和Mail地址:aic.lab.sif@gmail.com 原来的最多1个月后停用!

TOP

2.3 Solaris平台下开发并部署简单的JSP

本节将通过一个例子向读者介绍如何在 Tomcat 中部署 JSP 程序,这个例子的主要功能是提取系统当前时间并在网页打印显示出来。开发步骤如下:

( 1 )在 Tomcat 的安装目录的 webapps 文件夹下,读者可以看到 ROOT , examples, tomcat-docs 之类 Tomcat 自带的文件夹,在这个文件夹下新建一个名称为 “ TomcatTest ”的文件夹,并在其中添加一个名称为“ TestTomcat.jsp ”的文件,下面给出 TestTomcat.jsp 的完整代码

<%@ page contentType="text/html;charset=GBK"%>

<html><head><title> 在 Tomcat 中部署 JSP</title></head><h1>

<body>

当前时间是: <br>

<%= new java.util.Date().toLocaleString() %>

</body><h1>

</html>

( 2 )在 TomcatTest 文件夹下新建一个名为 WEB-INF 的文件夹,并在其中添加一个名为 “ web.xml ”的文件,“ web.xml ”文件中的内容如下:

<?xml version="1.0" encoding="ISO-8859-1"?>

<web-app xmlns="http://java.sun.com/xml/ns/j2ee"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"

version="2.4">

</web-app>

( 3 )启动 Tomcat ,在浏览器中输入“ http://localhost:8080/TomcatTest/TestTomcat.jsp ”,浏览器中会出现如图 2-3-1 所示内容。(提示: web.xml 文件的内容比较复杂,一般情况下很少自己编写,而是采用拷贝后修改的方法,这样可以避免一些不必要的错误)。

图 2-3-1
|-- AI by Spruce Lab -- | Discover the Info. Tech. for Personal! && Powered by Solaris & Oracle

通告:即日起启用新MSN和Mail地址:aic.lab.sif@gmail.com 原来的最多1个月后停用!

TOP

2.4开发并部署Servlet

下面我们通过一个简单的 Servlet 小程序来向读者介绍如何在 Solaris 下如何开发部署 Servlet

( 1 )在 Tomcat 的安装目录的 webapps 文件夹下新建一个名为“ ServletTest ”的文件夹,在“ ServletTest ”文件夹下新建一个“ WEB-INF ”文件夹,在其下新建一个“ web.xml ”文件,“ web.xml ”文件中的内容如下:

<?xml version="1.0" encoding="ISO-8859-1"?>

<web-app xmlns="http://java.sun.com/xml/ns/j2ee"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"

version="2.4">

<servlet>

<servlet-name>SimpleServlet</servlet-name>

<servlet-class>xsz.SimpleServlet</servlet-class>

</servlet>

<servlet-mapping>

<servlet-name>SimpleServlet</servlet-name>

<url-pattern>/xszservtest</url-pattern>

</servlet-mapping>

</web-app>

( 2 )再在“ WEB-INF ”文件夹下新建一个“ classes ”文件夹,注意,这个文件夹必须有,否则, Servlet 程序无法正常运行,在“ classes ”目录下新建一个名为“ SimpleServlet.java ”的文件,下面给出 SimpleServlet.java 的完整代码

package xsz;

import java.io.*;

import javax.servlet.http.*;

import javax.servlet.*;

public class SimpleServlet extends HttpServlet{

public void doPost(HttpServletRequest req,HttpServletResponse resp)

throws ServletException,java.io.IOException{

String tname=req.getParameter("tname");

PrintWriter pw=resp.getWriter();

pw.println("<Font size=20 color=red>"+tname+",hello!!!</font>");

pw.flush();

}

public void doGet(HttpServletRequest req,HttpServletResponse resp)

throws ServletException,

java.io.IOException{this.doPost(req,resp);

}

}

( 3 )回到“ ServletTest ”文件夹下,并在此文件夹下新建一个“ JspToServlet.jsp ”的文件,下面给出 JspToServlet.jsp 的完整代码

<html>

<head><title>Jsp 显示页面 </title></head>

<body>

<form action="xszservtest" method="post">

Name:<input type="text" name="tname"><br/>

<input type="submit" value=" 提交 ">

</form></body>

</html>

( 4 )在正式运行 Servlet 之前,还需要做一些准备工作,主要是将 Servlet 所需的 jar 包路径添加进 CLASSPATH 环境变量中,具体步骤如下

在系统根目录下找到“ etc ”文件夹在文件夹下找到“ profile ”文件,打开文件在文件中 “ CLASSPATH ”处加入如下内容,并用“ : ”与后面的内容隔开。

$CATALINA_HOME/lib/ servlet-api.jar

修改完毕后,保存关闭“ profile ”文件,重新启动计算机。

( 5 )在“终端”键入如下命令,将路径切换到“ SimpleServlet.java ”文件所在目录,并对“ SimpleServlet.java ”文件进行编译

cd /tomcat6/webapps/ServletTest/WEB-INF/classes

javac SimpleServlet.java

命令执行后如图 2-4-1 所示

图 2-4-1

这时将在“ SimpleServlet.java ”文件所在目录下生成“ SimpleServlet.class ”文件,如图 2-4-2

图 2-4-2

( 6 )在“ SimpleServlet.java ”文件所在目录下新建一个“ xsz ”的文件夹即“ SimpleServlet.java ”代码中所要的包名,读者可根据自己的包名命名此文件,笔者在这里使用的是“ xsz ” , 将“ SimpleServlet.java ”文件编译后所生成的“ SimpleServlet.class ”文件放入“ xsz ”文件夹。

( 7 )在“终端”处键入“ startup.sh ”命令启动 Tomcat ,在浏览器中输入“ http://localhost:8080/ServletTest/JspToServlet.jsp ”,浏览器中会出现如图 2-4-3 所示页面

图 2-4-3

( 8 )在文本框中输入测试内容,笔者在这里输入的内容为“ TEST ” , 点击提交按钮将出现如图 2-4-4 所示页面

图 2-4-4

自此,这个简单的 Servlet 小程序开发完毕。
|-- AI by Spruce Lab -- | Discover the Info. Tech. for Personal! && Powered by Solaris & Oracle

通告:即日起启用新MSN和Mail地址:aic.lab.sif@gmail.com 原来的最多1个月后停用!

TOP

* 2.5开发并部署基于数据库的Servlet

下面我们通过另一个简单的 Servlet 小程序来向读者介绍如何在 Solaris 下部署基于数据库的 Servlet ,为了简便起见笔者在这里使用的数据库是 Java JDK 中自带的 Derby 数据库,读者可根据自己的需求安装其他数据库进行测试。

( 1 )使用 Java JDK 自带的 Derby 数据库,我们需要先对 Solaris 的环境变量进行设置,同样打开系统根目录下“ etc ”文件夹下的“ profile ”文件,在其中添加如下内容

DERBY_HOME=/jdk6/db

export DERBY_HOME

在“ CLASSPATH ”中添加如下内容,在这里同样用“ : ”与前后内容隔开

$DERBY_HOME/lib/derby.jar:$DERBY_HOME/lib/derbytools.jar

配置完后如图 2-5-1 所示

图 2-5-1

( 2 )保存关闭后,重新启动计算机,我们可以通过在“终端”键入如下命令,来验证我的对 Derby 的设置是否成功

java org.apache.derby.tools.sysinfo

如果我们的设置没有问题,“终端”窗口将会显示 Java 系统的很多信息,如图 2-5-2 所示

图 2-5-2

( 3 )接下来我们使用管理工具 ij 来对 Derby 数据库进行操作

ij 是 Derby 自带的一个功能强大的数据库管理工具,可以进行很多数据库操作,完成上一步的操作后,就可以启动并使用 ij 了。在“终端”窗口键入如下命令

java org.apache.derby.tools.ij

命令执行后如图 2-5-3 所示

图 2-5-3

从图中可以看出 ij 工具成功启动,并出现了系统提示符“ ij> ”。

( 4 )使用 ij 创建以及连接指定的数据库,其命令语法如下啊

connect 'jdbc:< 数据库路径 >;create=true';

这里“数据库路径”指的是指定数据库在磁盘上存放的位置,笔者在这里将数据库建在了 Solaris 系统根目录下,并命名为“ db ”,其命令如下

connect 'jdbc:/db;create=true';

命令成功执行后将在系统根目录下生成一个“ db ”文件夹如图 2-5-4 所示

图 2-5-4

( 5 )下面我们通过如下命令来对数据库进行操作,我们将新建一个“ person ”表并向表中插入一条数据,读者需要注意的是,连接到数据库后一定要使用“ disconnect ”命令关闭数据库的连接,否则会影响其他应用对数据库的使用。

create table person (name varchar(20),upassword varcher(20));

insert into person values(‘test1’,’aaaa’);

selet * from person;

commit;

disconnect;

exit;

运行结果如图 2-5-5 所示,这样我们就成功的建立了一个“ person ”表,并成功插入了一条数据。

图 2-5-5

( 6 )在“ tomcat6 ”目录下的“ webapps ”中新建一个名为“ DerbyTest ”的文件夹如图 2-5-6 所示

图 2-5-6

( 7 )在“ DerbyTest ”文件夹下新建一个“ WEB-INF ”文件夹,再并在此文件夹下新建一个“ classes ”文件夹

( 8 )在“ classes ”文件夹下开发我们程序所需的 Java 代码,首先开发 PersonBean.java 其代码如下

package xsz;

import java.sql.*;

import javax.sql.DataSource;

import javax.naming.*;

public class PersonBean{

String uid ;

String name;

String upassword;

Connection con;

PreparedStatement pstmt;

final String sql = "SELECT name FROM person WHERE name=? and upassword=?";

public PersonBean(){

try{

Class.forName("org.apache.derby.jdbc.EmbeddedDriver");

// 获取指定数据库的连接

con=DriverManager.getConnection("jdbc:derby:/db", "", "");

pstmt = con.prepareStatement(sql);

System.out.println(" 链接!!! ");

} catch(Exception e ){e.printStackTrace();}

}

public static void main(String args[]){new PersonBean();}

public void setName(String name){this.name = name;}

public String getName(){return name;}

public void setUpassword(String upassword){this.upassword = upassword;}

public String getUpassword(){return upassword;}

// 验证用户名和密码

public Boolean isvalidate(){

Boolean flag = false;

// 声明一个结果集对象

ResultSet rs = null;

try{

pstmt.setString(1,name);

pstmt.setString(2,upassword);

// 查询记录

rs = pstmt.executeQuery();

// 判断是否有记录

if(rs.next()){flag = true;} // 如果有记录,则用户是合法的

}catch(Exception ex){ex.printStackTrace();}

finally{

try{

if(rs != null){

rs.close();

rs = null;

}

}catch(Exception ex){ex.printStackTrace();}

}

return flag;

}}

( 9 )再在“ classes ”文件夹下开发我们程序所需的另一个 Java 代码, CenterServlet.java 其完整代码如下

package xsz;

import javax.servlet.*;

import javax.servlet.http.*;

import java.io.*;

import java.util.*;

public class CenterServlet extends HttpServlet{

PersonBean person;

public void init(){person=new PersonBean();}

public void doPost(HttpServletRequest req,HttpServletResponse resp)

throws ServletException,IOException{

List errors = new ArrayList();

String action = req.getParameter("action");

if("login".equals(action)){

String name =req.getParameter("name");

String upassword =req.getParameter("upassword");

person.setName(name);

person.setUpassword(upassword);

if(person.isvalidate()){

// 用户 ID ,密码合法

req.setAttribute("name",name);

forward(req,resp,"login_success.jsp");

}else{// 用户 ID 、密码非法

errors.add(" 错误的用户 ID 及密码 !");

req.setAttribute("errors",errors);

forward(req,resp,"login.jsp");

}}

}

public void doGet(HttpServletRequest req,HttpServletResponse resp)

throws ServletException,IOException

{doPost(req,resp) ;}

public void forward(HttpServletRequest req,HttpServletResponse resp,String url)

throws ServletException,IOException

{ req.getRequestDispatcher(url).forward(req,resp);}

}

( 10 )完成以上两个业务代码的开发后,我们接下来对其进行编译 , 在“终端”窗口中使用如下命令切换到当前 Java 文件所在目录

cd \tomcat6

cd \webapps

cd \DerbyTest

cd \WEB-INF

cd \classes

( 11 )使用如下命令,同时对“ classes ”目录下的两个 java 文件进行编译

javac *.java

命令执行后如图 2-5-7 所示

图 2-5-7

(12) 成功编译后,我们回到“ classes ”目录下会看见两个新生成的“ .class ”文件分别是“ CenterServlet.clsss ”和“ PersonBean.class ”如图 2-5-8 所示

图 2-5-8

这时在“ classes ”目录下新建一个“ xsz ”的文件夹,这是两个 Java 程序所需要的包名,读者可根据自己所起的包名来命名此文件夹,但读者需要注意的是自己开发时 Java 程序中的包名一定要与此文件夹名一致,否则,程序将无法正常运行。

( 13 )接下来,我们在“ WEB-INF ”目录下创建一个“ web.xml ”文件,其代码如下

<?xml version="1.0" encoding="ISO-8859-1"?>

<web-app xmlns="http://java.sun.com/xml/ns/j2ee"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"

version="2.4">

<display-name>Tomcat Documentation</display-name>

<description>Tomcat Do