JavaWeb项目 (第四加五次笔记)

如不会看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中
当你下次访问,直接取出第一次登录的时候保存的账号密码进行直接登录  来实现自动登录的效果
问题:非法用户 可以根据浏览器保存的账号密码进行 获取   解决方式:加密


 

         
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值