Tomcat安装与HTML响应实战

文章目录

tomcat安装与下载

向浏览器响应HTML代码



项目结构

前端

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<a href="/demo1/login">进入系统</a>

</body>
</html>

后端

java 复制代码
package com.yanyu;

import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;

import java.io.IOException;
import java.io.PrintWriter;

public class Login extends HttpServlet {

//    ctrl o


    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        System.out.println("第一个程序");

        /*
        浏览器  发送  请求     ,请求  到达  服务器   ,处理业务    ,
        吧  结果   借助  响应  对象  ,响应给    浏览器
        HttpServletRequest request, 请求     请求对象

        HttpServletResponse response   回应    响应  对象



        *
        *
        *
        * */
//        设置  请求 和响应的编码格式
        request.setCharacterEncoding("utf-8");
        response.setCharacterEncoding("utf-8");
//        处理 请求  和 响应  的  乱码问题  : 针对  中文   乱码
//        tomcat   10   不需要考虑  真 乱码  问题 ,即便是  tomcat  最好 写上上面两个代码
//        响应  的 类型
        response.setContentType("text/html");//   向  浏览器输出的内容为   text    html
//        告诉  浏览器  按照什么类型来解析  服务器 返回的  数据
//        创建爱一个   响应   输出流
        PrintWriter out = response.getWriter();
//          out   就可以   向浏览器  输出  内容
        out.println("登录 成功!!!");


    }


}
java 复制代码
package com.yanyu;

import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;

import java.io.IOException;
import java.io.PrintWriter;

public class Login extends HttpServlet {

//    ctrl o


    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        System.out.println("第一个程序");

        /*
        浏览器  发送  请求     ,请求  到达  服务器   ,处理业务    ,
        吧  结果   借助  响应  对象  ,响应给    浏览器
        HttpServletRequest request, 请求     请求对象

        HttpServletResponse response   回应    响应  对象
        *
        *
        *
        * */
//        设置  请求 和响应的编码格式
        request.setCharacterEncoding("utf-8");
        response.setCharacterEncoding("utf-8");
//        处理 请求  和 响应  的  乱码问题  : 针对  中文   乱码
//        tomcat   10   不需要考虑  真 乱码  问题 ,即便是  tomcat  最好 写上上面两个代码
//        响应  的 类型
        response.setContentType("text/html");//   向  浏览器输出的内容为   text    html
//        告诉  浏览器  按照什么类型来解析  服务器 返回的  数据
//        创建爱一个   响应   输出流
        PrintWriter out = response.getWriter();
//          out   就可以   向浏览器  输出  内容
        out.println("登录 成功!!!");

//  alt
out.println("        <!DOCTYPE html>");
out.println("<html lang='en'>");
out.println("<head>");
out.println("    <meta charset='UTF-8'>");
out.println("    <meta name='viewport' content='width=device-width, initial-scale=1.0'>");
out.println("    <title>学生列表</title>");
out.println("    <style>");
out.println("                body{");
out.println("            text-align: center;");
out.println("        }");
out.println("        table{");
out.println("            margin: 0 auto;");
out.println("            /* 居中块级标签 */");
out.println("        }");
out.println("        a{");
out.println("            text-decoration: none;");
out.println("            /* 去掉  超链接的  下划线 */");
out.println("");
out.println("        }");
out.println("        a:hover{");
out.println("            color: red;");
out.println("            background-color: bisque;");
out.println("            /* 伪类标签 */");
out.println("        }");
out.println("        td:hover{");
out.println("            background-color: bisque;");
out.println("        }");
out.println("    </style>");
out.println("</head>");
out.println("<body>");
out.println("    <h1>学生列表</h1>");
out.println("    <a href='./add.html'>新增学生</a>");
out.println("    <br><br>");
out.println("    <table border='1px' >");
out.println("        <tr>");
out.println("            <td width='50px'>序号</td>");
out.println("            <td width='150px'>姓名</td>");
out.println("            <td width='100px'>学号</td>");
out.println("            <td width='300px'>专业</td>");
out.println("            <td width='200px'>操作</td>");
out.println("        </tr>");
out.println("        <tr>");
out.println("            <td width='50px'>1</td>");
out.println("            <td width='150px'>yanyu1</td>");
out.println("            <td width='100px'>1001</td>");
out.println("            <td width='300px'>软件技术</td>");
out.println("            <td width='200px'>");
out.println("                <a href='./detail.html'>详情</a>");
out.println("                <a href='./modify.html'>修改</a>");
out.println("                <a href='#'>删除</a>");
out.println("            </td>");
out.println("        </tr>");
out.println("        <tr>");
out.println("            <td width='50px'>2</td>");
out.println("            <td width='150px'>烟雨2</td>");
out.println("            <td width='100px'>1002</td>");
out.println("            <td width='300px'>计算机应用技术</td>");
out.println("            <td width='200px'>");
out.println("                <a href='#'>详情</a>");
out.println("                <a href='#'>修改</a>");
out.println("                <a href='#'>删除</a>");
out.println("            </td>");
out.println("        </tr>");
out.println("        <tr>");
out.println("            <td width='50px'>3</td>");
out.println("            <td width='150px'>烟雨3</td>");
out.println("            <td width='100px'>1003</td>");
out.println("            <td width='300px'>会计</td>");
out.println("            <td width='200px'>");
out.println("                <a href='#'>详情</a>");
out.println("                <a href='#'>修改</a>");
out.println("                <a href='#'>删除</a>");
out.println("            </td>");
out.println("        </tr>");
out.println("");
out.println("    </table>");
out.println("");
out.println("");
out.println("</body>");
out.println("</html>");
out.println("");

    }


}
相关推荐
NE_STOP6 小时前
MyBatis-配置文件解读及MyBatis为何不用编写Mapper接口的实现类
java
后端AI实验室11 小时前
用AI写代码,我差点把漏洞发上线:血泪总结的10个教训
java·ai
程序员清风13 小时前
小红书二面:Spring Boot的单例模式是如何实现的?
java·后端·面试
belhomme13 小时前
(面试题)Redis实现 IP 维度滑动窗口限流实践
java·面试
Be_Better13 小时前
学会与虚拟机对话---ASM
java
开源之眼15 小时前
《github star 加星 Taimili.com 艾米莉 》为什么Java里面,Service 层不直接返回 Result 对象?
java·后端·github
Maori31616 小时前
放弃 SDKMAN!在 Garuda Linux + Fish 环境下的优雅 Java 管理指南
java
用户9083246027317 小时前
Spring AI 1.1.2 + Neo4j:用知识图谱增强 RAG 检索(上篇:图谱构建)
java·spring boot
小王和八蛋17 小时前
DecimalFormat 与 BigDecimal
java·后端
beata17 小时前
Java基础-16:Java内置锁的四种状态及其转换机制详解-从无锁到重量级锁的进化与优化指南
java·后端