J2EE学习笔记.doc
需积分: 0 88 浏览量
更新于2009-01-07
收藏 375KB DOC 举报
### J2EE学习笔记知识点详解
#### 一、概述
J2EE(Java 2 Platform, Enterprise Edition)是Sun Microsystems公司推出的一种企业级Java平台,主要用于构建可伸缩且易于维护的企业级应用。本文档主要提供了Java的学习历程,以及学习过程中的一些心得和问题解决方法,旨在为初学者和进阶用户提供一个快速入门的指南。
#### 二、J2EE基础知识
##### 1. J2EE模式 - Value Object (值对象)
- **定义**:值对象是一种专门用来承载数据的Java对象,用于在不同的对象或层之间传递数据。
- **特性**:通常不包含任何业务逻辑方法;可能设计有公共属性或提供获取属性值的get方法。
##### 2. JSP (Java Server Pages)
- **定义**:JSP是一种动态网页技术标准,用于创建交互式的Web页面。
- **组成部分**:
- **Directive (指令)**:用于向JSP页面添加配置信息。
- **Scripting (脚本)**:用于编写Java代码片段。
- **Action (动作)**:用于执行特定的操作。
- **Template data**:页面中的静态HTML内容。
#### 三、JSP指令与脚本详解
##### 1. Directive (指令)
- **page指令**:定义页面的基本设置,如编码、错误处理等。
- **include指令**:指定要包含的文件。
- **taglib指令**:指定自定义标签库的位置。
**示例**:
```jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ include file="header.jsp" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
```
##### 2. Scripting (脚本)
- **Declaration (<%!%>)**:声明变量或方法。
- **Scriptlet (<% %> 或 <%! %> 或 <%= %>)**:嵌入Java代码。
- **Expression (<%= %> )**:输出表达式的值。
**示例**:
```jsp
<%!
int num = 10;
public String getName() {
return "John Doe";
}
%>
<%
int x = 5;
String name = getName();
%>
<h1>Name: <%= name %></h1>
<p>Number: <%= x + num %></p>
```
##### 3. Action (动作)
- **jsp:useBean**:用于实例化JavaBean。
- **jsp:setProperty**:设置JavaBean的属性值。
- **jsp:getProperty**:获取JavaBean的属性值。
- **jsp:param**:传递参数。
- **jsp:include**:包含其他页面。
- **jsp:forward**:页面跳转。
- **jsp:plugin**:嵌入Applet或JavaFX组件。
**示例**:
```jsp
<jsp:useBean id="user" class="com.example.User" scope="session" />
<jsp:setProperty name="user" property="name" value="Alice" />
<jsp:getProperty name="user" property="name" />
<jsp:forward page="welcome.jsp" />
```
#### 四、请求控制器结构
- **定义**:请求控制器是一种设计模式,用于集中处理所有来自客户端的请求。
- **用途**:创建可维护的JSP系统。
- **特点**:不是在JSP中处理业务逻辑,而是放在Java类中。
- **命名模式**:`xxxController.jsp` 和 `xxxRequestController`
#### 五、JSP中的JavaBean
- **页面Bean**:每个JSP页面关联一个Bean,用于处理该页面的数据。
- **会话Bean**:用于管理用户会话的状态。
- **应用Bean**:在整个应用范围内共享的数据。
#### 六、自定义标签库
- **定义**:包含一系列自定义标签及其处理逻辑。
- **组成部分**:
- **标记库描述符 (TLD)**:描述标签库的元数据。
- **Java类**:实现自定义标签的功能。
**示例**:
```jsp
<tld:taglib uri="/exampleTags" shortName="example">
<tld:tag class="com.example.MyTag" name="helloWorld">
<tld:attribute name="message" required="true" />
</tld:tag>
</tld:taglib>
```
#### 七、Servlet基础
- **ServletConfig**:初始化Servlet时由容器传递的对象,包含配置信息。
- **ServletContext**:封装Web应用程序的上下文。
#### 八、会话跟踪机制
- **Session**:用于跨多个请求之间保持状态。
- **Cookie**:用于在客户端存储信息。
- **URL重写**:通过修改URL来维持会话ID。
**示例**:
```java
// 创建Cookie
Cookie cookie = new Cookie("name", "value");
cookie.setMaxAge(60 * 60); // 设置生存时间(秒)
response.addCookie(cookie);
// URL重写
String encodedUrl = response.encodeURL("sessionExample");
```
通过上述知识点的详细介绍,我们不仅了解了J2EE的基本概念和技术栈,还深入学习了JSP、Servlet、会话管理和自定义标签等核心技术,这些都为学习和开发基于J2EE的应用奠定了坚实的基础。

wuhailin2005
- 粉丝: 21
最新资源
- 新时代高职生网络生活状况研究.docx
- 基于改进粒子群优化算法的 BP 神经网络房价预测研究
- 人工智能写作会不会抢了电竞媒体的饭碗?.docx
- 单片机与PC机的温控制系统硬件设计.doc
- 基于51单片机ds1302和ds18b20芯片方案设计书的电子日历.doc
- ASPnet管理开题.doc
- 电子商务专业个人简历-范例.doc
- 2015最新Excel甘特图模板项目管理必备.xls
- 单片机测控系统中的抗干扰技术.doc
- (源码)基于C++的Alexa Voice Service原型.zip
- 基于单片机的水箱温自动控制系统设计张强.doc
- Go编程语言全面指南
- 大数据-资本市场下一波的宠儿.docx
- 谈供电局配网自动化的研究与实现.docx
- 基于词典与机器学习的中文微博情感分析.docx
- 基因工程制药下游技术生物学自然科学专业资料.ppt