7/8 复盘

news2024/11/16 1:35:05

后端数据传输?

后端代码的耦合:打点调用、方法调用、接口、继承。

Dao、Service、servlet(controller)各层的作用?

Dao负责与数据库交互,执行SQL语句,例如简单的增删改查等等。(要创建对应的接口和实现类)

Service层通常会调用Dao层提供的方法来获取数据或更新数据,执行特定的业务逻辑,并将处理结果返回。(要创建对应的接口和实现类)

Servlet接收前端请求、调用Service层(的方法)执行业务逻辑,并返回处理结果给前端。

前端传递数据?

前端 :1. Ajax技术;2. RESTful API;3. WebSocket技术(不太清楚网上查的)

最原始的方式——HTML的表单。

表单数据将以POST请求的方式发送到指定的URL。(在HTML中使用form元素和input元素来创建表单,用户填写完数据后,通过表单的submit提交按钮来发送数据。method:Post)

(如果使用 method="get",当用户点击提交按钮时,表单数据将会以 GET 请求的方式被发送到指定的 URL。在这种情况下,表单数据会被附加在URL的查询参数中,以键值对的形式出现。)

form表单action?

发送到的指定url。

这里是Servlet里的doPost方法。如果执行add操作,把前端的数据存到后端实体类(比如之前pojo包里写的user类,封装的属性有username、password、realname、userType)的属性里面。

Servlet处理Post请求?

当使用 Servlet 来处理 POST 请求时,一般会在 `doPost()` 方法中编写处理 POST 请求的逻辑。(从Post请求获取表单数据request.getParameter()、处理表单数据(比如数据校验、存储到数据库等)、生成响应、设置响应内容类型和编码)

Servlet?

调用Service层(的方法)执行业务逻辑,并返回处理结果给前端。

下图UserServlet在处理Post请求,调用Service的add方法。

Service层 扩展:然后这里是Service接口的抽象add方法

到Service具体类里实现add()

然后到Dao里,可以创建Use类型对象vo,(前端的数据通过表单传到vo,)在Dao里实现具体操作(sql增删改查)、(vo的数据就可以传到数据库里。)

为什么Service和Dao都要有对应的接口?

使用接口是为了调用与实现解耦。一种抽象、可以暂时不用考虑它的具体实现。(如果一个Dao、或Service明确只有一种实现,)Service和Dao对应的接口应该不是必须要写的。

抽象方法能调用吗?

直接通过接口名和方法名来调用抽象方法是不合法的,在Java中直接调用接口的抽象方法必须通过实现接口的类来实现。

当定义一个接口时,只能包含方法的声明,而没有方法的具体实现。接口中的方法都是抽象方法,不包含方法体。在接口中定义了一个方法后,需要在实现接口的类中提供具体的实现逻辑。

调用方法时,需要通过实例化一个`MyClass`对象来调用抽象方法`myMethod()`,而不是直接通过接口名调用。

拿上图举例子:红框部分是一个实例化的对象,userService是这个对象的名字;蓝框部分是创建对象,new一个对象:其类型是 `UserService`。而赋值给 `userService` 的实例是 `UserServiceImpl` 类的一个对象。(多态)1.如果子类中重写了该方法,那么父类类型的引用将会调用子类中的这个方法。2.父类类型实例可以调用父类中定义的所有属性和方法。

那么这个userService就可以调用`UserServiceImpl` 类的方法。

Controller和Servlet?

servlet

Servlet负责接收HTTP请求、处理请求参数、生成响应内容并返回给客户端。

Servlet是遵循Java Servlet规范的Java类,通过继承Servlet接口或Servlet的子类来实现对HTTP请求的处理。可以处理不同类型的HTTP请求(GET、POST等)

controller

  • 处理请求:Controller 层接收来自用户的 HTTP 请求(例如 GET、POST、PUT、DELETE)。

  • 执行业务逻辑:Controller 负责处理业务逻辑,例如验证输入、处理数据、与数据库交互等。

  • 返回视图:根据业务逻辑的结果,Controller 选择要返回给用户的视图。视图可以是 HTML、JSON 或其他格式。

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

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

相关文章

从RL的专业角度解惑 instruct GPT的目标函数

作为早期chatGPT背后的核心技术,instruct GPT一直被业界奉为里程碑式的著作。但是这篇论文关于RL的部分确写的非常模糊,几乎一笔带过。当我们去仔细审查它的目标函数的时候,心中不免有诸多困惑。特别是作者提到用PPO来做强化学习,…

企业为什么需要透明加密软件?5款透明加密软件推荐

透明加密技术(Transparent Encryption)是一种自动化的数据加密方法,旨在保护敏感数据不受未经授权的访问,而无需用户进行任何显式操作。 透明加密技术通常在操作系统或文件系统级别工作,实时加密和解密数据。这意味着…

RK3568------Openharmony 4.0-Release 浏览器部署安装

RK3568------Openharmony 4.0-Release 浏览器部署安装 文章目录 RK3568------Openharmony 4.0-Release 浏览器部署安装前言一、DevEco Studio开发工具安装与使用二、浏览器(Browser)样例代码编译三 、浏览器(Browser)部署四、遇到的问题五、效果展示总结 前言 上一篇文章讲解了…

AUTOSAR NM介绍

AUTOSAR NM介绍 NM简介 NM是Network Management的简称,是出于具体总线网络管理模块与ComM之间的适配层,为ComM提供所有总线网络管理的服务。在AUTOSAR BSW 层中,其上层是通信管理模块(ComM),下层是具体总线网络管理模块(如CanNm,J1939Nm,FrNm,LinNm,UdpNm等)。 为…

国内AI大模型技术深度解析与前沿应用探索

