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

JavaWeb学习|JSP相关内容

1.什么是JSP

Java Server Pages: Java服务器端页面,也和Servlet一样,用于动态Web技术!

最大的特点:
。写JSP就像在写HTML
。区别:
。HTML只给用户提供静态的数据
。JSP页面中可以嵌入JAVA代码,为用户提供动态数据

JSP最终也会被转换成为一个ava类!
JSP本质上就是一个Servlet

在SP页面中;
只要是JAVA代码就会原封不动的输出;
如果是HTML代码,就会被转换为:
1 out.write("<htmI> r n");
这样的格式,输出到前端!

以下是练习JSP内容项目需要导入的依赖

 2.创建一个Web项目流程

首先用idea建立一个空Maven项目(或者直接建立的时候点maven什么webapp那个),空Maven建立出来后先点如下图中的红框部分完整建立好项目,之后补齐java和resourcs目录并赋蓝和黄

之后没有web目录,需要按照如下图红框部分增加web目录,上述依赖也在pom中导入好,项目完整建立

 之后在index.jsp中练习jsp的使用,java语言可以与html相交在一起,如下图几个例子

 

运行访问观察页面

 第一个里写java代码,第二个是给一个值,第三个jsp声明,第四个注释

 3.遇到500,400的访问错误,设置对应的页面

当我们的一个jsp文件中,出现了如下图所示的错误,那么运行程序,访问该页面,则会报一个500错误的页面,非常难看,我们可以使用自定义页面

 

 我们首先在web目录下创建一个error目录,再建一个针对500错误的jsp页面文件,首先在会出错的那个jsp页面文件中加入红框所示的代码,一旦出错,则网页直接跳转至error/500.jsp的jsp页面文件内容,

 我们可以在网上找一个500错误的好看的图片,在web目录下建立一个image目录专门用来存放我们用的图片文件,然后在500.jsp页面文件中加入我们自己找的图片,如果错误页面跳转至这个我们自定义的500错误页面,则我们选的图片会直接被显示在页面上,更加好看

 

 我们也可直接在web.xml中设置多个错误页面需要跳转的自定义页面

 4.先自己制作一个网页中通用的头部和尾部的jsp网页文件,我们可以快速的加在一个新的页面中去展示出来

5.JSP内置的对象及作用域

共四个对象,可以来存一些键值对的数据

 

pageContext.setAttribute( s:"name1",o:"泰疆1号"); //保存的数据只在一个页面中有效request.setAttribute("name2","泰疆2号");//保存的数只在一次求中有效,请求转发会带这个数据session.setAttribute("name3""秦3号");/保存的数据只在一次会话中有效,从打开览器到关闭浏览器application.setAttribute("name4","秦疆4号"); //存的数据只在服务器中有效,从打开服务器到关闭服务器

当我们换了一个jsp页面文件后,发现第一个和第二个因为作用域超了,所以值取不出来显示不到页面上去了

 

 我们也可用如下方法,只用pageContext,通过设置第三个参数,来调整其作用域,能达到上述四个对象的作用域效果

 可用如下代码实现jsp页面文件的转发(网页地址不变,网页内容为转发到的网页内容,重定向的话网页的地址就直接会发生变化)

 几个jsp内置对象的具体应用场景

 我们在对一个页面进行转发时,可以在地址栏中带几个参数,方便转发后的网页文件可以取参数

相关文章:

JavaWeb学习|JSP相关内容

1.什么是JSP Java Server Pages: Java服务器端页面&#xff0c;也和Servlet一样&#xff0c;用于动态Web技术! 最大的特点: 。写JSP就像在写HTML 。区别: 。HTML只给用户提供静态的数据 。JSP页面中可以嵌入JAVA代码&#xff0c;为用户提供动态数据 JSP最终也会被转换成为一…...

Springboot后端通过路径映射获取本机图片资源

