什么是 JavaWeb?

如何开发 JavaWeb?

  • ①同之前一样,用 eclipse 开发普通 Java 项目的方式创建第一个 JavaWeb 项目并发布到 Tomcat 服务器。
  • ②用 JavaEE 版的 eclipse 创建第一个动态的 JavaWeb 工程。

1. JavaWeb 概述

  JavaWeb 应用是由一组 Servlet、HTML 页面、Java 类以及其它可以被绑定的资源构成的,它可以运行在各种供应商提供的实现了 Servlet 规范的 Servlet 容器中。

由此,JavaWeb 应用中可以包含:

— Servlet

— JSP

— 实用类

— 静态文档,如HTML、图片、CSS、JS等

— 描述 Web 应用的信息(web.xml)

JavaWeb 目录结构:

JavaWeb1-1.1


在此,先统一 eclipse 的所有文件的编码解码格式,一般统一为 UTF-8 即可。

请看教程示例 Eclipse 修改字符集


2.手动创建 JavaWeb 应用

经典版的 Eclipse:Eclipse 的每个安装包都不同, Java 开发人员通常使用 Eclipse IDE for Java Developers 来开发 Java 应用。安装 Eclipse 之前必须做好 Java开发环境配置

用经典版的 eclipse 开发普通 Java 项目的方式创建第一个 JavaWeb 项目并发布到Tomcat服务器

①创建 Java 项目

右键新建一个 Java 项目,按照 Servlet 定义的 JavaWeb 目录结构,创建对应目录。

JavaWeb1-1.2

web.xml:

1
2
3
4
5
6
7
8
9
10
11
12
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
<display-name>test</display-name><!--注意:这里要为Web项目名称-->
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
</web-app>

index.jsp:

1
2
3
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
Hello

②配置Build Path

在 JavaWeb 目录结构中要求:JavaWeb 应用的类文件必须存放在 /WEB-INF/classes 目录下。

因此,需要将当前 Java 项目 src 的源码输出文件夹改为 /WEB-INF/classes。

  在项目上右键单击,依次 选择 Build Path → Config Build Path

JavaWeb1-1.3

  之后将 src 的源码输出文件夹 修改即可。

JavaWeb1-1.4

  之后在 src 下创建一个 Java 类(Test.java)。

Test.java:

1
2
3
4
5
public class Test{
public String getTestInfo(){
return "Testing......";
}
}

  修改 index.jsp:

1
2
3
4
5
6
7
8
<%@ page import="test.Test"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
Hello
<%
Test test = new Test();
System.out.println(test.getTestInfo());
%>

③部署到 tomcat

这里说两种部署方法:

  • ①最简单的方法,把 WebContent 目录复制到 Tomcat 的 webapps 目录下,并改名为:test,重启 tomcat 后访问 localhost:8080/test/index.jsp 即可。浏览器会输出:Hello。控制台会输出:Testing…
  • ②通过配置,映射任意目录下的 WEB 应用,实现后,重启 tomcat 后访问 localhost:8080/test/index.jsp 即可。浏览器会输出:Hello。控制台会输出:Testing…

  先在 Tomcat 根目录中,conf 目录下依次创建 catalina/localhost 目录,然后在 localhost 目录下为 test
这个 Web 应用程序建立 test.xml 文件。

test.xml:

1
2
3
4
5
6
7
8
<?xml version="1.0" encoding="UTF-8"?>
<Context
path="/hello"
docBase="E:\\Java\\Source\\test\\WebContent"
reloadable="true"/>
<!--path 不起作用-->
<!--docBase 为创建的 JavaWeb 应用的 WebContent的真实物理路径-->
<!--注意写路径时的转义字符-->

reloadable:当修改了 docBase 指向的目录下的 class 文件时, tomcat 服务器是否重新加载 web 应用。


3.创建动态的 JavaWeb 工程

JavaEE 版的 Eclipse 下载

下载之后,将压缩文件解压,和原来安装的 Eclipse 合并即可。Ctrl+C、Ctrl+V,选择全部覆盖。

请看教程示例 Eclipse 修改字符集

①将 Eclipse 切换到 JavaEE 模式

点击如图中的图标即可切换,没有的点击“打开透视图”查找即可。

若查找不到,就是你的 Eclipse 没有安装 JavaEE 开发的系列插件。

JavaWeb1-1.5

②打开包资源管理器

JavaEE 默认使用的是 Project Explorer(项目资源管理器),这里我用惯了 包资源管理器。

依次点击 Window → Show View → Other,打开要显示的视图。

找到 Java → Package Explorer 即可打开 包资源管理器。

JavaWeb1-1.6

③新建一个 Server

按照②的方法,打开 Servers 视图。

之后右键单击,依次点击 New → Server,新建一个 Server。

JavaWeb1-1.7

选择新建的 Tomcat 的版本,host name、Server name 默认即可。

之后添加 Server 的运行时环境,点击 Add,添加 Tomcat Server,选择自己电脑上安装的 Tomcat,确定即可。

JavaWeb1-1.8

④新建一个 Dynamic Web Project

在包管理器中,右键单击,New → Dynamic Web Project。

这里注意,一定不要新建 Static Web Project,若找不到新建的动态 Web 工程,点击 Other 寻找即可。

输入项目名,选择运行环境(就是刚才新建的 Server 的 Apache Tomcat 版本,默认即可),选择动态 Web 应用版本,Next → Next,别急着点 Finish,最后一步一定要选择 Generate web.xml deployment descriptor。

JavaWeb1-1.9

JavaWeb1-1.10

⑤测试

新建一个 Test 类,index.jsp 文件如图。

Eclipse 快捷键:Alt+/ 代码提示,Ctrl+Shift+O 自动导包,Ctrl+/ 代码注释。

JavaWeb1-1.11

Test.java:

1
2
3
4
5
6
7
package com.crd.test;

public class Test {
public String getTestInfo() {
return "testings......";
}
}

index.jsp:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<%@page import="com.crd.test.Test"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!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=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
Test test = new Test();
System.out.println(test.getTestInfo());
%>
</body>
</html>

之后,在 index.jsp 文件上,右键单击 → Run AS → Run On Server,即可成功运行。

打开 Console(控制台)视图,同步骤②。

JavaWeb1-1.12

JavaWeb1-1.13


评论