![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
SSM框架
文章平均质量分 91
Pluto372
记录自己的学习笔记,同时方便自己忘了可以容易复习
展开
-
SpringMVC源码-DispatcherServlet
通俗点的解释就是Handler 是用来干活的工具,HandlerMapping用于根据需要干的活找到相应的工具,HandlerAdapter 是使用工具干活的人。处理流程:1、请求进入DispatcherServlet中,通过request 找到对应的handler2、根据handler找到对应的HandlerAdapter3、HandlerAdapter处理handler4、调用processDispatchResult方法处理上面处理结果(包括找到view渲染输出给用户)原创 2023-07-05 19:15:55 · 260 阅读 · 0 评论 -
Spring为什么不推荐你使用@Autowired ?
Spring为什么不推荐你使用@Autowired ?我们总能发现当使用IDEA写代码的时候,@Autowired注解会报黄,我们把鼠标悬停在上面,可以看到这个如下图所示的警告信息:当我们按住alt+回车键,idea就会帮我们修改成这样:我向来都是使用@Autowired来完成依赖注入的,但是我在公司的代码中发现大多都是下边的那种写法,这让我开始有些困惑,直接一个注解就可以完成的事,为啥要写构造函数呢?在网上也看了几篇文章,同时也去阅读官方文档(全英看不懂,有道立功),接下来就一起回顾一下spri原创 2021-11-23 10:29:49 · 2000 阅读 · 0 评论 -
SpringMVC-转换器
转换器为什么需要转换器使用springmvc开发程序,如果界面上输入的内容和实体(controller 中)接收的数据类型不一样。那么会报出400的错误,并且在控制台没有错误提示的。这中情况如何解决1、首先需要在页面提交之前做输入合法性的验证。(所有的程序页面都需要)2、在springmvc 中,date数据类型比较特殊的。需要我们手动的去转换一下数据类型(原因:常用的日期格式和系统中默认的日期格式是不一样的。),那么需要在程序中去转换日期的数据类型。转换日期数据类型的方式1、在实体类的属性原创 2020-12-30 21:15:37 · 174 阅读 · 0 评论 -
SpringMVC-拦截器
拦截器概述SpringMVC的处理器拦截器类似于Servlet开发中的过滤器Filter,用于对处理器进行预处理和后处理。开发者可以自己定义一些拦截器来实现特定的功能。**过滤器与拦截器的区别:**拦截器是AOP思想的具体应用。过滤器servlet规范中的一部分,任何java web工程都可以使用在url-pattern中配置了/*之后,可以对所有要访问的资源进行拦截拦截器拦截器是SpringMVC框架自己的,只有使用了SpringMVC框架的工程才能使用拦截器只会拦截访问的控制器方原创 2020-12-30 21:14:55 · 151 阅读 · 0 评论 -
SpringMVC-基本使用
一、什么是MVCMVC是模型(Model)、视图(View)、控制器(Controller)的简写,是一种软件设计规范。是将业务逻辑、数据、显示分离的方法来组织代码。MVC主要作用是降低了视图与业务逻辑间的双向偶合。MVC不是一种设计模式,MVC是一种架构模式。当然不同的MVC存在差异。**Model(模型):**数据模型,提供要展示的数据,因此包含数据和行为,可以认为是领域模型或JavaBean组件(包含数据和行为),不过现在一般都分离开来:Value Object(数据Dao) 和 服务层原创 2020-12-30 21:13:00 · 228 阅读 · 0 评论 -
代理模式
代理模式SpringAOP和SpringMVC的底层就是代理模式实现的代理模式分类:静态代理动态代理静态代理:角色分析:抽象角色:一般使用接口或者抽象类解决真实角色:被代理的角色代理角色:代理真实角色,代理真实角色,我们一般会做附属操作客户:访问代理对象的人静态代理理解1:代码实现:Rent . java 即抽象角色//抽象角色:租房public interface Rent { public void rent();}Host . java 即真实角原创 2020-12-29 21:44:10 · 155 阅读 · 0 评论 -
Spring05-与mybatis整合
spring和mybatis整合加入依赖包<dependencies> <!-- spring相关的包 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>5.2.5.RELEASE</version> <原创 2020-12-29 21:41:45 · 122 阅读 · 0 评论 -
Spring04-事务管理
Spring的事务管理事务原本是数据库中的概念,在 Dao 层。但一般情况下,需要将事务提升到业务层, 即 Service 层。这样做是为了能够使用事务的特性来管理具体的业务。在 Spring 中通常可以通过以下两种方式来实现对事务的管理:(1)使用 Spring 的事务注解管理事务(2)使用 AspectJ 的 AOP 配置管理事务一、配置spring事务<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://w原创 2020-12-29 21:38:30 · 138 阅读 · 0 评论 -
Spring03-AOP
一、AOP简介AOP(Aspect Orient Programming),面向切面编程。面向切面编程是从动态角度考虑程 序运行过程。AOP 底层,就是采用动态代理模式实现的。采用了两种代理:JDK 的动态代理,与 CGLIB 的动态代理。AOP 为 Aspect Oriented Programming 的缩写,意为:面向切面编程,可通过运行期动态 代理实现程序功能的统一维护的一种技术。AOP 是 Spring 框架中的一个重要内容。利用 AOP 可以对业务逻辑的各个部分进行隔离,从而使原创 2020-12-29 21:36:37 · 200 阅读 · 0 评论 -
Spring02-spring注解
一、使用注解配置注意:1、导入约束xmlns:context="http://www.springframework.org/schema/context"2、配置注解的支持(*)<!--开启注解的支持--><context:annotation-config/>spring.xml 配置文件:<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframewo原创 2020-12-29 21:33:05 · 165 阅读 · 0 评论 -
Spring01-基本使用
一、spring入门1.1、spring简介Spring是一个开源框架,为简化企业级应用开发而生。使用Spring可以使简单的JavaBean实现以前只用EJB才能实现的功能。Spring是一个IOC(DI)和AOP容器框架。特点:1.轻量级:Spring 是非侵入性的 – 基于 Spring开发的应用中的对象可以不依赖于Spring 的API2.依赖注入 (DI — dependency injection、IOC)3.面向切面编程 AOP — aspect oriented program原创 2020-12-29 21:31:37 · 288 阅读 · 0 评论 -
Mybatis03-缓存
缓存简介:1、什么是缓存 ( Cache )?存在内存中的临时数据。将用户经常查询的数据放在缓存(内存)中,用户去查询数据就不用从磁盘上(关系型数据库数据文件)查询,从缓存中查询,从而提高查询效率,解决了高并发系统的性能问题。2、为什么使用缓存?减少和数据库的交互次数,减少系统开销,提高系统效率。3、什么样的数据能使用缓存?经常查询并且不经常改变的数据。Mybatis缓存MyBatis包含一个非常强大的查询缓存特性,它可以非常方便地定制和配置缓存。缓存可以极大的提升查询效率原创 2020-12-29 21:27:36 · 133 阅读 · 0 评论 -
Mybatis02-动态SQL语句
动态SQL语句1、什么是动态SQL动态SQL指的是根据不同的查询条件 , 生成不同的Sql语句.ifchoose (when, otherwise)trim (where, set)foreach2、if使用动态 SQL 最常见情景是根据条件包含 where 子句的一部分。比如:<select id="selectLike" resultType="Blog" parameterType="map"> SELECT * FROM BLOG WHERE 1=原创 2020-12-29 21:24:31 · 123 阅读 · 0 评论 -
MyBatis01-MyBatis基本使用
一、什么是MyBatisMyBatis 是一款优秀的持久层框架MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集的过程MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 实体类 【Plain Old Java Objects,普通的 Java对象】映射成数据库中的记录。MyBatis 本是apache的一个开源项目ibatis, 2010年这个项目由apache 迁移到了google code,并且改名为MyBatis 。2013原创 2020-12-29 21:22:25 · 533 阅读 · 0 评论