一文学会JSP
构建Web应用
这里使用IDEA构建Web应用
新建项目
选择Filsh
其自动生成的Web.XML文件如下
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0"> </web-app>
同时还生成了一个jsp文件,生成的jsp文件如下
<%-- Created by IntelliJ IDEA. User: Administrator Date: 2020/7/5 Time: 22:39 To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>$Title$</title> </head> <body> $END$ </body> </html>
配置应用首页
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" version="4.0"> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app>
启动应用
启动相关的应用
jsp的基本语法
jsp的注释
jsp的基本注释如下
<%-- Created by IntelliJ IDEA. User: Administrator Date: 2020/7/5 Time: 22:39 To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>$Title$</title> </head> <body> <%-- 注释内容 --%> $END$ </body> </html>
jsp 声明
对jsp的声明如下
<%-- Created by IntelliJ IDEA. User: Administrator Date: 2020/7/5 Time: 22:39 To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>$Title$</title> </head> <body> <%! // 声明一个整形变量 public int count; // 声明一个方法 public String info(){ return "hello"; } %> $END$ <% // 把count值输出后加1 out.println(count++); %> <% // 输出info()方法后的返回值 out.println(info()); %> </body> </html>
访问的页面结果如下
jsp 输出表达式
jsp提供了一种简单的输出表达式
<%-- Created by IntelliJ IDEA. User: Administrator Date: 2020/7/5 Time: 22:39 To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>$Title$</title> </head> <body> <%! // 声明一个整形变量 public int count; // 声明一个方法 public String info(){ return "hello"; } %> $END$ `<%=count++%> <%=info()%> </body> </html>
jsp 三个编译指令
这里对jsp有三个编译的指令
page 指令
page指令位于jsp页面的顶端,一个jsp页面可以有多个page指令,page指令的语法为
<%@ page import="java.sql.*" %>
include指令
include指令可以将一个外部文件嵌入到当前jsp文件中,同时解析这个页面中的jsp语句。include命令既可以包含jsp页面也可以包含静态文本。编译指令语法如下:
<%@ include file="要导入的jsp页面或文本文件" %>
taglib指令
taglib指令用于引入一些特定的标签库,语法格式:
<%@ taglib prefix="tagPrefix" uri="tagLibraryURI" %>
如使用struts标签库:
<%@ taglib prefix="s" taglib="/struts-tags" %>
动作指令
forward
进行页面跳转的指令
如果转发的时候需要传递参数可以使用指令进行设置。
比如,访问index.jsp页面时自动转发至login.jsp,需要把username和password传递过去:
index.jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <jsp:forward page="login.jsp"> <jsp:param value="yaopan" name="username" /> <jsp:param value="123456" name="password" /> </jsp:forward> <%--mac上按住comment键(windows下按住ctrl键),再点击login.jsp forword以下的代码不会被执行 --%>
在login.jsp中可以使用getParameter方法获取传入的参数值:
<% String name=request.getParameter("username"); String pwd=request.getParameter("password"); out.println(name); out.println("<br>"); out.println(pwd); %>
执行forword指令时用户请求的地址没有发生变化,页面内容被forward目标替代。
include指令
include指令用于包含某个页面,但不会导入被include页面的编译指令。可以通过param指令传递参数:
新建一个index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <jsp:include page="head.html"></jsp:include> <jsp:include page="body.jsp"> <jsp:param value="#1d99f6" name="bgcolor"/> </jsp:include> </html>
body.jsp
<body bgcolor="<%=request.getParameter("bgcolor")%>"> </body>

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Flink 最佳搭档:开发部署平台 Zeppelin 的自白
Flink 的学习者或者爱好者想必十分了解,除了需要熟悉 Flink 本身之外,如果能有一款简单上手的 Flink 开发部署工具,不用写前端代码就能实现实时大屏、支持全部语言接口、支持多条 SQL,还能管理 Flink Job,这样的开发部署平台是不是完全无法拒绝? 很幸运,Apache 社区就有这么一款工具:Zeppelin,而且可能是开源界最好的 Flink 开发平台。 下面是 Zeppelin 和 Flink 的故事。 Zeppelin:Flink 最佳搭档 Flink:我提供了 SQL、Java、Scala 还有 Python 等多种语言支持,不过每种语言都有自己的入口,多种语言混着用暂时无法实现。比如在 sql-client 中只能运行 SQL,不能写 UDF,在 Pyflink shell 里,只能用 Python 的 UDF,不能写和用 scala 和 java 的 UDF。有没有谁能帮我把这些语言全部打通? Zeppelin:我可以! Flink:我的一个很大的使用场景是实时大屏,但是我一个人办不到,往往需要借助第三方存储,还需要前端开发,有没有谁能让用户不用写前端代码...
- 下一篇
一篇文章教会你如何将DOM转换为virtual DOM
【一、Virtual DOM简介】 Virtual DOM是虚拟节点,它通过Javascript的Object对象模拟DOM中的节点,然后通过特定的render方法将其渲染成真实的DOM节点。 浏览器在处理DOM时,总会附加很多属性,这会使得每一次数据更新,渲染很慢。 Virtual DOM利用Javascript做了中间层,Javascript记录状态,将每一次状态中的变化同步到视图中。 【二、virtual DOM的优点】 保证性能下限,以及跨平台。 无需手动操作DOM,只需要写好 View-Model 的代码逻辑,框架会根据虚拟DOM和数据双向绑定,帮我们以可预期的方式更新视图,极大提高我们的开发效率。 虚拟DOM的核心思想是:对复杂的文档DOM结构,提供一种方便的工具,进行最小化的DOM操作,这句话,也许过于抽象,却基本概况了虚拟DOM的设计思想。 【三、项目实施】 首先我们来简单的模拟vue是如何生成虚拟DOM的,超简版!!! 是否有点眼熟呢!没错,在使用Vue搭建的脚手架里面的main.js文件里面包含了这个代码块,接下来我们需要对我们new出来的Vue对象进行处理。 我们...
相关文章
文章评论
共有0条评论来说两句吧...