Java Web开发---复试Tips复习

news2024/11/21 1:35:12

***********(自用,摘录自各种文章和自己总结)**********

小知识点理解

Web

Web应用开发主要是基于浏览器的应用程序开发。一个Web应用由多部分组成

java web就是用java语言开发出可在万维网上浏览的程序

Web应用程序编写完后,若想提供给外界访问,需要服务器来统一管理

常用的动态网页语言——ASP/PHP/JSP

【结合计网:如何访问网站的】

        IP地址过于长+复杂,因此有<域名>代替了IP地址供人们访问网站。<DNS>就是实现IP地址和域名的解析的。这需要DNS服务器。靠后的com等是顶级域名。

         根域名服务器最高级,他知道所有顶级域名服务器的IP地址

        当一个主机发出DNS查询请求时,这个查询请求报文就会发给本地域名服务器,然后本地域名服务器去根域名服务器,根域名把对应的顶级域名服务器IP告诉本地(这是迭代方法,如果是递归查询,那就是根域名一直查到底,再告诉本地)然后本地域名服务器再去找顶级域名服务器,以此类推。

        

      Q:当你在浏览器地址栏中输入地址并回车的一瞬间到页面展示回来,经历了什么?

      A:这些在客户端浏览器和Web服务器之间发生

        1.浏览器先搜索自身的DNS缓存,如果没有再去搜索操作系统的DNS缓存,如果还没有去hosts文件里找,如果找不到就向本地域名服务器发起请求(以上)

        2.拿到域名对应的IP地址后,浏览器向服务器的Web程序发起TCP连接请求

      

JDK

jdk是java开发工具包,是java语言的核心

而IDEA是java编程语言开发的集成环境,它并不包含 JDK。在使用 IntelliJ IDEA 进行 Java 开发时,需要确保已经安装了 JDK,并且配置 IntelliJ IDEA 来使用正确的 JDK 路径。

Java的文件结构

package包主要用来对类和接口进行分类。当开发 Java 程序时,可能编写成百上千的类,因此很有必要对类和接口进行分类     为了更好地组织类,Java 提供了包机制 

import就是在java文件开头的地方,先说明会用到那些类别。

接着我们就能在代码中只用类名指定某个类,也就是只称呼名字,不称呼他的姓(包名)

项目内容

【前端部分用到的技术栈】

HTML+CSS

JavaScript

Ajax+Vue+ElementUI

【数据库】

事务

事务的四大特性:ACID

事务是一种机制、一个操作序列,包含了一组数据库操作命令

事务把所有的命令作为一个整体一起向系统提交或撤销操作请求——这一组数据库命令要么同时成功,要么同时失败

语法:(ROLLBACK可以回滚到开启事务之前的状态)

Maven

So,Maven是一个跨平台的项目管理工具,Maven可以对Jar包进行统一的管理,包括快速引入Jar包,以及对使用的 Jar包进行统一的版本控制;之前我们创建项目,需要确定项目的目录结构,比如src 存放Java源码, resources存放配置文件,还要配置环境比如JDK的版本等等,如果有多个项目 那么就需要每次自己搞一套配置,十分麻烦。而Maven为我们提供了一个标准化的Java项目结构!

IDEA配置Maven以及创建Maven项目具体操作:04-IDEA配置Maven_哔哩哔哩_bilibili

pom.xml 就是 maven 的配置文件,用以描述项目的各种信息

maven中用maven坐标来标识jar包(这个dependency<依赖>就是jar包)

JDBC&MyBatis

JDBC(Java DataBase Connectivity)是用JAVA语言操作关系型数据库的API

也就是说,官方定义了一套操作所有关系型数据库的接口,然后让各个数据厂商(Mysql、Oracle等)用实现类去实现这套接口,再把这些实现类打包(数据驱动jar包),并提供数据驱动jar包给我们使用。

JDBC的操作代码如下:有了ta,在运行后,这些相关的操作就可以发送给MySQL数据库

例如本代码就实现了更新1号id的money这个sql语句~

But JDBC硬编码(例如把可能会改变的字符串直接写到代码里了)+操作繁琐qwq

因此引入了持久层框架MyBatisMyBatis中文网,来简化JDBC开发

(PS:什么是持久层——负责将数据保存到数据库的那一层代码。JavaEE三层架构:表现层(页面展示),业务层(逻辑处理),持久层(数据管理))

在框架基础上构建软件编写更高效、规范、通用、可扩展!

