jsp基础语法与指令

关于jsp

JSP 与 PHP、ASP、ASP.NET 等语言类似,运行在服务端的计算机语言。

JSP(全称JavaServer Pages)是由Sun Microsystems公司主导创建的一种动态网页技术标准。JSP部署于网络服务器上,可以响应客户端发送的请求,并根据请求内容动态地生成HTML、XML或其他格式文档的Web网页,然后返回给请求者。JSP技术以Java语言作为脚本语言,为用户的HTTP请求提供服务,并能与服务器上的其它Java程序共同处理复杂的业务需求。

简单来说,根据jsp的全称java server pages可以看出,jsp是java的一个分支,它是面向网站编程的。可以像servlet一样,实现动态网站。在jsp中,既可以编写html代码,也可以编写java代码,并且:

  • 如果是java代码,则原封不动地输出;

  • 如果是HTML代码,就将其转换成out.write("<html> ");这样的格式来输出前端,不过这个过程无需手动完成。

我的第一个jsp程序

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>MyFirst</title>
</head>
<body>
<%
    out.println("Hello World!");    //java语言
%>
<h1>Hello world !</h1>              //HTML语言
</body>
</html>

简单总结:

  • JSP全称Java Server Pages,是一种动态网页开发技术。它使用JSP标签在HTML网页中插入Java代码。标签通常以<%开头以%>结束。

  • JSP是一种Java servlet,主要用于实现Java web应用程序的用户界面部分。网页开发者们通过结合HTML代码、XHTML代码、XML元素以及嵌入JSP操作和命令来编写JSP。

  • JSP通过网页表单获取用户输入数据、访问数据库及其他数据源,然后动态地创建网页。

  • JSP标签有多种功能,比如访问数据库、记录用户选择信息、访问JavaBeans组件等,还可以在不同的网页中传递控制信息和共享信息。

总而言之:jsp以java语言为基础构造动态网站!

jsp的基础依赖包

<dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.11</version>
      <scope>test</scope>
    </dependency>
    <!--Servlet依赖-->
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>servlet-api</artifactId>
      <version>2.5</version>
    </dependency>
    <!--jsp依赖-->
    <dependency>
      <groupId>javax.servlet.jsp</groupId>
      <artifactId>jsp-api</artifactId>
      <version>2.2.1-b03</version>
    </dependency>
    <!--jstl表达式的依赖-->
    <dependency>
      <groupId>javax.servlet.jsp.jstl</groupId>
      <artifactId>jstl</artifactId>
      <version>1.2</version>
    </dependency>
    <!--jstl需要用到的standard标签库-->
    <dependency>
      <groupId>taglibs</groupId>
      <artifactId>standard</artifactId>
      <version>1.1.2</version>
    </dependency>
  </dependencies>

jsp的基础语法

PS:任何语言都有自己的基础语法,jsp作为java的一种应用,它有自己的一些扩充语法,并且支持JAVA语言的所有语法。

注释:
<%--这是jsp的注释--%>    //不会在网站中现实
<!--这是HTML的注释-->    //网站源码中会显示
jsp表达式:
<%--jsp表达式--%>
<%--作用:用来将程序的输出输出到客户端中--%>
<%= new java.util.Date()%>
jsp脚本片段:
<%--jsp脚本片段--%>
<%
    int sum=0;
    for (int i = 0; i <= 100; i++) {
        sum+=i;
    }
    out.println("<h1>Sum="+sum+"</h1>");
%>
jsp脚本片段的再实现:
<%
    for (int i = 0; i < 10; i++) {
%>
   <h1>Hello,Hayden-wong.<%=i%></h1>    //重复输出本行内容(10次)
<%
    }
%>
jsp声明:
<%!
    static {
        System.out.println("loading...");
    }
    public void fun(){
        System.out.println("本方法已被调用!");
    }
%>

PS: jsp声明的代码会被编译到java类中,而其他的会被编译到_JspService方法中;即:jsp声明的是全局的,其他的是局部的!

jsp指令

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>jsp3</title>
</head>
<body>
        <%--include会将几个页面合起来,本质上是一个界面--%>
<%@include file="header.jsp"%>
<h1>MAIN</h1>
<%@include file="footer.jsp"%><hr>
        <%--jsp标签--%>
        <%--page是一种拼接,本质上还是几个页面!!!推荐使用,灵活性更高--%>
<jsp:include page="header.jsp"/>
<h1>main</h1>
<jsp:include page="footer.jsp"/></body>
</html>
​
​
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<h1>THIS IS A HEADER</h1>
​
​
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<h1>THIS IS A FOOTER</h1>

 

原文地址:https://www.cnblogs.com/awong18/p/13284378.html