开始咱们的第一个程序,首先是配置环境,按照上一章所描述的方式下载开发工具,然后配置Java环境变量,给大家看下具体的结构:

环境变量配置OK的提示,如上图。

Eclipse和Tomcat的文件目录位置,本系列采用的都是绿色版本,如上图。

启动Eclipse.exe,Workspace路径的配置,下面的复选框表示选中后就默认一直使用该工作空间,不选择每次启动都出出现该提示框,如上图。

在这里讲解下Workspace的概念,这里目录存储项目程序段的,假如你在别的目录创建一个Java的项目,那么在Workspace会映射同时创建和你创建项目同名的目录,这里存储配置信息,每次运行的时候Eclipse都是通过这里来读取配置信息。例如我的Workspace设置为C:\Users\MB\workspace,我在D:\LhkJava下创建一个名为HelloWorld的项目,那么相应的C:\Users\MB\workspace下会创建HelloWorld的目录,存储着HelloWorld的代码段和配置信息,如果HelloWorld项目我使用了非常多的外置Jar包,而且是用相对路径引入,现在我换电脑了,把D:\LhkJava\HelloWorld目录拷贝到新电脑去运行,可能跑不起来,但是把C:\Users\MB\workspace下的HelloWorld也一同拷贝过去,放在新电脑Eclipse的Workspace目录再去运行HelloWorld就不会出现问题了,希望这段描述可以加深大家对Workspace的理解,在实际工作中遇见很多人换了电脑或者重装系统后,以前做的项目就跑不起来了,最简单的解决方案就是一同拷贝Workspace下的目录。

选择OK,我的工作空间就默认设置为C:\Users\MB\workspace,启动后的界面如下图:

这就是传说中的开发工具了,通过Eclipse大家可以实现各种项目,包括Android项目,下面就要新建一个项目了?NO,不要急,我们做Web开发,需要有一个Web服务器来运行我们所写的程序,由于Eclipse是绿色版的,所以没有内置Tomcat,并且没有Tomcat的插件,需要自己配置,如果使用Maven框架来做项目,就不需要配置Tomcat了,这个在进阶教程以后会讲到,目前就讲这种方式的配置,而且不是Tomcat插件配置方式,那种对环境依赖比较大,目前我们以实战为主,尽量都做绿色配置,首先选择Eclipse上菜单的Window--->Preferences--->Server--->Runtime Environments-->Add,在这里我们选择Tomcat7,然后点Next,如下图:

点击Next出现配置Tomcat7的界面,Name不用管,第二个地方填写Tomcat的路径,本文一开始就截图了我的Tomcat解压路径,第三个地方选择JRE版本,我的是1.6版本,如下图所示:

配置好后,点击Finish,点击OK,选择Tomcat配置好了,开始创建第一个Java Web项目,选择 File--->New--->Other--->输入WEb--->选择Dynamic Web Project 如下图:

选择Dynamic Web Project点击Next后,出现项目的配置填写,ProjectName填写项目的名字,Target runtime目标运行的环境,我们就选择之前配置好的Tomcat7,

Dynamic web module version需要配置和Tomcat对应的版本,我们使用的是Tomcat7,所以这里需要选择3.0,Configuration里选择默认的Tomcat7.0作为模型,Working set不需要配置,这个选项是避免多个项目存在同一Workspace造成加载缓慢和查找项目复杂,可以很好的释放Package Explore的压力,设置好后然后一直点击Next最后点击Finish即可,不需要额外添加类到src,配置如下图:

创建好后的界面如下图:

接下来,咱们在Servers面板上添加Tomcat7,点击No servers are.......后在弹出的面板上点Next,然后添加我们的项目到Tomcat,如下图:

选中Tomcat7.0后,点击Next,把当前项目Add到右侧的列表中,,Server面板就会出现添加项目的选项,选择绿色的启动按钮,Tomcat服务器就启动了,如下图:

启动后,Console会输出运行的信息,如果出现 Server start up就说明启动成功了,可以输入网址去查看项目的运行效果,但是我们现在还不能运行这个项目,因为一个Java Web项目需要有web.xml,而且需要添加页面才可以,下面我们来添加web.xml和index.jsp这两个文件:

web.xml中我们只做最基础的配置,代码如下:

1
2
3
4
5
6
<?xml version="1.0" encoding="UTF-8"?>
 <welcome-file-list>
       <welcome-file>welcome.html</welcome-file>
 </welcome-file-list>
</web-app>

index.jsp中我们只输出HelloWorld,通过HTML和Java Web两种方式,代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
Hello,World!
<%="Hello,World." %>
</body>
</html>

添加的位置如下:

然后,让我们再来到Server的面板,点击绿色的启动按钮,

输出结果如下图:

启动成功,我们打开浏览器,输入:http://localhost:8080/HelloWorld/index.jsp访问,则看到以下页面:

OK,第一个Hello,World!完成了,不要高兴噢,现在是刚刚开始,之前所做的只是一个铺垫,目前才是学习的开始,我们来分析问题,大家肯定也有很多疑问:

1.Tomcat在Eclipse中启动和在Tomcat的Bin目录下Startup.bat启动有什么区别?

2.8080是什么?为什么路径中需要输入HelloWorld?localhost是什么?

3.为什么需要web.xml文件?

