如不会看chap4
JSP
JSP简介
<p>为什么要学习JSP:</p>
<p>答:默认的HTML技术是无法将后台的数据直接渲染在前台的</p>
<p>例如在后台的request容器,session容器存了东西,要想在前台拿出来渲染,单独利用HTML无法实现的</p>
<p>所以需要借助额外的知识点才可以实现: 例如JSP技术,AJAX技术等</p>
JSP的组成
<h3>JSP的组成</h3>
<p>JSP组成: HTML + Java + JSP本身 </p>
<p>不仅可以写html代码还可以写java代码还可以写JSP代码</p>
<p>但是一般来说 不会再JSP里面写Java代码,最多写点JSP代码 </p>
<p>JSP的本质:本质就是一个Servlet .运行流程:现将JSP解析成servlet再运行。</p>
JSP现状
<p>25年前的技术,早已过时,无人问津。所以本书的内容仅做了解。(我讲的都掌握即可)</p>
<p>技术领域:存在即合理。 即使已经过时了。但是过时的原因仅仅是:后人借鉴了它,然后超过了它</p>
<p>原因:效率极低。现在的项目都是讲究一个前后端分离。 前台只操心前台,后台只操心后台</p>
两种注释的区别(JSP和html)
<p>两种注释的区别: JSP的注释不会被解析到浏览器中,而HTML会</p>
<!--我是HTML注释 -->
<%--我是JSP注释 --%>
EL表达式
知识点1:仅仅存在于JSP中,脱离了JSP无法运行。
知识点2:可以直接将后台数据渲染在页面上
知识点3:语法: 美元符号{ xxx }
例如:可以实现基本的运算: ${1+1+1} ${1*5*2} ${"111" + "222"} <br>
<hr>
例如:可以轻松地获取后台容器的数据: <a href="AServlet">先存几个</a> <br>
${info1} ~~~ ${info2} ~~~ ${info3} <br>
<br>如果存在 不同的容器 但是key相同 。那么可以在key的前面加上前缀即可:例如 <br>
${requestScope.info1} ~~~ ${sessionScope.info1} ~~~ ${applicationScope.info1}
<hr>
例如:可以轻松的获取url地址上的相关参数
<a href="update.jsp?id=123&name=张三&age=18">修改页面</a>
<%--
Created by IntelliJ IDEA.
User: Administrator
Date: 2023/11/15
Time: 8:38
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<p>下面的写法是获取容器里面的id,但是现在我们要获取url地址里面相关参数</p>
~${id}~
<p>如果想要获取url地址上的参数,那么只需要加上前缀 param</p>
${param.id} ~~${param.name} ~~${param.age} ~~
</body>
</html>
MD5加密技术
(不会见老师笔记hap6更新版)
1. 利用MD5加密技术 实现对敏感数据实现加密功能。
MD5加密技术:一种常见的加密算法,可以对数据进行加密。
注意:注册的时候进行加密然后存在数据库中
注意:登录的时候也要进行加密,然后和数据库加密之后的数据进行对比。
例如密码:1234 加密之后变成了 abcd。
所以登录的时候依然使用1234进行登录。然后将加密之后的1234 和abcd进行对比。
如何使用MD5加密技术:
如何使用MD5加密技术:
1.导入jar包
2.创建MD5对象:
Mademd5 md = new Mademd5();
String str = "1234";//原密码
String s = md.toMd5(str);//加密之后的密码
System.out.println(s);
数据的穷举法:
一个一个去测试。 当你测试出1234的加密是abcd 就可以得出一个结论abcd经过解密之后是1234
Cookie技术
利用Cookie技术实现记住账号 和 记住自动登录功能 和 注册功能
Cookie技术讲解:
什么Cookie :
保存在客户端的一段字符串。 格式为:key-value
如何在浏览器查看Cookie:
F12 application
应用场景: 自动登录 记住账号 浏览记录 查询记录
Cookie技术的优缺点
Cookie的优点:保存在客户端 减轻服务器的压力
Cookie的缺点:保存在客户端 容易被非法用户获取
Cookie的备注:
生命周期: 默认的有效期 一次会话(浏览器打开到关闭为一次会话)
无法跨域: 这是浏览器自带的安全机制而非Cookie的
如何在Servlet中创建Cookie
//1.创建一个Key为username value为username的Cookie
Cookie c1 = new Cookie("username" , username);
//2.设置Cookie的生命周期单位是秒
c1.setMaxAge(3600*24*31);//一个月
//3.将其添加进浏览器
resp.addCookie(c1);
自动登录的原理
用户或网站 在第一次登录的时候 将你的账号和密码保存在你的客户端---cookie中
当你下次访问,直接取出第一次登录的时候保存的账号密码进行直接登录 来实现自动登录的效果
问题:非法用户 可以根据浏览器保存的账号密码进行 获取 解决方式:加密