day28-JSP

0目录

JSP

1.为什么使用JSP

2.B/S和C/S的区别

3.URL

4.Tomcat

5.JSP实战综合项目

1.为什么使用JSP

1.1  JSP定义:

(1)是一种动态网页技术

(2)Java Server Pages(Java服务器端页面技术)

1.2  JSP缘由:

(1)JSP可以实现交互功能(客户端和服务器端产生请求和响应)

(2)可以解决HTML静态页面无法实现动态更新数据功能的问题

2.B/S和C/S的区别

 

3.URL

URL:统一资源定位符

URL组成部分:协议://服务器ip地址端口号(80可以省略,一般使用8080,而8080是tomcat应用服务器的默认端口号)+应用页面JSP

 

4.Tomcat

4.1  定义:应用服务器/web服务器,默认端口号是8080

4.2  Tomcat实战:

步骤1:解压-->创建maven工程

步骤2:在webapp目录下删除默认并创建index.jsp文件

 

步骤3:IDEA配置Tomcat,并点击启动

 

 

步骤4:测试访问:http://localhost:8080/index.jsp

4.3  端口号修改:

(1)idea修改配置:

 

(2)Tomcat自身修改:conf目录下server文件

 

4.4  JSP中的page指令(嵌入java代码)

(1)<%@ page import="java.util.Scanner" contentType="text/html;charset=UTF-8" language="java" %>

(2)脚本命令:

<%

        Map<String, Object> map = new HashMap<String, Object>();

        map.put("1",111);

        map.put("2",222);

%>

(3)表达式:输出在页面上

<%=

        map

%>

4.5  JSP中java代码通过jdbc访问数据库,展示在页面上:

 

循环遍历输出在页面上:

 

4.6  日期显示

 

4.7  求和

 

4.8  JSP执行过程(原理)

步骤1:翻译(JSP文件-->java文件)

步骤2:编译(java文件-->class文件)

步骤3:执行(执行class(字节码)文件)

5.JSP实战综合项目

步骤1:创建maven工程

步骤2:创建工程包entity,dao,util,service,servlet

步骤3:引入pom依赖(修改mysql版本,引入servlet相关的依赖,jstl相关依赖)

<dependency>

      <groupId>javax.servlet</groupId>

      <artifactId>javax.servlet-api</artifactId>

      <version>4.0.1</version>

</dependency>

<dependency>

      <groupId>jstl</groupId>

      <artifactId>jstl</artifactId>

      <version>1.2</version>

</dependency>

<dependency>

      <groupId>mysql</groupId>

      <artifactId>mysql-connector-java</artifactId>

      <version>5.1.36</version>

</dependency>

<dependency>

      <groupId>taglibs</groupId>

      <artifactId>standard</artifactId>

      <version>1.1.2</version>

</dependency>

步骤4:右击servlet包new servlet文件新建servlet测试

 

步骤4.1:web.xml

 

步骤4.2:配置tomcat并启动

步骤4.3:网页访问http://localhost:8080/TestServlet,显示index.jsp中内容,测试成功

步骤5:数据库创建表t_student并添加数据

步骤6:创建实体类Student和BaseDao类,测试连接数据库成功

步骤7:创建StudentDao接口,实现类StudentDaoImpl

步骤8:创建StudentService接口,实现类StudentServiceImpl

步骤9:index.jsp创建表格,输入固定值测试显示在网页上测试

步骤10.1:web.xml,StudentServlet

 

request对象:封装了来自客户端、浏览器的各种信息。request 对象是 javax.servlet.httpServletRequest类型的对象。 该对象代表了客户端的请求信息,主要用于接受通过HTTP协议传送到服务器的数据。(包括头信息、系统信息、请求方式以及请求参数等)。request对象的作用域为一次请求。

response对象:封装了服务器的响应信息。response 代表的是对客户端的响应,主要是将JSP容器处理过的对象传回到客户端。response对象也具有作用域,它只在JSP页面内有效。

 

步骤10.2:引入jstl表达式,循环遍历

步骤10.3:测试遍历输出集合元素在网页上

 

拓展:key变量名的一致性和,value变量名调用.id等获取值

 

步骤11:将数据库中的表中数据展示在网页上

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/8023.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

干货 | 石化产品机器学习价格模型开发和SEI石化产品价格分析体系构建

以下内容整理自大数据能力提升项目必修课《大数据系统基础》同学们的期末答辩汇报。 我们的报告将分为六个部分&#xff0c;第一部分是研究背景与内容。受疫情影响以来&#xff0c;石化行业市场日趋饱和&#xff0c;竞争激烈&#xff0c;同时利润也受到压缩&#xff0c;大部分石…

