dayi的大键盘
dayi的大键盘

【去type.dayiyi.top看这篇文章】【当前进度0.05】JAVA Web 作业

【去type.dayiyi.top看这篇文章】【去type.dayiyi.top看这篇文章】【去type.dayiyi.top看这篇文章】【去type.dayiyi.top看这篇文章】 【当前进度0.05】JAVA Web 作业

这个把html解析成html了

当前进度0.05,不骗你,第一个任务估计也就0.01,乐观点也最多百分之6

当前共计:5058字

这个作业可能比想象中的复杂一点,涉及了很多的代码。而且内容几乎涉及了整个web全栈。 也正是如此,一次可能写不完,所以会不断更新。 如果你遇到了不明白的地方,请联系咱,咱会进行补充

这次打算使用实时更新的网站:【这里放链接】

更新网址:

0x00 补充和更新

目前还没有遇到,但本文章涉及内容多,不确定因素亦多,肯定会遇上问题,因此,希望各位可以进行补充和说明。

0x01 文件下载

由于涉及的文件真的非常的多,我也临时没想好应该如何共享这些文件。

  • 使用之前的下载方式
  • 使用阿里云盘
  • 使用阿里云盘开网页直接下载,无需登录

临时的方法,我打算先用之前的方式。

0x02 目录说明

大致如下

0x01 章节1
 - 0x011 章节1.1
 - 0x012 章节1.2
0x02 章节2
 - 0x021 章节2.1
 - 0x022 章节2.2

0x03 开发工具

因为整个课程涉及了WEB几乎全栈的开发,因此,这里使用了以下的工具

  • VSCODE
  • Chrome 浏览器

0x10 蛋糕商场的注册界面

该部分对应实验报告内容如下

序号 实验项目 完成时间
1 蛋糕商城注册页面 2.28

0x11 准备文件

需要准备这些文件,这些文件的压缩包在群文件中有。

群文件名:23.2.28_java_web.rar

链接下载:https://p.dabbit.net/blog/pic_bed/2023/05/a77f2e125a83aee1_202305261907278.7z

这里准备好这8个文件,4个css样式文件,4个字体文件

image-20230526190448507

注意目录最好不要涉及到中文,尽可能的全英文+数字+下划线,其他的字符尽可能不要出现。当前还不需要注意这个,但是之后的java代码的书写,可能会出现一些不可预料的错误,

0x12 开发工具

无关章节(0x012)用什么开发工具都是可以的,我们这里的任务1就只写一个html文件即可。

注意VScode不是VS,VSCode是开源的

本章节(0x012)在于提高开发效率,如果你比较急,可以进行一定的忽略。

我这里用了VSCODE,为了提高兼容性,如果你需要整个IDE的下载,可以下载我目前的VSCODE包【这里放链接】。但因为VSCODE的包很大,我建议你同时也装一个。

使用的插件包括:

Debugger for Chrome
Code Runner
JavaScript Debugger
IntelliSense for CSS class names in HTML (不一定好用)
TabNine (代码补全,但不建议过度依赖)
Live Server(实时预览)
Live Preview

语言包:
Chinese (Simplified) (简体中文) Language Pack for Visual Studio Code
主题:
Material Theme Icons 

参考的相关链接:VSCode 必装的 10 个高效开发插件 – 知乎 (zhihu.com)

这里是我临时(2023年5月26日19:28:59)的插件包:

image-20230526192910052

0x121 如果你想要修改vscode为绿色版,也就是携带版

无关章节

携带版就是所有的插件、数据文件存在当前的目录,可以塞优盘里等。

从官网:Download Visual Studio Code – Mac, Linux, Windows

下载zip版本

解压之后,新建文件夹data即可。

0x122 更换主题

无关章节

CTRL+K+T(依次按)

image-20230526192040484

0x123 实时预览

无关章节

image-20230526194505104

0x13 开始写代码

0x131 user_register.html