项目场景&#xff1a; 项目中对图片的处理与查看是必不可少的&#xff0c;本文将讲解如何通过项目路径来获取到本机电脑的图片资源 如图所示&#xff0c;在我的本机D盘的图片测试文件夹(文件夹名字不要有中文)下有一些图片&#xff0c; 我们要在浏览器上访问到这些图片&#…...

【IDEA + Spark 3.4.1 + sbt 1.9.3 + Spark MLlib 构建鸢尾花决策树分类预测模型】

决策树进行鸢尾花分类的案例 背景说明&#xff1a; 通过IDEA Spark 3.4.1 sbt 1.9.3 Spark MLlib 构建鸢尾花决策树分类预测模型&#xff0c;这是一个分类模型案例&#xff0c;通过该案例&#xff0c;可以快速了解Spark MLlib分类预测模型的使用方法。 依赖 ThisBuild /…...

亚马逊 EC2服务器下部署java环境

1. jdk 1.8 安装 1.1 下载jdk包 官网 Java Downloads | Oracle tar.gz 包 下载下来 1.2 本地连接 服务器 我用的是亚马逊的ec2 系统是 ubuntu 的 ssh工具是 Mobaxterm , 公有dns 创建实例时的秘钥 链接 Mobaxterm 因为使用的 ubuntu 所以登录的 名称 就是 ubuntu 然后 …...

CTF流量题解http1.pcapng

使用Wireshark工具打开流量文件http1.pcapng&#xff0c;如下图所示。 在过滤检索栏输入http&#xff0c;wireshark自动进行过滤。...

若依vue前端有全局用户信息变量吗

"若依"是一个基于SpringBoot和Vue的前后端分离的开源项目。在前端Vue部分&#xff0c;全局用户信息通常保存在Vuex中&#xff0c;Vuex是Vue.js的状态管理模式。它提供了一个集中式存储来管理所有组件的状态&#xff0c;并以相应的规则保证状态以一种可预测的方式发生…...

什么是Milvus

原文出处&#xff1a;https://www.yii666.com/blog/393941.html 什么是Milvus Milvus 是一款云原生向量数据库&#xff0c;它具备高可用、高性能、易拓展的特点&#xff0c;用于海量向量数据的实时召回。 Milvus 基于 FAISS、Annoy、HNSW 等向量搜索库构建&#xff0c;核心是…...

如何快速实现三菱FX3U程序的无线下载?

1.系统概述 三菱PLC FX3u可以使用专用下载线通过计算机串口下载程序&#xff0c;同样也可以使用自制下载线缆&#xff0c;连接无线模块 DTD435M进行远程无线下载程序&#xff0c;计算机端采用RS232或者RS485 将计算机端与无线模块连接&#xff0c;PLC端同样使用RS232转RS485将…...

Flink源码之RPC

Flink是一个典型的Master/Slave分布式实时处理系统&#xff0c;分布式系统组件之间必然涉及通信&#xff0c;也即RPC&#xff0c;以下图展示Flink组件之间的关系&#xff1a; RPCGateWay 一般RPC框架可根据用户业务类生成客户端和服务器端通信底层代码&#xff0c;此时只需定…...

【LeetCode 75】第二十四题(2390)从字符串中移除星号

目录 题目&#xff1a; 示例&#xff1a; 分析&#xff1a; 代码运行结果&#xff1a; 题目&#xff1a; 示例&#xff1a; 分析&#xff1a; 题目给我们一个字符串&#xff0c;然后字符串中包含星号*&#xff0c;要求每个星号消除一个从星号左边起最近的一个字符&#xf…...

通向架构师的道路之weblogic的集群与配置

一、Weblogic的集群 还记得我们在第五天教程中讲到的关于Tomcat的集群吗? 两个tomcat做node即tomcat1, tomcat2&#xff0c;使用Apache HttpServer做请求派发。 现在看看WebLogic的集群吧&#xff0c;其实也差不多。 区别在于&#xff1a; Tomcat的集群的实现为两个物理上…...

SpringBoot 项目创建与运行