mybatis把那些代码里的字符串都放到了配置文件里:

Mapper代理开发 

具体细节04-Mapper代理开发_哔哩哔哩_bilibili

mapper文件是Mybatis框架中定义SQL语句和映射关系的配置文件

——MyBatisX,基于IDEA的快速开发插件

它的功能是xml配置文件(红色bird)和接口方法(蓝色bird)之间互相跳转,且可以根据接口方法生成statement

接口里写的功能语句:

xml里对应的sql语句:

❤xml配置文件的作用是将Mapper接口中的方法与具体SQL语句关联起来,实现了数据库操作的解耦和简化~

【Web核心】

Tomcat+HTTP+Servlet

<Tomcat>---一个轻量级服务器 

Request+Response

JSP

Cookie+Session

Filter+Listener

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1500294.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【自然语言处理六-最重要的模型-transformer-上】

自然语言处理六-最重要的模型-transformer-上 什么是transformer模型transformer 模型在自然语言处理领域的应用transformer 架构encoderinput处理部分&#xff08;词嵌入和postional encoding&#xff09;attention部分addNorm Feedforward & add && NormFeedforw…

在哪里能找到抖音短视频素材?推荐热门的抖音短视频素材下载资源

哎呦喂&#xff0c;小伙伴们&#xff0c;是不是在短视频的大海里划船&#xff0c;想找到那颗能让你起飞的珍珠&#xff0c;但又觉得素材难寻如针海捞针&#xff1f;别急&#xff0c;今天我就来给你们送上几个超实用的宝藏素材网站&#xff0c;让你的短视频创作不再愁素材 1&am…

从零开始的LeetCode刷题日记:142.环形链表II

一.相关链接 视频链接&#xff1a;代码随想录&#xff1a;142.环形链表II 题目链接&#xff1a;142.环形链表II 二.心得体会 这道题是一道链表题&#xff0c;但他没有对头结点的操作&#xff0c;所以不用虚拟头结点。这道题要分两步进行&#xff0c;第一步是判断链表有没有环…

如何获取国外信用卡?需要国外银行卡支付怎么解决?如何订阅国外产品?

当国内的用户想要使用国外的产品时&#xff0c;很多产品是需要订阅付费的。其中有些产品还没有引入国内&#xff0c;只能用国外的信用卡支付&#xff0c;对于在国内的朋友&#xff0c;如何获取一张国外的信用卡呢&#xff1f; 这里推荐一个平台&#xff1a;wildCard waildCard…

基于Java的生活废品回收系统(Vue.js+SpringBoot)

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、研究内容三、界面展示3.1 登录注册3.2 资源类型&资源品类模块3.3 回收机构模块3.4 资源求购/出售/交易单模块3.5 客服咨询模块 四、免责说明 一、摘要 1.1 项目介绍 生活废品回收系统是可持续发展的解决方案&#xff0c;旨在鼓…

安泰ATA-4014高压功率放大器的特点有哪些呢

高压功率放大器是一种用于放大高压和高功率信号的电子设备&#xff0c;具有特殊的性能和特点。下面安泰电子将详细介绍高压功率放大器的特点和应用。 高压功率放大器具有较高的输出电压和功率能力。相比于普通的放大器&#xff0c;高压功率放大器可以提供更高的输出电压和功率&…

Day16:信息打点-语言框架开发组件FastJsonShiroLog4jSpringBoot等

目录 前置知识 指纹识别-本地工具-GotoScan&#xff08;CMSEEK&#xff09; Python-开发框架-Django&Flask PHP-开发框架-ThinkPHP&Laravel&Yii Java-框架组件-Fastjson&Shiro&Solr&Spring 思维导图 章节知识点 Web&#xff1a;语言/CMS/中间件/…

Decontam去污染:一个尝试

为了程序运行的便利性&#xff0c;不想将Decontam放到windows的Rstudio里面运行&#xff0c;需要直接在Ubuntu中运行&#xff0c;并且为了在Decontam时进行其他操作&#xff0c;使用python去运行R 首先你需要有一个conda环境&#xff0c;安装了R&#xff0c;Decontam&#xff0…

迅速上手:CentOS 系统下 SSH 服务配置指南

前言 掌握 SSH 服务&#xff0c;就像拥有了一把解锁网络世界的钥匙。本文深入浅出地介绍了如何使用 SSH&#xff08;Secure Shell&#xff09;服务&#xff0c;从连接远程服务器到安全文件传输&#xff0c;让你轻松驾驭远程管理与数据传输&#xff0c;提高工作效率&#xff0c…

