JSP技术入门指南【一】利用IDEA从零开始搭建你的第一个JSP系统

JSP技术入门指南【一】利用IDEA从零开始搭建你的第一个JSP系统

Jsp技术入门指南【一】利用IDEA从零开始搭建你的第一个JSP系统


前言

  • 在前面的内容中,我们已经系统学习了 Web 开发的基础技术:从构建网页骨架的 HTML、美化页面的 CSS,到实现服务器端逻辑的 Java Servlet
  • 这些知识为我们打开了动态 Web 开发的大门,让我们能够通过 Servlet 处理客户端请求、操作数据库并返回动态数据。
  • 然而,在 Servlet 中直接拼接 HTML 代码实现页面渲染时,代码往往显得繁琐且难以维护 —— 有没有一种更简洁、更直观的方式,让开发者既能保留 Java 的强大逻辑处理能力,又能像编写 HTML 一样轻松组织页面结构?

JSP(JavaServer Pages)正是为解决这一问题而生

在这里插入图片描述
我的个人主页,欢迎来阅读我的其他文章
https://blog.ZEEKLOG.net/2402_83322742?spm=1011.2415.3001.5343
我的JSP知识文章专栏
欢迎来阅读指出不足
https://blog.ZEEKLOG.net/2402_83322742/category_12950980.html?spm=1001.2014.3001.5482
我的java-servlet知识文章专栏
欢迎来阅读指出不足
https://blog.ZEEKLOG.net/2402_83322742/category_12907265.html?spm=1001.2014.3001.5482

一、什么是JSP

  • JSP(Java Server Pages)是一种基于Java的服务器端技术,用于创建动态网页。
  • 它的本质是Servlet,但相比Servlet,JSP更加简洁易用,更适合开发动态页面。

1.1 JSP是干什么的?

  • JSP主要用于动态渲染页面。
  • 在传统的HTML页面中,内容是静态的,每次访问页面时,显示的内容都不会改变
  • 而JSP页面可以结合Java代码,根据用户的请求动态生成HTML内容

下面我们来看一些代码,后面会详细讲这些代码

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPEhtml><html><head><metacharset="UTF-8"><title>动态问候语</title></head><body> <% java.util.Calendar cal = java.util.Calendar.getInstance(); int hour = cal.get(java.util.Calendar.HOUR_OF_DAY); String greeting; if (hour >= 6 && hour < 12) { greeting = "早上好!"; } else if (hour >= 12 && hour < 18) { greeting = "下午好!"; } else { greeting = "晚上好!"; } %> <h1><%= greeting %></h1></body></html>

运行结果

在这里插入图片描述

1.2 JSP与Servlet的关系是什么?

  • JSP可以看作是Servlet的扩展。
  • Servlet是一个运行在服务器端的Java程序,用于处理客户端的请求并返回响应
  • JSP页面在运行时会被转换成Servlet代码,然后由Servlet容器(如Tomcat)执行。
  • 这意味着JSP继承了Servlet的强大功能,同时提供了更简洁的语法,让开发者可以更方便地编写动态页面。

二、在Idea中创建第一个JSP系统

在开始前我们需要安装好IDEA以及java-web的环境

接着,右键单击test,找到模板设置

在这里插入图片描述

首先在右上角SE3文件里创建maven模板

在这里插入图片描述


在这里插入图片描述

构建好之后,下面我们将开始构造第一个JSP文件

在这里插入图片描述
在这里插入图片描述
  • 导入里面的库文件,然后应用,确定

找到web文件,新建jsp界面

在这里插入图片描述

继续创建在web下创建lib文件

在这里插入图片描述


在这里插入图片描述

然后在工件里找到web展开型,单击元模块,把test添加进去

在这里插入图片描述


在这里插入图片描述

找到test,添加web项目

在这里插入图片描述


在这里插入图片描述
在这里插入图片描述
  • 然后,输入我们的第一个jsp代码,hello jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPEhtml><html><head><metacharset="UTF-8"><title>Hello JSP</title></head><body><h1>Hello JSP</h1></body></html>

最后运行

在这里插入图片描述

然后,在上面的编辑设置里,部署我们的test工件

在这里插入图片描述


在这里插入图片描述


在这里插入图片描述

这就是我们的第一个jsp系统

三、JSP和HTML的差别

3.1 格式区别

HTML是一种静态标记语言,用于定义网页的结构和内容。它的文件扩展名是.html,内容主要是HTML标签,例如<h1><p><div>等。HTML文件的内容是固定的,每次加载页面时都不会改变。

<!DOCTYPEhtml><html><head><title>Hello, HTML</title></head><body><h1>Hello, HTML</h1></body></html>

JSP文件的扩展名是.jsp,它可以在HTML代码中嵌入Java代码。JSP页面的结构与HTML类似,但可以通过<% %><%= %>等标签嵌入Java代码,实现动态内容的生成。例如:

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPEhtml><html><head><metacharset="UTF-8"><title>Hello JSP</title></head><body><h1>Hello JSP</h1></body></html>

3.2 注释区别

  • HTML注释:HTML注释使用<!---->包裹,例如<!-- 这是一个HTML注释 -->。HTML注释不会被浏览器解析,也不会显示在页面上。
  • JSP注释:JSP注释分为两种:
    • HTML注释:在JSP文件中,HTML注释的作用与HTML文件中相同,不会被浏览器解析。
    • JSP注释:使用<%----%>包裹,例如<%-- 这是一个JSP注释 --%>。JSP注释不会被发送到客户端,只在服务器端可见,用于注释Java代码。

