当前位置: 首页 > 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…...

K8S认证|CKS题库+答案| 11. AppArmor

目录 11. AppArmor 免费获取并激活 CKA_v1.31_模拟系统 题目 开始操作&#xff1a; 1&#xff09;、切换集群 2&#xff09;、切换节点 3&#xff09;、切换到 apparmor 的目录 4&#xff09;、执行 apparmor 策略模块 5&#xff09;、修改 pod 文件 6&#xff09;、…...

解决Ubuntu22.04 VMware失败的问题 ubuntu入门之二十八

现象1 打开VMware失败 Ubuntu升级之后打开VMware上报需要安装vmmon和vmnet&#xff0c;点击确认后如下提示 最终上报fail 解决方法 内核升级导致&#xff0c;需要在新内核下重新下载编译安装 查看版本 $ vmware -v VMware Workstation 17.5.1 build-23298084$ lsb_release…...

2024年赣州旅游投资集团社会招聘笔试真

2024年赣州旅游投资集团社会招聘笔试真 题 ( 满 分 1 0 0 分 时 间 1 2 0 分 钟 ) 一、单选题(每题只有一个正确答案,答错、不答或多答均不得分) 1.纪要的特点不包括()。 A.概括重点 B.指导传达 C. 客观纪实 D.有言必录 【答案】: D 2.1864年,()预言了电磁波的存在,并指出…...

使用van-uploader 的UI组件,结合vue2如何实现图片上传组件的封装

以下是基于 vant-ui&#xff08;适配 Vue2 版本 &#xff09;实现截图中照片上传预览、删除功能&#xff0c;并封装成可复用组件的完整代码&#xff0c;包含样式和逻辑实现&#xff0c;可直接在 Vue2 项目中使用&#xff1a; 1. 封装的图片上传组件 ImageUploader.vue <te…...

DIY|Mac 搭建 ESP-IDF 开发环境及编译小智 AI

前一阵子在百度 AI 开发者大会上&#xff0c;看到基于小智 AI DIY 玩具的演示&#xff0c;感觉有点意思&#xff0c;想着自己也来试试。 如果只是想烧录现成的固件&#xff0c;乐鑫官方除了提供了 Windows 版本的 Flash 下载工具 之外&#xff0c;还提供了基于网页版的 ESP LA…...

HBuilderX安装(uni-app和小程序开发)

下载HBuilderX 访问官方网站&#xff1a;https://www.dcloud.io/hbuilderx.html 根据您的操作系统选择合适版本&#xff1a; Windows版&#xff08;推荐下载标准版&#xff09; Windows系统安装步骤 运行安装程序&#xff1a; 双击下载的.exe安装文件 如果出现安全提示&…...

Android 之 kotlin 语言学习笔记三(Kotlin-Java 互操作)

参考官方文档&#xff1a;https://developer.android.google.cn/kotlin/interop?hlzh-cn 一、Java&#xff08;供 Kotlin 使用&#xff09; 1、不得使用硬关键字 不要使用 Kotlin 的任何硬关键字作为方法的名称 或字段。允许使用 Kotlin 的软关键字、修饰符关键字和特殊标识…...

Pinocchio 库详解及其在足式机器人上的应用

Pinocchio 库详解及其在足式机器人上的应用 Pinocchio (Pinocchio is not only a nose) 是一个开源的 C 库&#xff0c;专门用于快速计算机器人模型的正向运动学、逆向运动学、雅可比矩阵、动力学和动力学导数。它主要关注效率和准确性&#xff0c;并提供了一个通用的框架&…...

Netty从入门到进阶(二)

二、Netty入门 1. 概述 1.1 Netty是什么 Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients. Netty是一个异步的、基于事件驱动的网络应用框架&#xff0c;用于…...

【网络安全】开源系统getshell漏洞挖掘

审计过程&#xff1a; 在入口文件admin/index.php中&#xff1a; 用户可以通过m,c,a等参数控制加载的文件和方法&#xff0c;在app/system/entrance.php中存在重点代码&#xff1a; 当M_TYPE system并且M_MODULE include时&#xff0c;会设置常量PATH_OWN_FILE为PATH_APP.M_T…...