一. 为什么要用SpringMVC框架

以前是怎么做项目的 ?

CoreServlet,起到一个中心处理器作用。所有的请求到服务器,服务器给CoreServlet,在里面处理所有表的增删改查,跳转也在里面做。

以前做部门就是 DepServlet/ds? 每个模块都访问自己的Servlet。
干脆就提出一个核心的CoreServlet,处理所有表的增删改查。这样做项目很困难。
后来改进一下,通过反射机制来一个核心的分发的DispatcherServlet然后让这个去访问其他表,
一个请求过来,先到达DispatcherServlet。其实就相当于CoreServlet,只不过CoreServlet没有访问其他部门的Servlet。
直接在里面写dao,dao掉方法,相当于DispatcherServlet去调其他的Servlet,去调其他的Dao方法。

但是Servlet多以后会有什么问题呢?Servlet是叫做单例模式。单例模式是挺好的。但是CoreServlet里写增删改查的时候, ICategoryDao是写在方法里面,new了个对象。调一个方就法new一个对象,
按道理说,这些方法是重复的,按以前的来说就在上面写个属性就可以了,但是没有这么做。
因为他是单例模式,单例模式写属性的话就会有安全问题,怎么办呢,就要涉及到锁,如果是单例模式的话就非常复杂处理起来,
所有我们写的框架就没有这么多Servlet的原因。
我们能用到的就只有一个核心DispatcherServlet。不用EmpServlet.改成了CoreServlet
它就不叫Servlet了, 因为Servlet是要继承HttpServlet,

但是EmpController他是多例模式。说难听点就是一个普通的java类,
为什么叫Controller,控制。这样在里面写属性,没有所谓的安全性问题,
处理与部门相关的增删改查,而EmpServlet是处理与EmpServlet相关的增删改查

Original: https://www.cnblogs.com/lijili/p/16102786.html
Author: 雾里看瓜
Title: 一. 为什么要用SpringMVC框架

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/622695/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 关于提问

    A 和 B 对话如下: A: xx 产品,一个月一个版本,只包含一个小功能,培训销售的工作跟不上怎么办?培训工作跟不上,研发做的功能前端都不知道,那做了有什么用?为什么不规划成大版…

    Java 2023年6月16日
    089
  • 如何自定义一个Collector

    Collectors类提供了很多方便的方法,假如现有的实现不能满足需求,我们如何自定义一个Collector呢? Collector接口提供了一个of方法,调用该方法就可以实现定制…

    Java 2023年6月13日
    058
  • Spring Boot 2.7.0发布,2.5停止维护,节奏太快了吧

    这几天是Spring版本日,很多 Spring工件都发布了新版本, Spring Framework 6.0.0 发布了第 4 个里程碑版本,此版本包含所有针对 5.3.20 的修…

    Java 2023年5月30日
    087
  • Android学习笔记——Android签名机制详解

    Android签名机制详解 近期由于工作需要在学习 Android 的签名机制,因为没有现成资料,只能通过开发者文档和阅读博客的方式对 Android 签名机制进行大致了解。过程中…

    Java 2023年6月8日
    066
  • springboot集成websocket的两种实现方式

    WebSocket跟常规的http协议的区别和优缺点这里大概描述一下 一、websocket与http http协议是用在应用层的协议,他是基于tcp协议的,http协议建立链接也…

    Java 2023年5月30日
    075
  • IO流–创建文件夹,复制移动文件

    创建多级文件夹 final String ROOTPATH = "/Users/mac/Downloads"; // 默认文件下载的位置 @Test //创建多…

    Java 2023年6月6日
    084
  • nginx上传文件大小限制

    posted @2019-12-27 10:22 _小豪豪 阅读(1310 ) 评论() 编辑 Original: https://www.cnblogs.com/remember…

    Java 2023年5月30日
    083
  • idea 安装Jenkins插件,管理自动任务

    下载插件 安装完成后出现在侧边栏 点击设置 配置界面 账号密码(Token) 给Jenkins配置Token 复制保存token 点击测试按钮 Successful,关闭配置就会同…

    Java 2023年6月6日
    093
  • Java自定义注解使用和详解

    前言 我们在做开发springboot 项目时候会遇到各种各样注解,使用各种各样注解,极大的简便了我们开发流程,方式,从JDK5开始支持 注解是 Java语言的一种强大的功能 可以…

    Java 2023年6月13日
    083
  • 链表反转类算法题

    反转链表类 NO1. 反转链表 给定一个长度为 n 的链表,反转该链表,输出表头。 方法一:迭代法(推荐使用) 算法流程: step 1 :特殊情况判断,空链表或只有一个结点的链表…

    Java 2023年6月15日
    081
  • 斗地主游戏的案例开发

    关于java后端的斗地主游戏开发案例(只实现后端部分) 斗地主游戏的案例开发 业务需求分析: 斗地主的做牌, 洗牌, 发牌, 排序(拓展知识), 看牌。业务: 总共有54张牌。点数…

    Java 2023年6月6日
    069
  • 墨菲定律 by 张鹏程

    社会法制 巴纳姆效应:一定戴在谁头上都合适的帽子 彼得原理:找到适合自己的位置 马太效应:多的越多,少的越少 蘑菇定律:先当”小苗”,才能做”大…

    Java 2023年6月7日
    085
  • SpringBoot实现自定义路由覆盖

    背景 公司最近有一个项目二期需要对一些功能进行改造,涉及部分框架内置业务接口个性化定制,兼容老接口功能并且增加一部分新的数据返回,由于前端调用这些接口分布较多且较为零碎,修改测试成…

    Java 2023年6月15日
    074
  • 基本的Dos命令

    ### 打开cmd的几种方&#x5F0F…

    Java 2023年6月8日
    075
  • 1. 什么是微服务 ?

    1 . 什么是微服务 ? 微服务主要有两个关键词 : 微和服务 服务 : 实现某种业务逻辑的模块或应用 微 : 望文生义,就是小的意思 SOA(service-oriented a…

    Java 2023年6月8日
    085
  • 译文《全新首发JDK 16全部新特性》

    封面:洛小汐 译者:潘潘 JDK 8 的新特性都还没摸透,JDK 16 的新特性就提着刀来了。 郑重申明:第一次冒险翻译专业领域的文献,可想而知,效果特别糟糕。一般翻译文献特别是 …

    Java 2023年6月13日
    046
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球