一、Spring Boot 1、什么是Spring Boot&#xff1f;为什么要学 Spring Boot Spring 的诞生是为了简化 Java 程序的开发的&#xff0c;而 Spring Boot 的诞生是为了简化 Spring 程序开发的。 Spring Boot 翻译一下就是 Spring 脚手架 盖房子的这个架子就是脚手架&#xff0c;…...

FOHEART H1数据手套:连接虚拟与现实,塑造智能交互新未来

在全新交互时代背景中&#xff0c;数据手套无疑是一种重要的科技产物。它不仅彻底改变了我们与虚拟世界的互动方式&#xff0c;更为我们提供了一种全新、更为直观的交互形式。 FOHEART H1数据手套结合了虚拟现实、手势识别等高新技术&#xff0c;用先进的传感技术和精准的数据…...

MyBatis学习笔记3

日志 1.日志工厂 如果一个数据库的操作&#xff0c;出现了异常&#xff0c;我们需要排错。日志就是最好的工具。 日志工厂&#xff1a;SLF4JLOG4J(掌握&#xff09;LOG4J2JDK_LOGGINGCOMMONS_LOGGINGSTDOUT_LOGGING&#xff08;掌握&#xff09;NO_LOGGING 2.分页 减少数据…...

ES6学习-Symbol

Symbol 数据类型Symbol&#xff0c;表示独一无二的值。 对象的属性名可有两种类型&#xff0c;一种是原来的字符串&#xff0c;另一种是新增的 Symbol 类型 可以保证不与其他属性名产生冲突。 let s1 Symbol() let s2 Symbol() console.log(s1, s2, s1 s2)//Symbol() Sy…...

【Redis】使用Docker镜像配置集群时的Operation timed out问题

不知道有没有小伙伴跟我一样是使用的Docker镜像进行Redis集群案例模拟的&#xff08;三台虚拟机确实带不动 &#xff09;&#xff0c;然后我遇到了一个问题&#xff1a;Could not connect to Redis at 172.17.0.2:6379: Operation timed out 172.17.0.2是我其中一个Redis实例的…...

Java 生产初学常用注解

目录 0. 基础语法逻辑运算符继承抛出异常获取数据方式泛型 1. 接收前端数据&#xff08;controller&#xff09;mybatis1. QueryWrapper获取和赋值 2. service 层注解 3. Dao 层&#xff08;与数据库交互&#xff09;3.1 mybatis-plus中BaseMapper 4. ELK框架es配置sql参数logs…...

mousedown拖拽功能(vue3+ts)

因为项目有rem适配&#xff0c;使用第三方插件无法处理适配问题&#xff0c;所有只能自己写拖拽功能了 拖拽一般都会想到按下&#xff0c;移动&#xff0c;放开&#xff0c;但是本人亲测&#xff0c;就在div绑定一个按下事件就行了&#xff08;在事件里面写另外两个事件&#x…...

【论文阅读】基于深度学习的时序异常检测——TransAD

系列文章链接 数据基础&#xff1a;多维时序数据集简介 论文一&#xff1a;2022 Anomaly Transformer&#xff1a;异常分数预测 论文二&#xff1a;2022 TransAD&#xff1a;异常分数预测 论文链接&#xff1a;TransAD.pdf 代码库链接&#xff1a;https://github.com/imperial…...

NLPCC 出版部分相关源码记录

目录 Download Unzip Author Title Affiliation Check number of tex Zip Rename Delete Download import requests from bs4 import BeautifulSoup# 登录网站并获取登录后的 session def login(username, password):login_url https://example.com/loginsession re…...

实测分享:用Miniconda-Python3.10镜像快速创建独立开发环境

实测分享&#xff1a;用Miniconda-Python3.10镜像快速创建独立开发环境 1. 为什么需要独立Python环境 在日常开发中&#xff0c;我们经常会遇到这样的困扰&#xff1a;不同项目依赖的Python包版本冲突&#xff0c;导致项目无法正常运行。比如项目A需要TensorFlow 2.4&#xf…...

Waymo Open Dataset Docker部署:环境配置与容器化最佳实践