在人工智能的浪潮中,AI大模型正以其强大的数据处理能力和学习潜力,成为技术创新和产业升级的核心驱动力。本文将深入探讨国内AI大模型的技术特点、应用实践以及未来发展趋势。 技术架构与创新 国内AI大模型技术主要基于以下几个核心架构: T…

AI:助力开发者翱翔,而非抢夺其舞台

在当今这个科技飞速发展的时代,人工智能(AI)犹如一股春风,悄然渗透进全球各个行业,尤其在软件开发领域,其影响力日益显著。从初创企业到跨国巨头,无一不在积极探索AI如何重塑编程的面貌&#xf…

Resid核心问题总结(三)

什么是缓存击穿?该如何解决 缓存击穿是指一个Key非常热点,在不停的扛着大并发,大并发集中对这一个点进行访问,当这个Key在失效的瞬间,持续的大并发就穿破缓存,直接请求数据库,就像在一个完好无…

第三届图像处理、目标检测与跟踪国际学术会议(IPODT 2024,8月9-11)

第三届图像处理、目标检测与跟踪国际学术会议(IPODT 2024)将于2024年8月9-11日在中国南京召开。 本次会议旨在为全球的研究人员、工程师、学者和业界专家提供一个展示和讨论图像处理、目标检测与跟踪最新进展的平台,促进这些领域的科研与技术…

WebRTC群发消息API接口选型指南!怎么用?

WebRTC群发消息API接口安全性如何?API接口怎么优化? WebRTC技术在现代实时通信中占据了重要地位。对于需要实现群发消息功能的应用程序来说,选择合适的WebRTC群发消息API接口是至关重要的。AokSend将详细介绍WebRTC群发消息API接口的选型指南…

设置和取消Excel“打开密码”的3种方法

在日常工作中,Excel文件中常常包含敏感数据。为了防止未经授权的访问,给Excel文件设置打开密码是一个非常有效的方法。下面分享3种设置Excel打开密码的方法,以及如何取消这些密码。 先来看看设置Excel打开密码的3种方法。 方法一&#xff1…

PMP--计算--挣值分析

文章目录 挣值分析进度一、本质二、关键概念三、衍生概念四、练习 成本一、本质二、关键概念三、衍生概念 小结软考真题 预测技术深入理解一、概念二、填空大法真题1真题2真题3真题4 三、预测-二维图 真题真题1真题2 概念大全 挣值分析 是将范围、进度、成本整合起来进而客观测…

68.SAP FICO - 记账码学习

在会计中,“借”和“贷”是记账符号,代表了记账的方向。而在SAP中却没有大家熟知的记账符号“借”和“贷”,那SAP中如何录入凭证呢?其实,SAP通过记账码来实现记账方向的控制。 定义 记账码是由两个字符组成的…

如何在 Microsoft Edge 上使用开发人员工具

Microsoft Edge 提供了一套强大的开发人员工具,可帮助 Web 开发人员检查、调试和优化他们的网站或 Web 应用程序。 无论您是经验丰富的 Web 开发人员还是刚刚起步,了解如何有效地使用这些工具都可以对开发过程产生重大影响。 在本文中,我们…

华为、H3C、锐捷、思科四大设备厂商交换机配置命令总结合辑

号主:老杨丨11年资深网络工程师,更多网工提升干货,请关注公众号:网络工程师俱乐部 下午好,我的网工朋友。 一直以来,对于华为、H3C、锐捷、思科交换机的命令配置,不断的有朋友留言,四…

idea提交代码或更新代码一直提示token然后登陆失败无法提交或者更新代码

最近因为换了电脑需要对开发环境做配置, 遇到了这个问题, 应该是因为我们用到了gitlab,默认的最新的idea会有gitlab插件 强制录入gitlab的token,如果gitlab不支持token的验证那么问题就来了 , 不管怎么操作都无法提交或…

孟德尔随机化--代谢生活方式与消化道癌

写在前面 今天阅读的文献是多种暴露与某结局的孟德尔随机化,算是以量取胜了。 The effect of metabolism-related lifestyle and clinical risk factors on digestive system cancers in East Asian populations: a two-sample Mendelian randomization analysis …

Nginx+Tomcat群集

**Nginx Tomcat 集群** Nginx 和 Tomcat 集群的组合是一种常见且强大的架构方案,旨在实现高可用性、可扩展性和高性能的 Web 应用服务。 Nginx 是一款轻量级的高性能 Web 服务器和反向代理服务器。它能够高效地处理静态资源请求,并将动态请求转发到后…

10款超好用的文档加密软件丨2024文档加密软件分享

在现代的信息社会,企业和个人的重要数据都存储于电脑中,一旦丢失后果不堪设想。因此,文档加密软件应运而生。 文档加密软件是一种用于保护电子文档安全性的工具,它通过加密技术对文档内容进行编码,使得未授权的用户无…

C#知识|账号管理系统:使用带参数的SQL语句编程添加账号的方法。

哈喽,你好啊,我是雷工! 前边学习了登录窗体的实现,接下来接着学习使用带参数的SQL语句编程添加账号的方法。 以下为学习笔记。 01 非带参数方法 在DAL数据访问层编写AccountServer.cs类代码。 按照前面的练习,写法如下: public int AddAccount(Account account) {//定义S…

前端笔记-day13

文章目录 01-体验vw和vh02-vw适配02-适配.htmldemo.lessdemo.css 03-vw和vh不能混用03-vw和vh.htmldemo.lessdemo.css 04-综合案例-酷我demo.htmldemo.lessbase.lessdemo.css 酷我&#xff08;标准版&#xff09;index.htmlindex.lessindex.css 01-体验vw和vh <!DOCTYPE ht…