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

Windows 11 配置 CUDA 版 llama.cpp 并实现系统全局调用(GGUF 模型本地快速聊天)

Windows 11 配置 CUDA 版 llama.cpp 并实现系统全局调用(GGUF 模型本地快速聊天)

Windows 11 配置 CUDA 版 llama.cpp 并实现系统全局调用(GGUF 模型本地快速聊天) 前言 在本地快速部署大模型进行离线聊天,llama.cpp 是轻量化、高性能的首选工具,尤其是 CUDA 版本能充分利用 NVIDIA 显卡的算力,大幅提升模型推理速度。本文将详细记录在 Windows 11 系统中,从环境准备、CUDA 版 llama.cpp 配置,到实现系统全局调用、快速运行 GGUF 格式模型的完整步骤,全程基于实际操作验证,适配 RTX 3090 等 NVIDIA 显卡,新手也能轻松上手。 https://github.com/ggml-org/llama.cpp

By Ne0inhk

VSCode + Copilot下:配置并使用 DeepSeek

以下是关于在 VSCode + Copilot 中,通过 OAI Compatible Provider for Copilot 插件配置并使用 DeepSeek 系列模型 (deepseek-chat, deepseek-reasoner, deepseek-coder) 的完整汇总指南。 🎯 核心目标 通过该插件,将支持 OpenAI API 格式的第三方大模型(此处为 DeepSeek)接入 VSCode 的官方 Copilot 聊天侧边栏,实现原生体验的调用。 📦 第一步:准备工作 在开始配置前,请确保已完成以下准备: 步骤操作说明1. 安装插件在 VSCode 扩展商店搜索并安装 OAI Compatible Provider for Copilot。这是连接 Copilot 与第三方模型的核心桥梁。2. 获取 API

By Ne0inhk
小白程序员必备:精选9大靠谱开源技术栈,轻松入门大模型开发 & 收藏这份实用指南

小白程序员必备:精选9大靠谱开源技术栈,轻松入门大模型开发 & 收藏这份实用指南

构建 AI 智能体应用市面上有很多工具,本文根据我们的实践落地经验,给大家推荐一份经过筛选的靠谱开源技术栈,包括:开发 & 编排框架、记忆、文档理解、计算机控制、语音功能、测试与评估、监控与可观测性、模拟环境、垂直智能体等9个方向,如下图所示: 下文我们详细剖析之。 构建 AI 智能体技术栈 1、构建 AI 智能体的技术栈总览 * 构建和协调 AI 智能体的框架 如果你是从零开始构建 AI 智能体,就从这里入手。这些工具可以帮助你构建 AI 智能体的逻辑结构——何时做什么以及如何处理工具。你可以将其视为核心大脑,将原始语言模型转变为更具自主性的工具。 * 计算机和浏览器使用 一旦你的 AI 智能体能够规划,它就需要行动。这一类别的工具可以让 AI 智能体像人类一样点击按钮、在字段中输入文字、抓取数据以及控制应用程序或网站。 * 语音

By Ne0inhk

GitHub Copilot性能优化实战:如何提升15%的AI代码建议响应速度

GitHub Copilot性能优化实战:如何提升15%的AI代码建议响应速度 【免费下载链接】copilot-codespaces-vscodeDevelop with AI-powered code suggestions using GitHub Copilot and VS Code 项目地址: https://gitcode.com/GitHub_Trending/co/copilot-codespaces-vscode GitHub Copilot作为AI编程助手,在处理复杂代码建议时偶尔会遇到响应延迟问题。通过系统性的性能优化策略,我们成功将AI代码建议的响应速度提升了15%,让开发者享受更流畅的编程体验。 问题根源:为什么Copilot会变慢? 在日常开发中,很多开发者反映Copilot在以下场景中响应速度明显下降: * 大型项目:代码库文件数量超过1000个时 * 复杂语法:使用TypeScript泛型、React Hooks等高级特性 * 多文件上下文:需要分析多个相关文件才能给出准确建议 性能瓶颈主要出现在代码解析和上下文分析阶段,特别是在处理

By Ne0inhk