Waymo Open Dataset Docker部署&#xff1a;环境配置与容器化最佳实践 【免费下载链接】waymo-open-dataset Waymo Open Dataset 项目地址: https://gitcode.com/gh_mirrors/wa/waymo-open-dataset Waymo Open Dataset是自动驾驶领域的重要开源项目&#xff0c;提供了丰…...

OpenClaw二次开发指南:修改Qwen3-VL:30B的飞书交互协议

OpenClaw二次开发指南&#xff1a;修改Qwen3-VL:30B的飞书交互协议 1. 为什么需要定制飞书交互协议 去年11月第一次尝试用OpenClaw对接飞书时&#xff0c;我遇到了一个典型问题&#xff1a;标准协议下发送的Markdown消息在Qwen3-VL:30B多轮对话中频繁出现格式错乱。这个30B参…...

gRPC在C#中的高效应用:如何避免NuGet包管理的那些坑

gRPC在C#中的高效应用&#xff1a;如何避免NuGet包管理的那些坑 1. 为什么NuGet包管理是gRPC开发的第一道门槛 刚接触gRPC的C#开发者往往会把注意力集中在协议定义和服务实现上&#xff0c;却忽略了NuGet包管理这个看似简单实则暗藏玄机的环节。我曾在三个不同项目中连续踩中…...

MogFace-large项目GitHub Actions CI/CD流水线构建教程

MogFace-large项目GitHub Actions CI/CD流水线构建教程 最近在折腾一个基于MogFace-large的人脸检测项目&#xff0c;每次手动测试、打包、部署&#xff0c;流程繁琐不说&#xff0c;还容易出错。团队协作时&#xff0c;代码合并后谁去跑测试、谁去更新镜像&#xff0c;也是个…...

Local AI MusicGen开箱即用:WebUI汉化+中文Prompt提示模板集成

Local AI MusicGen开箱即用&#xff1a;WebUI汉化中文Prompt提示模板集成 1. 引言 想不想拥有一个私人AI作曲家&#xff1f;不需要你懂五线谱&#xff0c;也不需要昂贵的编曲软件&#xff0c;只要输入几个词&#xff0c;比如“悲伤的小提琴”或者“赛博朋克电子乐”&#xff…...

从零到部署:手把手教你用Django+OpenCV搭建一个能识别交通标志的“智能眼”(附完整源码)

实战指南&#xff1a;用DjangoOpenCV构建高精度交通标志识别系统 1. 环境配置与项目初始化 在开始构建交通标志识别系统前&#xff0c;需要准备完善的开发环境。以下是经过验证的配置方案&#xff1a; 核心工具栈选择&#xff1a; Python 3.9&#xff08;推荐3.10.6版本&#x…...

【苍穹外卖 | 篇⑥】登录流程

在牛某网看见了牛肉哥的帖子之后&#xff0c;打算向牛肉大佬学习&#xff0c;故开始书写CSDN博客&#xff0c;通过博客的方式来巩固自身知识学习。因为之前有粗略的学习了Java Web 的基础课程&#xff0c;所以博客内容主要是巩固之前学习当中的模糊点&#xff0c;以及一些自己认…...

电动汽车车队虚拟发电厂的强化学习控制策略探索

电动汽车车队虚拟发电厂的强化学习控制策略 本论文基于 RL 代理的开发&#xff0c;该代理通过家庭环境中的电动汽车充电站管理 VPP。 VPP 的主要优化目标是&#xff1a;填谷、削峰和随时间推移实现零负荷&#xff08;供需负荷平衡&#xff09;。 为实现目标而采取的主要行动是&…...

基于SpringBoot + Vue的垃圾分类回收网站(角色:用户、回收人员、管理员)

文章目录前言一、详细操作演示视频二、具体实现截图三、技术栈1.前端-Vue.js2.后端-SpringBoot3.数据库-MySQL4.系统架构-B/S四、系统测试1.系统测试概述2.系统功能测试3.系统测试结论五、项目代码参考六、数据库代码参考七、项目论文示例结语前言 &#x1f49b;博主介绍&#…...