准备好文件之后,开始写代码

  1. 新建文件user_register.html

    image-20230526193328549
    (别在意这个图

  2. 简单点的代码(不过建议直接看下一点(3.简单写一下代码如下 ) 的内容,注释更多)

    
    
    <!-- ver1.0_easy -->
    
    <!-- 头标签 -->
    
    <title>注册用户</title>
    <!-- 标准缩放 -->
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <!-- 编码格式 -->
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <!-- 引用两个文件的css -->
    <link type="text/css" rel="stylesheet" href="css/bootstrap.css">
    <link type="text/css" rel="stylesheet" href="css/style.css">
    
    
    <!-- 这里是html的内容 -->
    
       <div class="container">
           <div class="register">
               <div class="form">
                   <form action="/user_register" method="post">
                       <div class="register-top-grid"> 
    
    <h2> 新用户!</h2>
    
              <!-- 用户名 -->
              <div class="input"> 
               <!-- span的意思是提示和注释的意思 -->
               <!-- <font color="red">*</font>,变成红色的* -->
    
    <span>用户名 <font color="red">*</font> </span>
               <!-- 输入框 -->
               <!-- 这个name很重要,会传递到后端 -->
               <input type="text" name="username" placeholder="你要输入你想要的用户名!" required="required">
              </div>
    
              <!-- OK,这就是第一个框 -->
              <!-- 然后就可以复制粘贴了 -->
    
              <!-- 邮箱 -->
              <div class="input"> 
    
    <span>邮箱 <font color="red">*</font> </span>
               <input type="text" name="email" placeholder="你要输入你想要的邮箱!" required="required">
              </div>
    
              <!-- 密码 -->
              <div class="input"> <span>密码 <font color="red">*</font> </span>
               <!-- 密码是password会自动隐藏 -->
               <input type="password" name="password" placeholder="你要输入你想要的密码!" required="required">
              </div>
    
              <!-- 收货人 -->
              <div class="input"> <span>收货人  </span>
               <!-- 收货人不是必须的,所以可以不用required -->
               <input type="text" name="name" placeholder="你要输入你想要的收货人!">
              </div>
    
              <!-- 电话 -->
              <div class="input"> <span>收货人电话</span>
               <input type="text" name="phone" placeholder="你要输入你想要的收货人电话!">
              </div>
    
              <!-- 地址 -->
              <div class="input"> <span>收货人地址</span>
               <input type="text" name="address" placeholder="你要输入你想要的收货人地址!">
              </div>
    
              <!-- 然后我们加个按钮 -->
              <!-- class就用他的啦 -->
              <div class="register-but text-center">
               <input type="submit" value="提交">
               <div class="clearfix"> </div>
              </div>
                       </div>
                   </form>
               </div>
           </div>
       </div>
    <!-- OK,这样表单就写完了 -->
    
    

    效果如下,其实也能看

    image-20230526210429547

  3. 简单写一下代码如下(好吧好吧,如果第一次看这个东东,估计也不是很简单)

    这个代码的话,我尽可能解释一点,更多的内容还是自己去学一学。

    
    
    <!-- ver1.0 -->
    
    <!-- 头标签 -->
    
    <title>注册用户</title>
    <!-- 标准缩放 -->
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <!-- 编码格式 -->
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <!-- 引用两个文件的css -->
    <link type="text/css" rel="stylesheet" href="css/bootstrap.css">
    <link type="text/css" rel="stylesheet" href="css/style.css">
    
    
    <!-- 这里是html的内容 -->
    
       <!-- 如果你有实时插件,ctrl+s可以实时预览 -->
    
    <!-- 先写个头 -->
     <!-- 因为头不是重点,所以你可以不写 -->
    <!-- 定义header块 -->
    <div class="header">
     <!-- 在定义个容器块 -->
     <!-- 这里的块你就可以理解为c语言的花括号,可以无限叠,可以让代码更清晰 -->
           <!-- 但是div的实际上是可以被css样式定义的。 -->
     <div class="container">
         <nav class="navbar navbar-default">
       <div class="collapse navbar-collapse">
        <ul class="nav navbar-nav">
    
    <li><a href="/index">这里是头</a></li>
    
    <li><a href="/index2">这里也是头</a></li>
    
    <li><a href="#">热销</a></li>
    
    <li><a href="#">新品</a></li>
    
    <li><a href="#" class="active">注册</a></li>
    
    <li><a href="#">登录</a></li>
        </ul>
       </div>
      </nav>  
     </div>
    </div>
     <!-- 这种/div是结束,类似于{}的} -->
    
       <!-- 然后写一个注册填充表 -->
       <!-- 如果你有实时插件,ctrl+s可以实时预览 -->
     <!-- 实际上这些div会导致css样式的套娃顺序 -->
       <div class="container">
           <div class="register">
               <!-- 写一个表单,因为我们注册实际上是发送表单到服务器 -->
               <div class="form">
                   <!-- 开始写表单 -->
                   <!-- 这个表单会通过POST的方式直接发送给服务器路径为:user_register的文件 -->
                   <form action="/user_register" method="post">
                       <!--  -->
                       <!-- 这个div的作用实际上是将这个框居中,引用了class="register-top-grid"的css样式,具体的样式你可以去看看源文件 -->
             <!-- 这样,我们的表单就可以居中了 -->
                       <div class="register-top-grid"> 
    
    <h2> 新用户!</h2>
              <!-- 然后就是造表单了 -->
              <!-- 这里为了好看引用了css为input的样式 -->
    
              <div class="input"> 
               <!-- span的意思是提示和注释的意思 -->
               <!-- <font color="red">*</font>,变成红色的* -->
    
    <span>用户名 <font color="red">*</font> </span>
    
               <!-- 输入框 -->
               <!-- 这个name很重要,会传递到后端 -->
               <input type="text" name="username" placeholder="你要输入你想要的用户名!" required="required">
              </div>
    
              <!-- OK,这就是第一个框 -->
              <!-- 然后就可以复制粘贴了 -->
    
              <div class="input"> 
               <!-- span的意思是提示和注释的意思 -->
               <!-- <font color="red">*</font>,变成红色的* -->
    
    <span>邮箱 <font color="red">*</font> </span>
    
               <!-- 输入框 -->
               <!-- 这个name很重要,会传递到后端 -->
               <input type="text" name="email" placeholder="你要输入你想要的邮箱!" required="required">
              </div>
    
              <div class="input"> 
               <!-- span的意思是提示和注释的意思 -->
               <!-- <font color="red">*</font>,变成红色的* -->
    
    <span>密码 <font color="red">*</font> </span>
    
               <!-- 输入框 -->
               <!-- 这个name很重要,会传递到后端 -->
               <!-- 密码是password会自动隐藏 -->
               <input type="password" name="password" placeholder="你要输入你想要的密码!" required="required">
              </div>
    
              <!-- 后面的框为了排版,我省一点注释 -->
    
              <div class="input"> <span>收货人  </span>
               <!-- 收货人不是必须的,所以可以不用required -->
               <input type="text" name="name" placeholder="你要输入你想要的收货人!">
              </div>
    
              <div class="input"> <span>收货人电话</span>
               <input type="text" name="phone" placeholder="你要输入你想要的收货人电话!">
              </div>
    
              <div class="input"> <span>收货人地址</span>
               <input type="text" name="address" placeholder="你要输入你想要的收货人地址!">
              </div>
    
              <!-- clearfix 是一种CSS 技巧,可以在不添加新的html 标签的前提下,解决让父元素包含浮动的子元素的问题。 -->
              <!-- 清除之前的浮动关系,修复在firefox、chrome等标准浏览器中子元素全部浮动时,父元素不自动增高的问题。 -->
              <!-- 我也是第一次用 -->
              <div class="clearfix"> </div>
    
              <!-- 然后我们加个按钮 -->
              <!-- class就用他的啦 -->
              <div class="register-but text-center">
               <input type="submit" value="提交">
               <div class="clearfix"> </div>
              </div>
                       </div>
                   </form>
               </div>
           </div>
       </div>
    
    <!-- OK,这样表单就写完了 -->
    
    <!-- 这个东西叫做footer,也就是你平时看到页面最下面的东西 -->
    <!--footer-->
    <div class="footer">
     <div class="container">
      <div class="text-center">
    
    <p>这里是底哦,你可以写你想要的内容,比如(C)dayi</p>
    
       <!-- br是换行的意思,不需要加</br> -->
    
    <br>
    
    <h3>你也可以让字体大一点</h3>
      </div>
     </div>
    </div>
    <!--//footer-->
    
    
  4. 效果图如下:

    image-20230526204321586

  5. 稍微把头修改一下

    也就是<div class="header">的部分

    <div class="header">
     <!-- 在定义个容器块 -->
     <!-- 这里的块你就可以理解为c语言的花括号,可以无限叠,可以让代码更清晰 -->
     <!-- 但是div的实际上是可以被css样式定义的。 -->
     <div class="container">
      <nav class="navbar navbar-default">
       <div class="collapse navbar-collapse">
        <ul class="nav navbar-nav">
    
    <li><a href="/index">主页</a></li>
    
    <li><a href="/index2">其他页面</a></li>
    
    <li><a href="#">热销</a></li>
    
    <li><a href="#">新品</a></li>
    
    <li><a href="#" class="active">注册</a></li>
    
    <li><a href="#">登录</a></li>
        </ul>
       </div>
      </nav>
      <!-- 新的内容 -->
      <div class="header-info">
       <div class="header-right search-box">
        <a href="javascript:;"><span class="glyphicon glyphicon-search" aria-hidden="true"></span></a>
        <div class="search">
         <form class="navbar-form" action="/goods_search">
          <input type="text" class="form-control" name="keyword">
          <button type="submit" class="btn btn-default" aria-label="Left Align">搜索</button>
         </form>
        </div>
       </div>
       <div class="header-right cart">
        <a href="goods_cart.jsp">
         <span class="glyphicon glyphicon-shopping-cart " aria-hidden="true">
          <span class="card_num"></span>
         </span>
        </a>
       </div>
       <div class="clearfix"> </div>
      </div>
      </div>
      <!-- 新的内容 -->
     </div>
    

    image-20230526205143717

  6. 把header和footer分出来,新建为两个文件,方便后序其他文件的使用

  • header.html

    image-20230526205316873

    <div class="header">
    <!-- 在定义个容器块 -->
    <!-- 这里的块你就可以理解为c语言的花括号,可以无限叠,可以让代码更清晰 -->
    <!-- 但是div的实际上是可以被css样式定义的。 -->
    <div class="container">
     <nav class="navbar navbar-default">
       <div class="collapse navbar-collapse">
         <ul class="nav navbar-nav">
    
    <li><a href="/index">主页</a></li>
    
    <li><a href="/index2">其他页面</a></li>
    
    <li><a href="#">热销</a></li>
    
    <li><a href="#">新品</a></li>
    
    <li><a href="#" class="active">注册</a></li>
    
    <li><a href="#">登录</a></li>
         </ul>
       </div>
     </nav>
     <!-- 新的内容 -->
     <div class="header-info">
       <div class="header-right search-box">
         <a href="javascript:;"><span class="glyphicon glyphicon-search" aria-hidden="true"></span></a>
         <div class="search">
           <form class="navbar-form" action="/goods_search">
             <input type="text" class="form-control" name="keyword">
             <button type="submit" class="btn btn-default" aria-label="Left Align">搜索</button>
           </form>
         </div>
       </div>
       <div class="header-right cart">
         <a href="goods_cart.jsp">
           <span class="glyphicon glyphicon-shopping-cart " aria-hidden="true">
             <span class="card_num"></span>
           </span>
         </a>
       </div>
       <div class="clearfix"> </div>
     </div>
     </div>
     <!-- 新的内容 -->
    </div>
    
  • footer.html

    image-20230526205400257

    <!-- 这个东西叫做footer,也就是你平时看到页面最下面的东西 -->
    <!--footer-->
    <div class="footer">
    <div class="container">
     <div class="text-center">
    
    <p>这里是底哦,你可以写你想要的内容,比如(C)dayi</p>
    
      <!-- br是换行的意思,不需要加</br> -->
    
    <br>
    
    <h3>你也可以让字体大一点</h3>
     </div>
    </div>
    </div>
    <!--//footer-->

