java016学习记录

Java Web

使用 Java 开发语言完成 Web 后端的项目开发

基于 Web 的应用:网站、APP、小程序

Java 不是做前端的,做后端

Tomcat、Servlet

Tomcat 的作用让 Java Web 程序可以正常运行,被浏览器访问

浏览器默认不能访问电脑上的资源,安全性考虑

Tomcat 是一个服务,当 Tomcat 服务启动之后,浏览器允许直接访问 Tomcat 中的资源的

开发 Java Web

1、写代码

2、把代码放到 Tomcat 中,运行 Tomcat

3、通过浏览器访问代码,配置 url 映射 Java 代码

Servlet 是 JDK 提供的一个接口,专门面向 Web 开发的接口,浏览器直接调用 Java 程序,

让 Java 程序具备被网络请求访问的能力,以及做出网络响应的能力

实现对应的接口即可 Servlet

Servlet 是 Java Web 的基础,组件、框架,底层都是 Servlet

请求 响应

ServletRequest

ServletResponse

网页

web 前端

html + css + js

不能直接通过 Servlet 拼接返回 HTML 代码,因为很繁琐、出错率高、不容易维护

如何解决?通过哪个组件来解决

JSP

JSP 是一个模板,可以在 Java 端通过模板来直接编写 HTML 代码,开发者开发起来就很方便

JSP 会自动生成一个 Servlet,自动将 HTML 填充到 write 方法中

html 复制代码
<html>
  <head>
    <title>$Title$</title>
  </head>
  <body>
      <h1>123</h1>
  </body>
</html>
java 复制代码
response.getWriter().write("<html>\n" +
        "  <head>\n" +
        "    <title>$Title$</title>\n" +
        "  </head>\n" +
        "  <body>\n" +
        "      <h1>123</h1>\n" +
        "  </body>\n" +
        "</html>");

当需要通过 Java 后端给浏览器返回页面的时候,可以直接访问 JSP,JSP 自动转成 Servlet

Servlet + JSP

为什么还要使用 Servlet,而不直接使用 JSP?

网页 + 数据(数据库 + 业务)

JSP 只能生成网页

数据通过 Servlet 来创建的

Servlet + JSP

数据 + 图形界面

先访问 Servlet,由 Servlet 自动跳转到 JSP,从而实现数据在页面中的加载

而不能直接访问 JSP,否则看不到数据,只能看到页面

复制代码
${user.id}

${} EL 表达式,从 request 中获取数据

${user.id} ---> user.getId()

相关推荐
Devin~Y5 分钟前
大厂Java面试实录:Spring Boot/Cloud、Kafka、Redis、K8s 与 Spring AI(RAG/Agent)三轮连环问
java·spring boot·redis·mysql·spring cloud·kafka·kubernetes
bLEd RING13 分钟前
SpringBoot3.3.0集成Knife4j4.5.0实战
java
小松加哲31 分钟前
Spring MVC 核心原理全解析
java·spring·mvc
handler011 小时前
从零实现自动化构建:Linux Makefile 完全指南
linux·c++·笔记·学习·自动化
Ulyanov1 小时前
《PySide6 GUI开发指南:QML核心与实践》 第二篇:QML语法精要——构建声明式UI的基础
java·开发语言·javascript·python·ui·gui·雷达电子对抗系统仿真
码界筑梦坊1 小时前
357-基于Java的大型商场应急预案管理系统
java·开发语言·毕业设计·知识分享
anzhxu1 小时前
Go基础之环境搭建
开发语言·后端·golang
云烟成雨TD1 小时前
Spring AI Alibaba 1.x 系列【31】集成 Studio 模块实现可视化 Agent 调试
java·人工智能·spring
014-code1 小时前
Spring Data JPA 实战指南
java·spring
安小牛1 小时前
Android 开发汉字转带声调的拼音
android·java·学习·android studio