安全防御-第七次

在FW5和FW6之间建立一条IPSEC通道保证10.0.2.0/24网段可以正常访问到192.168.1.0/24 NAT&#xff1a; 安全策略&#xff1a; NAT: 安全策略&#xff1a; 修改服务器映射&#xff1a; 配置IPSEC&#xff1a;

常州大学-吴颖:参加数维杯竞赛后,我成功拿到梦寐以求的奖项

转眼间&#xff0c;数维杯数模竞赛已经进行到了第八年&#xff0c;这八年中&#xff0c;成千上万的数模人乘着属于自己的船成功抵达梦想的彼岸&#xff0c;每一场比赛都留下了他们努力的痕迹&#xff0c;更成为每次想起都觉得极为宝贵的经历。 当然&#xff0c;每个人的参赛经…

SpringCloud之Nacos入门与实战系列

目录 一、Nacos介绍 1.1、配置中心和注册中心的概念 1.2 Nacos 优点 二、Nacos的使用 2.1 以单机模式启动Nacos 2.2 Nacos部署方式介绍 2.3 配置数据源 2.4 开启控制台权限登录 三、配置中心的使用 3.1 创建配置信息 3.2 SpringBoot使用配置中心 四、注册中心的使用 4…

如何在云服务器上面安装宝塔

一、宝塔面板 1.进入宝塔面板免费注册账号 2.找到安装宝 复制centos安装脚本 二、云服务器上安装宝塔 1.输入centos安装脚本 等待安装 出现这个表示安装成功 外网面板地址: https://云服务器内网IP:30230/d3032ee5内网面板地址: https://本地IP:30230/d3032ee5username: p27…

每日学习总结20240308

每日总结 20240305 常用控件 QPushButton&#xff08;按钮&#xff09;&#xff1a;用于触发操作或响应用户点击事件。QLabel&#xff08;标签&#xff09;&#xff1a;用于显示文本或图像。QLineEdit&#xff08;行编辑器&#xff09;&#xff1a;单行文本输入框&#xff0…

测试用例编写详解

&#x1f345; 视频学习&#xff1a;文末有免费的配套视频可观看 &#x1f345; 关注公众号【互联网杂货铺】&#xff0c;回复 1 &#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 一、概念 测试用例的基本概念&#xff1a; 测试用例&#xff…

【物联网】stm32芯片结构组成,固件库、启动过程、时钟系统、GPIO、NVIC、DMA、UART以及看门狗电路的全面详解

一、stm32的介绍 1、概述 stm32: ST&#xff1a;指意法半导体 M&#xff1a;指定微处理器 32&#xff1a;表示计算机处理器位数 与ARM关系:采用ARM推出cortex-A&#xff0c;R,M三系中的M系列&#xff0c;其架构主要基于ARMv7-M实现 ARM分成三个系列&#xff1a; Cortex-A&…

position定位学习

加了绝对定位的盒子不能通过margin:0 auto水平居中 脱标元素不会产生外边距合并问题

macos m1 arm芯片 使用jpype报错 FileNotFoundError: [Errno 2] JVM DLL not found

startJVM(jpype.getDefaultJVMPath()) 报错 Traceback (most recent call last):File "/Users/thomas990p/PycharmProjects/tuya/volcano-biz-scripts/WenKongFa/FinalCode/java2python/CallJavaAPI.py", line 12, in <module>startJVM(jpype.getDefaultJVMPa…

【Azure 架构师学习笔记】- Azure Private Endpoint

本文属于【Azure 架构师学习笔记】系列。 前言 公有云的其中一个特点是默认允许公网访问&#xff0c; 这就对企业环境带来风险&#xff0c;也是很多年前企业对公有云抵触的其中一个原因&#xff0c;现在这类问题已经很少&#xff0c;因为有了很多技术来确保云上的资源被安全地…

讲解linux下的Qt如何编译oracle的驱动库libqsqloci.so

1.需求 最近linux下的Qt项目中要连接oracle数据库&#xff0c;用户需要我们访问他们的oracle数据库&#xff0c;查询数据 2.遇到的问题 qt连接oracle数据库需要oracle的驱动库libqsqloci.so插件&#xff0c;需要编译下&#xff0c;之前没有编译过&#xff0c;看了网上的…