到此,任务一完成,然而,这之前暴雨前的黎明(

0x14 点击提交会发生什么?

无关章节

点击之后会发生这样的事情:

浏览器会发送这些数据到后端

image-20230526203803271

image-20230526203826005

也就是这些内容会POST到服务器

username=123&email=213&password=213123123&name=123124&phone=123658&address=23190

0x20 配置tomcat

唔写不动了

0x21 准备文件

0x22 尝试直接启动

apache-tomcat-8.5.50\bin\

点击startup.bat

image-20230526212103884

打开: http://localhost:8080

image-20230526212140590

出现了,恭喜你,你省去了很多事情,并且简单的成功了

0x23 报错

上一步成功了,本章节可以忽略

  • 我没有JAVA,那就下载JAVA

    http://java.com

    Java Downloads | Oracle 中国

    建议安装两个版本:

    • 1.8 JDK(后安装)
    • 1.17 JDK(先安装)
  • Java Home没有找到

    这一步很关键,之后的很多地方都需要这个环境变量。

    【此电脑】->【属性】->【高级系统设置】->【环境变量】->【新建】->【JAVA_HOME】注意大小写->【把你java的路径填上】,一般在这个位置:

    C:\Program Files\Java

    填写:JAVA_HOME

    填写你的目录 比如:C:\Program Files\Java\jdk1.8.0_361

    image-20230526212524787

    https://p.dabbit.net/blog/pic_bed/2023/05/9c73706ee8b7a799_202305262128546.png

    image-20230526213040311

  • 端口被占用

    修改文件:

    apache-tomcat-8.5.50\conf\server.xml

    修改为其他的端口

    image-20230526213259596

    但我建议你搜索端口号占用进程,并且杀掉他

    netstat -aon | findstr 8080
    
    tasklist | findstr + 进程号
    
    taskkill /f /im 进程名.exe

    image-20230526213635573

0x24 在IntelliJ IDEA中配置Tomcat(dayi配置失败,本章节临时废弃)

本章节临时废弃了,因为没配出来。用vscode有成功的配置。

我用的是vscode,也许也不用配

在IntelliJ IDEA中配置Tomcat,不知道需不需要写

写不动了,2023年5月26日21:36:45

跑路了

2023年5月30日08:23:25 时间过得很快

要命OVO

这样的话,就先下载一个IDEA,我在考虑需不需要这样做。

激活文件在数据库群里。 需要的话找我。

然后根据这个步骤走

  1. alt+ctrl+shift+/ -> Registry
  2. 选中:javaee-legacy.project.wizard
  3. 新建项目【File】→【new】→【Project】
  4. 【File】→【Project Structrue】
  5. 312
  6. 312
  7. 3
  8. 123
  9. 123

图片如下:

image-20230530083132324

配不明白了,润了

Eclipse.ini文件

image-20230530085201401

试试在Eclipse里配

打不开文件,放弃了。

0x24 在VSCODE里配置Tomcat

  1. 下载插件Community Server Connectors

  2. 右下角可能会报错,如果提示当前JAVA版本不够,需要更高版本:添加rsp-ui.rsp.java.home,到你的高版本JDK目录,注意\\\的区别

    image-20230530090023607

  3. 右键,Create Server,提示是否需要下载,你可以用本地的,也可以下载一个,差不多。我这里选择用本地的。

    image-20230530090327809

  4. 如果你选下载,是否同意都同意即可。

    image-20230530090417920

  5. 导入本地tomcat:

    • 打开tomcat文件夹目录

    • 选择

    • 我直接选的finish

    • 然后右键TOMCAT,启动服务器。

    • 访问127.0.0.1:8080,发现是可以打开的

    • 文件放在:apache-tomcat-8.5.50\webapps\rabbit\index.jsp(新建文件)

      <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
      
      
      
      
      
      <title>index</title>
      
      
      
      
      <h1>hello world</h1>
       <!-- jsp输出1024*1024的结果 -->
       <%
         out.println(1024 * 1024);
       %>
      
      
      
    • 访问http://127.0.0.1:8080/rabbit/,可以看到网页,表示成功了。

      image-20230530093118633

    • 如果需要修改JSP的运行目录:

      修改这里就可以啦

      image-20230530093611653

    image-20230530090711842

    image-20230530090756683

    image-20230530090840708

image-20230530091149182

image-20230530092849740

image-20230530093507074

0x25 Tomcat 日志乱码

  • 看到一堆锟斤拷了吗
  • 进行修一修。

0x251 方法1,修改为GBK编码输出(推荐)

  • 修改文件:apache-tomcat-8.5.50\conf\logging.properties

    修改为GBK编码

image-20230530094425568

  • 重启Tomcat,日志就是正常的啦

    image-20230530094517845

0x252 方法2,修改启动参数(没有成功,等待修改)

好像不生效。我觉得这样改也不对。

就不要这样改了。

这个方法就参考一下吧

  • 在Tomcat文件夹目录中,/bin/catalina.bat里面修改,添加set JAVA_OPTS= -Dfile.encoding=UTF-8

    111 |setlocal
    112 |set JAVA_OPTS= -Dfile.encoding=UTF-8 
    113 |rem Suppress Terminate batch job on CTRL+C
    
    添加112行

    image-20230530094830489

0x26 VSC-Tomcat部署项目

很麻烦对吧,这就是学计算机

0x261 插件安装

Extension Pack for Java
Maven for Java
Debugger for Java
0x2611 安装maven

我之前好像编译过java项目,所以我没这个步骤,但是如果你没配过,还是要配一次。

  1. 下载maven,并解压

    官网下载:Maven – Download Apache Maven https://maven.apache.org/download.cgi

    大一的文件:https://pic.icee.top/blog/pic_bed/apache-maven-3.8.6-d72781d0-058e-4571-b28f-23b818f04d73.rar

  2. 进入到设置里,修改配置参数:

    image-20230530111558871

    这里可能需要复制的内容:

    @ext:vscjava.vscode-maven
  3. 然后在Path里填写:

    这里的路径你不可以直接复制

    你要把D:\program_\apache-maven-3.8.6-bin\这些改成你maven文件的路径地址。

    D:\program_\apache-maven-3.8.6-bin\apache-maven-3.8.6\bin\mvn.cmd

0x262 新建项目

  • 右键文件列表目录,新建项目

    image-20230530104551844

  • 选择【webapp】->选择【1.4】->填写包名【com.example.testdayi】-> 选择你要存放的文件夹(最好路径全英文)

    什么是包名,一般就是网址域名的反过来写就可以。

    image-20230530104659041

image-20230530104627519

  • 然后会自动进行创建项目,这个过程可能比较慢,你可以通过一些方法来加速,比如哈利波特

    image-20230530105020289

  • 记得回车两次,你如果能看懂就可以自己看一下

    image-20230530105414154

  • 出现BUILD SUCCESS 就可以了

    image-20230530105455899

0x263 项目修改

  • 修改下文件,以便后面的测试

  • 文件:demo\src\main\webapp\index.jsp

    image-20230530105931680

  • 内容如下:

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
    
    
    
    
    
    <title>index</title>
    
    
    
    
    <h1>hello world</h1>
    
      <!-- jsp输出1024*1024的结果 -->
      <%
        out.println(1024 * 1024);
        out.println("你好");
      %>
    
    
    
  • 进行编译和部署

    点击这里的package

    image-20230530111124656

​ 如果出现SUCCESS ,并且demo里面出现文件,则构建(BUILD)成功。

image-20230530111245287

​ 这个目录有demo,index.jsp,WEB-INF META-INF几个文件即可。

0x264 部署项目

  • 右键tomcat 8.5 ->【 Add Deployment】->【Exploded】

    image-20230530104316092

  • 选择文件夹,如果你改为其他名字的话就是其他名字。

    我这里的目录是:D:\_project\javaweb_\config_tomcat\demo\target\demo

    https://p.dabbit.net/blog/pic_bed/2023/05/ae5c4c81ff0f4f65_202305301131605.png

  • 提示是否需要修改配置文件,选择No即可。

  • 然后PUSH server或者直接启动tomcat即可

    image-20230530110614892

  • 右键TOMCAT 8.5 选择,Server Actions,选择show in browser,然后选这个localhost:8080/demo

    image-20230530110653012

    image-20230530113418737

  • 出现项目文件的内容即没问题啦

    image-20230530113454049

0x265 如果需要修改

要在src文件夹里修改哦,虽然你该target目录下的也可以生效,但是这样不对。

  • 文件:demo\src\main\webapp\index.jsp
  • 修改完之后进行再打包。package即可。

image-20230530113708196

  • 打包完进行刷新网页(之后如果出现刷新网页内容不变,则重启下tomcat即可)

    image-20230530113857216

  • 修改的内容出来啦(修改的内容是加了个“Hello”)

    image-20230530113927877

0x30 解决中文乱码

看似简单,实际是写一个servlet

没有标签
首页      未分类      【去type.dayiyi.top看这篇文章】【当前进度0.05】JAVA Web 作业

发表回复

textsms
account_circle
email

dayi的大键盘

【去type.dayiyi.top看这篇文章】【当前进度0.05】JAVA Web 作业
【去type.dayiyi.top看这篇文章】【去type.dayiyi.top看这篇文章】【去type.dayiyi.top看这篇文章】【去type.dayiyi.top看这篇文章】 【当前进度0.05】JAVA Web 作业 这个把html解析成htm…
扫描二维码继续阅读
2023-05-26