当前位置: 首页 > news >正文

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

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

  • 前言
  • 一、什么是JSP
    • 1.1 JSP是干什么的?
    • 1.2 JSP与Servlet的关系是什么?
  • 二、在Idea中创建第一个JSP系统
  • 三、JSP和HTML的差别
    • 3.1 格式区别
    • 3.2 注释区别


前言

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

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

在这里插入图片描述

我的个人主页,欢迎来阅读我的其他文章
https://blog.csdn.net/2402_83322742?spm=1011.2415.3001.5343
我的JSP知识文章专栏
欢迎来阅读指出不足
https://blog.csdn.net/2402_83322742/category_12950980.html?spm=1001.2014.3001.5482
我的java-servlet知识文章专栏
欢迎来阅读指出不足
https://blog.csdn.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"%>
<!DOCTYPE html>
<html>
<head><meta charset="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的环境

  • 我的IDEA下载以及JAVA-WEB环境构建链接,欢迎来阅读
    https://blog.csdn.net/2402_83322742/article/details/145998804

  • 构建好之后,下面我们将开始构造第一个JSP文件
    在这里插入图片描述

  • 首先在右上角SE3文件里创建maven模板
    在这里插入图片描述
    在这里插入图片描述

  • 接着,右键单击test,找到模板设置
    在这里插入图片描述

在这里插入图片描述

  • 找到test,添加web项目
    在这里插入图片描述
    在这里插入图片描述
  • 然后在工件里找到web展开型,单击元模块,把test添加进去
    在这里插入图片描述
    在这里插入图片描述
  • 继续创建在web下创建lib文件
    在这里插入图片描述
    在这里插入图片描述
  • 导入里面的库文件,然后应用,确定
  • 找到web文件,新建jsp界面
    在这里插入图片描述

在这里插入图片描述

  • 然后,输入我们的第一个jsp代码,hello jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head><meta charset="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文件的内容是固定的,每次加载页面时都不会改变。

<!DOCTYPE html>
<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"%>
<!DOCTYPE html>
<html>
<head><meta charset="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.csdn.net/2402_83322742?spm=1011.2415.3001.5343
我的JSP知识文章专栏
欢迎来阅读指出不足
https://blog.csdn.net/2402_83322742/category_12950980.html?spm=1001.2014.3001.5482
我的java-servlet知识文章专栏
欢迎来阅读指出不足
https://blog.csdn.net/2402_83322742/category_12907265.html?spm=1001.2014.3001.5482
我的HTML专栏
欢迎来阅读指出不足
https://blog.csdn.net/2402_83322742/category_12834817.html?spm=1001.2014.3001.5482

非常感谢您的阅读,喜欢的话记得三连哦

在这里插入图片描述

相关文章:

  • Docker Compose 命令实现动态构建和部署
  • 2025年推荐使用的开源大语言模型top20:核心特性、选择指标和开源优势
  • 全链路开源数据平台技术选型指南:六大实战工具链解析
  • 纷析云开源财务软件:企业财务数字化转型的灵活解决方案
  • lombok requires enabled annotation processing
  • 三层路由器,SSH远程登录访问路由器,通过telnet远程登录访问路由器(不安全),路由器的基本设置之多网络互联解决办法:单臂路由
  • Web3技术如何提升用户数据保护
  • 05-DevOps-Jenkins自动拉取构建代码
  • 【路由交换方向IE认证】BGP选路原则之Local Preference属性
  • 计算机网络 实验四 静态路由的配置与应用
  • 自动化浏览器环境与 Node.js 环境的逆向分析:完整教程
  • 【开发语言】悬空指针问题
  • 《分布式软总线架构下,设备虚拟化技术的深度剖析与优化策略》
  • 高并发内存池(四):内存释放原理与实现
  • C语言的文件操作
  • TMDOG——语言大模型进行意图分析驱动后端实践
  • 智能家居适老化改造:让科技回归“无感服务”
  • 2025 最新版 Node.js 下载安装及环境配置详细教程【保姆级】
  • [250416] GitHub Action 新升级,支持 Windows on Arm
  • FC-4 mapping映射协议VI、hippi、fhcp、scma表示啥意思
  • 长沙B2B2C商城网站建设/在哪里找软件开发公司
  • 广州专业做标书公司/温州seo优化
  • 网站链群怎么做/十大网站平台
  • 游戏网站banner怎么做/网络营销推广方案策划书
  • 江西网站建设哪家专业/网站推广如何做
  • 重庆网站seo外包/app推广全国代理加盟