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

云边端一体化?AIoT全流程闭环的“真”开源的智能算法应用平台正式发布!

云边端一体化?AIoT全流程闭环的“真”开源的智能算法应用平台正式发布!

零门槛体验,让AI算法开发从未如此简单高效 引言:重新定义AI算法平台体验 在AI技术快速发展的今天,算法开发者面临着前所未有的挑战:复杂的模型训练流程、繁琐的环境配置、高昂的学习成本、多语言技术栈的整合难题……这些问题让许多优秀的算法创意止步于概念阶段。 今天,我们隆重推出EasyAIoT——一个真正意义上的算法王炸级AI智能算法应用平台。我们创新性地采用Java、Python、C++三合一语言混编架构,规避单一语言短板,构建了一个"开发复杂度高、使用简易化"的AIoT平台,实现真正意义上的零门槛AI体验。 项目地址:https://gitee.com/soaring-xiongkulu/easyaiot 项目概述:重新构想AI算法应用 设计哲学:各取所长,完美融合 Java擅长平台构建和设备管理但不适合网络编程和AI开发,Python精通网络和AI算法执行但不擅长高性能任务,C++在高性能计算方面无可匹敌但在其他领域略显不足。EasyAIoT创新性地采用三语言混编架构,构建了一个"开发不太Easy,但使用极其Easy"的AI算法应用平台。 平台定位:零门槛AI体

By Ne0inhk
Git下载安装(保姆教程)

Git下载安装(保姆教程)

目录 1、Git下载  2、Git安装(windows版) (1)启动安装程序 (2)阅读许可协议 (3)选择安装路径 (4)选择组件 (5)选择开始菜单文件夹 (6)选择默认编辑器 (7)选择仓库的初始分支 (8)PATH环境配置 (9)选择SSH可执行文件 (10)选择HTTPS传输库 (11)配置行尾转换 (12)配置终端模拟器 (13)创建git pull的默认行为 (14)配置Git凭证  (15)配置额外选项   (16)等待安装完成 1、Git下载 (1)访问Git官方下载网站:https://git-scm.com/downloads          网盘直接下载:https://pan.

By Ne0inhk
Obsidian笔记记录与Gitee云存储

Obsidian笔记记录与Gitee云存储

Obsidian下载 首先下载ObsidianObsidian - 磨砺你的思维,下载完成后打开会弹出本地仓库创建的提示 每个仓库都是一个相对独立的空间,我们的笔记和插件都存放在里面,如核心插件的插入模板的模板文件夹和第三方插件都是各仓库独立,新建仓库都要重下第三方插件。我们可以先打开本地资源管理器自定义一个文件夹专用于这些仓库存放如D:\Obsidian\docs_notes,这样便于即将的云端 SmartGit下载 从 SmartGit 24.1 版本开始,软件安装包已经内置了完整的 Git 客户端、SSH 客户端以及文件对比/合并工具。安装完 SmartGit,就等于同时安装好了 Git,可以直接开始使用,无需任何额外配置。SmartGit | SmartGit,进入下载。 SmartGit 本身下完后会有90天的试用期,此后需要充值使用。但也可以通过此链接Apply for Non-Commercial License申请,选爱好那一栏填名字邮件申请等审批就能无限用了,申请后会收到一个确认链接,此后等待约一天可以收到下文件的返回,在smartgit选中他就可以无限使

By Ne0inhk

3分钟上手!Codex GitHub Action实现自动化代码审查全流程

3分钟上手!Codex GitHub Action实现自动化代码审查全流程 【免费下载链接】codex为开发者打造的聊天驱动开发工具,能运行代码、操作文件并迭代。 项目地址: https://gitcode.com/GitHub_Trending/codex31/codex 你是否还在手动运行代码检查工具?是否因团队代码风格不统一而频繁返工?本文将带你用Codex GitHub Action构建自动化工作流,实现从代码提交到质量报告的全流程智能化处理,让CI/CD效率提升40%。 核心价值与应用场景 Codex作为聊天驱动开发工具,其GitHub Action集成能解决三大痛点: * 开发流程割裂:将AI代码分析能力嵌入现有工作流 * 质量反馈滞后:提交后5分钟内获取详细改进建议 * 配置复杂度高:零脚本实现自定义检查规则 典型应用场景包括:自动生成单元测试、智能修复lint错误、安全漏洞扫描等。通过Model Context Protocol (MCP),还可扩展更多定制化能力。 环境准备与安装 基础环境要求 * GitHub账号及仓库权限 * 已启用

By Ne0inhk