4.index.jsp中显示的结果都一样,区别在哪里?

J2EE开发实战基础系列一 HelloWorld【转】的更多相关文章

  1. J2EE开发实战基础系列一 HelloWorld

    开始咱们的第一个程序,首先是配置环境,按照上一章所描述的方式下载开发工具,然后配置Java环境变量,给大家看下具体的结构: 环境变量配置OK的提示,如上图. Eclipse和Tomcat的文件目录位置 ...

  2. J2EE开发实战基础系列之开卷有益

    2014.10.24[致歉]{抱歉,从7.4号接到朋友的请求,一直忙到现在,最近又有新的CASE要忙,很抱歉教程要延误,开课时间请大家关注Q群} 时隔七年再次接触培训有关的事情,是兴奋,更多的是恐惧, ...

  3. .NET Core 小程序开发零基础系列(2)——小程序服务通知(模板消息)

    基于上一篇文件“.NET Core 小程序开发零基础系列(1)——开发者启用并校验牵手成功”的反映,个人觉得效果很不错,大家对公众号开发还是有很大需求的,同时也收到了很多同学的问题,后面我也会通过实战 ...

  4. Spring Boot微服务电商项目开发实战 --- 基础配置及搭建

    根据SpringBoot实现分布式微服务项目近两年的开发经验,今天决定开始做SpringBoot实现分布式微服务项目的系列文章,帮助其他正在使用或计划使用SringBoot开发的小伙伴们.本次系列文章 ...

  5. .NET Core 小程序开发零基础系列(1)——开发者启用并牵手成功

      最近几个月本人与团队一直与小程序打交道,对小程序的实战开发算比较熟悉,也因一些朋友经常问我各种小程序问题,无不能一一回答,想了很久,决定还是空余时间来写写文章吧,偶尔发现一个人安静的时候写文章特爽 ...

  6. [ASP.NET Core开发实战]基础篇03 中间件

    什么是中间件 中间件是一种装配到应用管道,以处理请求和响应的组件.每个中间件: 选择是否将请求传递到管道中的下一个中间件. 可在管道中的下一个中间件前后执行. ASP.NET Core请求管道包含一系 ...

  7. [ASP.NET Core开发实战]基础篇02 依赖注入

    ASP.NET Core的底层机制之一是依赖注入(DI)设计模式,因此要好好掌握依赖注入的用法. 什么是依赖注入 我们看一下下面的例子: public class MyDependency { pub ...

  8. [ASP.NET Core开发实战]基础篇01 Startup

    Startup,顾名思义,就是启动类,用于配置ASP.NET Core应用的服务和请求管道. Startup有两个主要作用: 通过ConfigureServices方法配置应用的服务.服务是一个提供应 ...

  9. [ASP.NET Core开发实战]基础篇06 配置

    配置,是应用程序很重要的组成部分,常常用于提供信息,像第三方应用登录钥匙.上传格式与大小限制等等. ASP.NET Core提供一系列配置提供程序读取配置文件或配置项信息. ASP.NET Core项 ...

随机推荐

  1. STL--list

    List-概述: 列表List是一个线性链表结构(Double—Linked Lists,双链表),它的数据由若干个节点构成,每一个节点都包括一个信息块Info(即实际存储的数据).一个前驱指针Pre ...

  2. redis数据库选择-select

    1.关于redis的select命令用法: SELECT index 切换到指定的数据库,数据库索引号 index 用数字值指定,以 0 作为起始索引值. 默认使用 0 号数据库. 可用版本: > ...

  3. retire or not retire ? is a question.

    corejava 上的一段代码 因吹思婷 "C:\Program Files\Java\jdk1.8.0_101\bin\java" -Didea.launcher.port=75 ...

  4. unique-substrings-in-wraparound-string(好)

    https://leetcode.com/problems/unique-substrings-in-wraparound-string/ 好,我自己做出来的.多总结规律,多思考. package c ...

  5. 反演dp经典

    咋一看,至少要用3^n才能做到. 但. 首先定义: 可以发现只要求出a' b' 那么直接可以得出c' 那么如何求a'呢 //dp求a',其实就是分别用[0,n)来更新a' ; i < n; i+ ...

  6. Java / JVM CPU 利用率高 - 诊断方法 1 - Thread Dump 结合 OS 诊断

    IBM AIX Java 1. topas 命令定位 CPU 使用高的进程,比如下面 PID 614852 Name            PID  CPU% java         614852  ...

  7. nosql简述

    1.NoSQL数据库概念 NoSQL数据库是非关系型数据库,主要是针对关系型数据库而言,它主要是用来解决半结构化数据和非机构化数据的存储问题. 2.为什么使用NoSQL数据库? (1)对数据库的高并发 ...

  8. Hbase之原子性插入

    /** * Created by similarface on 16/8/16. */ import java.io.IOException; import org.apache.hadoop.con ...

  9. Unix domain sockets

    #server: SERVER_PATH = "/tmp/python_unix_socket_server" def run_unix_domain_socket_server( ...

  10. STM8s窗口看门狗

    看看窗口看门狗的框图 从图里看出产生复位信号有2个方式: 1 WDGCR寄存器的T6 由1变0,也就是从此寄存器的值从0x40变成0x3F会产生复位信号: 2 当寄存器WDGCR的值大于WDGWR的时 ...