5G NR:RACH随机接入过程

1. 简述 无论是3G,4G还是现在的5G都需要随机接入过程&#xff0c;随机接入过程主要是为了让基站和UE之间做好上行同步以及初始接入。此文章仅仅帮助大家了解此过程&#xff0c;更加具体的用途及其场景需要参考具体的3GPP协议&#xff08;38.211,38.212,38.213).主要帮助理解如下…

【Spark实战】Windows环境下编译Spark2 Linux上部署Spark On Yarn

Windows环境下编译Spark2 环境准备 git-2.14.1maven-3.9.2jdk-1.8scala-2.11.8zinc-0.3.15 主下载地址spark-2.3.4 github官方地址 编译准备 maven远程仓库使用的是阿里云的 解压源码包spark-2.3.4.zip,修改根模块的pom文件。主要目的是为了变更hadoop的版本号&#xff0c;…

【数据可视化】大作业(意向考研高校的数据可视化)

文章目录 前言一、数据介绍1.1 基本信息1.2 考研信息1.3 导师信息 二、预处理及分析2.1 数据预处理2.1.1 考研信息预处理2.1.2 导师信息预处理 2.2 数据分析 三、可视化方法及结果3.1 可视化方法3.2 可视化结果展示3.2.1 基本信息3.2.2 考研信息3.2.3 导师信息 四、总结五、附录…

git 获取两个版本间的变更文件,生成增量包

可用于代码在无git环境情况下的做增量包 注意&#xff1a;版本号1一般是上一次版本的结束。 #下面命令可以获取两个版本直接的变更文件git diff 版本号1 版本号2 --name-only git diff 版本号1 版本号2 --name-only | xargs zip update.zip 牛逼之处就是打出来的压缩包是带…

89C52RC普中单片机-4

20230629 Thusday lcd1602代码 lcd1602.c #include <REGX52.H>//引脚配置&#xff1a; sbit LCD_RSP2^6; sbit LCD_RWP2^5; sbit LCD_ENP2^7; #define LCD_DataPort P0//函数定义&#xff1a; /*** brief LCD1602延时函数&#xff0c;12MHz调用可延时1ms* param 无*…

论文笔记--GPT-4 Technical Report

论文笔记--GPT-4 Technical Report 1. 报告简介2. 报告概括3 报告重点内容3.1 Predictable Scaling3.2 Capabilities3.3 limitations3.3 Risks & mitigations 4. 报告总结5. 报告传送门6. References 1. 报告简介 标题&#xff1a;GPT-4 Technical Report作者&#xff1a;…

uniapp怎么把px转换成对应手机型号的rpx

首先获取系统手机屏幕的宽度系统信息的概念 | uni-app官网&#xff0c;然后根据公式转换 rpx 750*元素 B 在设计稿上的宽度为 多少px/手机屏幕的宽度 详见&#xff1a;CSS 支持 | uni-app官网 如下为把宽度为1px的转成对应手机型号的rpx uni.getSystemInfo({success(res) {co…

LeetCode 打卡day54-55 动态规划之编辑距离问题

一个人的朝圣 — LeetCode打卡第54-55天 知识总结 Leetcode 392. 判断子序列题目说明代码说明 Leetcode 115. 不同的子序列题目说明代码说明 Leetcode 583. 两个字符串的删除操作题目说明代码说明 Leetcode 72. 编辑距离题目说明代码说明 知识总结 今天学习动态规划里面的编辑…

uni-app 微信小程序发布时,主包超过2M限制

小程序发布时&#xff0c;提示超过2M&#xff0c;无法通过&#xff0c;此时可以尝试以下几种方法&#xff1a; 1、对图片做压缩 图片尽量放在服务器端&#xff0c;使用的时候&#xff0c;通过URL路径获取&#xff0c;若不得已放在本地时&#xff0c;可以对图片进行压缩&#…

InsCode Stable Diffusion 美图活动投稿

本地部署可以使用B站大佬秋叶的整合包 CSDN亦提供了Stable Diffusion 模型在线使用地址&#xff1a;https://inscode.csdn.net/inscode/Stable-Diffusion 模型相关版本和参数配置&#xff1a; 模型&#xff1a;cetusversion4.WRgK.safetensors [b42b09ff12] VAE&#xff1a;y…

MySQL - 第14节 - MySQL使用C语言连接

1.引入库 要使用C语言连接MySQL&#xff0c;需要使用MySQL官网提供的库。 1.1.下载库文件 下载库文件&#xff1a; 首先&#xff0c;进入MySQL官网&#xff0c;选择DEVELOPER ZONE&#xff08;开发人员专区&#xff09;&#xff0c;然后点击MySQL Downloads。如下&#xff1a; …