以上就是这篇博客的全部内容,下一篇我们将继续探索JSP的更多精彩内容。

我的个人主页,欢迎来阅读我的其他文章
https://blog.ZEEKLOG.net/2402_83322742?spm=1011.2415.3001.5343
我的JSP知识文章专栏
欢迎来阅读指出不足
https://blog.ZEEKLOG.net/2402_83322742/category_12950980.html?spm=1001.2014.3001.5482
我的java-servlet知识文章专栏
欢迎来阅读指出不足
https://blog.ZEEKLOG.net/2402_83322742/category_12907265.html?spm=1001.2014.3001.5482
我的HTML专栏
欢迎来阅读指出不足
https://blog.ZEEKLOG.net/2402_83322742/category_12834817.html?spm=1001.2014.3001.5482
非常感谢您的阅读,喜欢的话记得三连哦
在这里插入图片描述

Read more

ClawdBot镜像免配置:docker-compose一键启动多语言机器人教程

ClawdBot镜像免配置:docker-compose一键启动多语言机器人教程 你是否试过在本地搭一个真正能用的AI助手,结果卡在环境配置、模型下载、API密钥、端口冲突上,折腾半天连首页都打不开?ClawdBot不是又一个需要你手动编译、改配置、调依赖的“半成品项目”。它是一套开箱即用的个人AI工作流系统——后端由vLLM驱动,前端带可视化控制台,所有服务打包进一个轻量镜像,一条docker-compose up -d命令,5分钟内就能拥有自己的多语言智能机器人。 更关键的是,它不只做聊天。当你把ClawdBot和MoltBot组合起来,就诞生了一个真正落地的Telegram全能翻译官:语音发过去自动转文字再翻译,截图发进来立刻OCR识别+多语种输出,群聊里@一下就能实时互译,顺手还能查天气、换汇率、搜维基。整个流程全部离线运行、零额外费用、不上传任何数据——你的消息永远留在你自己的设备里。 这不是概念演示,而是已经跑在树莓派4、MacBook M1、甚至老旧笔记本上的真实方案。本文不讲原理、不堆参数,只带你一步步从空白系统开始,用最自然的方式完成部署、验证、调优和日常使用。

By Ne0inhk
零代码上手!用 Rokid 灵珠平台,5 步搭建专属旅游 AR 智能体

零代码上手!用 Rokid 灵珠平台,5 步搭建专属旅游 AR 智能体

零代码上手!用 Rokid 灵珠平台,5 步搭建专属旅游 AR 智能体 灵珠平台简介 okid 自研 AI 开发平台,基于多模态大模型与轻量化架构,打造零门槛、全栈化 AI 开发体系。平台提供可视化编排、预置能力组件,支持原型到云端、端侧一站式敏捷部署,并深度适配 Rokid Glasses 智能眼镜,通过专属硬件接口与低功耗优化,实现 AI 应用高效端侧落地,助力开发者快速打造视觉识别、语音交互等穿戴式 AI 应用,拓展 AI + 物理世界的交互边界可视化编排工具,拖拽式快速搭建应用预置丰富能力组件库,涵盖对话引擎、视觉识别等核心模块支持从原型设计到云端、端侧的一站式敏捷部署提供设备专属适配接口,实现硬件深度协同搭载低功耗运行优化方案,保障端侧持久稳定运行 实战:搭建旅游类AR智能体 1、进入灵珠平台 登录灵珠平台后,你将看到简洁直观的工作台界面 点击创建智能体按钮,

By Ne0inhk

教你一步步在 服务器/本地(Linux/Windows) 部署鸣潮QQ机器人,并将其接入大语言模型,实现通过机器人进行库街区签到、练度查询、攻略查询等功能 (1)

准备工作 一台轻量级服务器/ 本地windows/linux能够在服务器/本地 科学上网 环境部署 笔者所演示的环境为阿里云服务器(2核CPU,2GIB内存,40GIB系统盘),操作系统为 Ubuntu 24.04. 确保已成功安装Python环境(版本须>3.8, 建议>=3.12,不建议>=3.13) 确保已成功安装git 如果你没有安装git且的系统是ubuntu,安装git只需要输入 如果系统为Windows,则自行前往 🔗官网 下载安装包安装即可 创建虚拟环境 从 Python 3.11 开始,Debian 和 Ubuntu 默认启用了 "Externally-Managed-Environment"(外部管理环境)保护机制,

By Ne0inhk
win11本地部署openclaw实操第2集-让小龙虾具有telegram机器人能力和搜索网站能力

win11本地部署openclaw实操第2集-让小龙虾具有telegram机器人能力和搜索网站能力

1 按照第一集的部署完成后,我们就开始考虑给小龙虾增加telegram机器人和搜索网站能力,实现效果如下: 2 telegram机器人能力部署 C:\Users\Administrator.openclaw的配置文件openclaw.json 增加一段内容 "channels":{"telegram":{"enabled": true, "dmPolicy":"pairing", "botToken":"你的telegram机器人的token", "groupPolicy":"allowlist", "streamMode":"partial", "network":{"

By Ne0inhk