JAVA实用教程

本文介绍了JSP的基本语法,包括注释、声明、页面结构、表达式、指令、标准及自定义标签。特别讨论了forward、include、param和useBean等动作标记,用于请求转发、页面包含、参数传递和JavaBean的使用。

Java Web开发——第二章 JSP语法

一、JSP是什么?

JSP(Java Server Pages)是一种动态网页技术,它允许开发人员将Java代码嵌入到HTML页面中,以生成动态内容。JSP的语法相对简单,但它也有一些规则和限制,本文将介绍JSP的基本语法。

二、JSP语法

2.1 JSP注释

JSP注释用于在JSP页面中添加注释,可以通过以下方式添加注释:

代码如下(示例):

<%-- 这是注释 --%>

2.2 JSP声明

JSP声明用于在JSP页面中定义变量或方法,可以通过以下方式添加声明:

代码如下(示例):

<%!
  int x = 5;
  void myMethod() {
      // 方法体
  }
%>

2.3 JSP页面的基本结构

在JSP中,所有的代码都写在一个.jsp文件中,并且代码通常包含HTML、Java语句以及标签,所以你需要知道JSP页面的基本结构。以下是JSP页面的基本结构:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>

jsp页面内容...

</body>
</html>

其中,<%@ page %>是用来定义JSP页面的属性,比如使用的脚本语言、文档类型等等。<!DOCTYPE>是用来指定文档类型,和则是用来定义网页的头部。在里面,你可以将JSP代码与HTML标签一起使用以生成网页内容。

2.4 JSP表达式

JSP表达式用于在HTML页面中插入Java表达式的值,可以通过以下方式添加表达式:

<%= x %>

2.5 JSP指令

JSP指令用于在JSP页面中定义页面属性和指令,可以通过以下方式添加指令:

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

其中,language属性用于指定JSP页面使用的编程语言,contentType属性用于指定响应内容的MIME类型,pageEncoding属性用于指定页面的字符编码。

2.6 JSP标签

JSP标签是JSP页面中最常用的元素,用于生成动态内容。JSP标签可以分为两类:标准标签和自定义标签。

标准标签是JSP页面中内置的标签,用于生成常用的HTML元素和Java代码片段。例如,以下标签用于生成一个JavaBean的属性值:

<jsp:useBean id="myBean" class="com.example.MyBean" />
<jsp:getProperty name="myBean" property="myProperty" />

自定义标签是开发人员编写的标签,用于生成自定义的HTML元素和Java代码片段。例如,以下标签用于生成一个自定义的“Hello World”元素:

<mytag:helloWorld />

2.7JSP动作标记

除了JSP指令标记以外,JSP还包含一些占位符,被称为动作标记,它们被用于包含其他的内容和执行其他的任务。动作标记可以执行各种操作,如包含JSP页面、设置属性和转发请求。下面是常见的几种操作标记

2.7.1 forward动作标记

forward动作标记可用于转发请求至其他JSP页面或Servlet等。它使用了XML风格的语法<jsp:forward …>。例如:

<jsp:forward page="/examplePage.jsp">
  <jsp:param name="param1" value="value1"/>
</jsp:forward>

2.7.2 include动作标记

include动作标记与include指令标记非常相似,但是它使用了XML风格的语法<jsp:include …>。使用include动作标记,你可以在页面中包含其他JSP文件或Servlet等。例如:

<jsp : include page = "文件的URL"/>
 
   param子标记
 
  </jsp:include>

2.7.3 param动作标记

param动作标记常常与include动作标签一起使用,用于传递参数。例如:

<jsp:include page="header.jspf">
  <jsp:param name="param1" value="value1"/>
</jsp:include>

2.7.4 useBean动作标记

useBean动作标记用于实例化一个JavaBean,以便在JSP页面中使用。例如:

<jsp:useBean id="myBean" class="com.example.MyBean" />
<%
  myBean.setName("Tom");
  out.println(myBean.getName());
%>

三、总结

以上就是第二章的基本内容

关于Java编程语言的实用教程资源,以下是一些推荐,这些资源涵盖了基础到高级的主题,适合不同层次的学习者: ### 推荐资源 1. **《Java 2实用教程(第五版)》** 这本书共分15章,详细介绍了Java的基本数据类型、运算符、表达式和语句、类与对象、子类与继承、接口与实现、内部类与异常类、常用实用类、组件及事件处理、输入/输出流、JDBC与MySQL数据库、Java多线程机制、Java网络编程、图形、图像与音频、泛型与集合框架等内容。本书适合高等院校相关专业的学生作为教材使用,也可供自学者和软件开发人员参考[^1]。 2. **《Effective Java》(Joshua Bloch著)** 这本书是Java领域的经典之作,适合有一定Java基础的开发者。书中详细介绍了Java的最佳实践和设计模式,涵盖了Java 7及更高版本的新特性。对于提高代码质量和编写高效、可维护的Java代码非常有帮助。 3. **《Java Concurrency in Practice》(Brian Goetz等著)** 如果你对Java多线程机制感兴趣,这本书是必读之作。它深入探讨了Java并发编程的核心概念、工具和技术,适合中高级Java开发者。 4. **《Head First Java》(Kathy Sierra & Bert Bates著)** 这本书以轻松易懂的方式介绍了Java的基础知识,非常适合初学者。书中通过大量的图表和互动练习,帮助读者快速掌握Java编程的核心概念。 5. **《Java: A Beginner's Guide》(Herbert Schildt著)** 这本书是另一本适合初学者的Java入门书籍。书中详细介绍了Java的基本语法、面向对象编程、异常处理、文件I/O、多线程等内容,并配有丰富的示例代码。 6. **在线资源** - **Oracle官方文档**:Oracle提供了详细的Java文档,包括Java SE、Java EE和Java ME的API参考文档。这些文档是学习Java标准库和框架的权威资源。 - **Java Code Geeks**:这是一个提供Java教程、代码示例和最佳实践的网站,适合不同层次的开发者。 - **Baeldung**:这个网站提供了大量关于Spring框架、Java核心编程和现代Java特性的教程,适合中高级开发者。 - **YouTube上的Java教程**:如“Java Programming Tutorial”系列,适合喜欢视频学习的用户。 ### 示例代码:Java多线程示例 以下是一个简单的Java多线程示例,展示了如何创建和启动一个线程: ```java public class MyThread extends Thread { @Override public void run() { System.out.println("线程正在运行..."); } public static void main(String[] args) { MyThread thread = new MyThread(); thread.start(); } } ``` ### 示例代码:Java网络编程示例 以下是一个简单的Java网络编程示例,展示了如何通过Socket连接服务器并发送数据: ```java import java.io.*; import java.net.*; public class Client { public static void main(String[] args) { try { Socket socket = new Socket("localhost", 8080); OutputStream output = socket.getOutputStream(); PrintWriter writer = new PrintWriter(output, true); writer.println("Hello Server!"); socket.close(); } catch (IOException e) { e.printStackTrace(); } } } ``` ###
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值