@TOC
提示:以下是本篇文章正文内容,下面案例可供参考
一、JavaWeb的应用概念
Java Web,是用Java技术来解决相关web互联网领域的技术栈。
Java Web应用中可以包括一下内容:
1.Servlet
2.JSP
3.实用类
4.静态文档如HTML,图片等
5.描述Web应用的信息
Servlet与Servlet容器
Servlet仅仅是一个普通的java接口。
package javax.servlet;
import java.io.IOException;
public interface Servlet {
// 初始化方法
void init(ServletConfig var1) throws ServletException;
// 包含一个ServletConfig
ServletConfig getServletConfig();
// 运行方法
void service(ServletRequest var1, ServletResponse var2) throws ServletException, IOException;
String getServletInfo();
void destroy();
}
Servlet类是javaweb应用的基础。javaweb应用中浏览器发出的请求,在java程序中就是通过Servlet接收的。
Servlet容器的概念
Servlet 容器就是 Servlet 代码的运行环境(运行时),它除了实现 Servlet 规范定义的各种接口和类,为 Servlet 的运行提供底层支持,还需要管理由用户编写的 Servlet 类,比如实例化类(创建对象)、调用方法、销毁类等。
目前最流行的Servlet容器包括
Tomcat
Resin
J2EE服务器
Servlet接口中定义了以下5个方法
void init(ServletConfig config) throws ServletException;
void service(ServletRequest req, ServletResponse res) throws ServletException, IOException;
void destroy();
String getServletInfo();
ServletConfig getServletConfig();
1.init,当且仅当该Servlet第一次被请求时,Servlet容器会调用这个方法,我们可以用这个方法完成一些初始化工作。
2.service,每当请求该Servlet时,Servlet容器就会调用这个方法。此方法接受用户的请求对象,执行业务操作,利用响应对象响应用户请求。
3.destroy,当容器监测到一个Servlet从服务中被移除时,容器调用该方法,释放资源。
4.getServletInfo,该方法会返回Servlet的描述信息,我们可以用它返回有用或为null的任意字符串。
5.getServletConfig,这个方法会返回由Servlet容器传给init方法的ServletConfig对象。
二.Web的程序结构
工程结构图:
创建一个简单的web程序结构
WebContent:包含了支持WEB程序的能够运行的class文件、包文件、JSP文件、配置文件等。
WEB-INF:存放WEb应用程序的部署文件web.xml。
classes:存放了基本类,Servlet文件,Dao文件等工程有关的类文件。对源文件编译后的.class文件都存放在这里。
lib:存放WEB应用程序所需要用到的jar文件,一般工程所需要的其他包都放在lib下。
HelloWorld
创建类Hello
public class Hello {
public String sayHello(){
return "HelloWorld";
}
}
在WebContent下创建hello.jsp
<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>My JSP 'index.jsp' starting page</title>
</head>
<body>
<%
Hello hello = new Hello();
System.out.print(Hello.sayHello());
%>
</body>
</html>
将编译完成后的放置classes下
将整个WebContent文件复制到tomcat(此处用的是Tomcat6.0)下的webapps下。可以对其重命名,此处将WebContent重命名为HelloWorld。
可以在浏览器地址栏访问hello.jsp,路径为http://localhost:8080/HelloWorld/hello.jsp每每访问该路径,控制台便可打印出HelloWorld