![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Spring
文章平均质量分 71
Octavius_
这个作者很懒,什么都没留下…
展开
-
【归纳总结】SpringMVC之Hibernate Validator
用来做请求参数合法性校验并且,将请求参数合法性校验放到Javabean的成员变量上1️⃣导包hibernate-validatorversion 6(对应的是5版本的spring)在这里插入代码片 <dependency> <groupId>org.hibernate.validator</groupId> <artifactId>hibernate-validator</artif原创 2021-04-06 00:01:14 · 391 阅读 · 1 评论 -
【归纳总结】SpringBoot之整合Web、MyBatis
整合SpringMVC1️⃣ 引入依赖其实就是spring-boot-starter-web依赖2️⃣ 静态资源映射默认的静态资源映射的路径:resources目录下的static目录也可以自己配置:3️⃣ 配置类使用注解@EnableWebMVC或者注解@COnfiguration,前者前面接管,后者给web配置作补充整合MyBatis1️⃣ 引入依赖mybatis-spring-boot-startermysql-connector-java <depe原创 2021-04-07 23:10:07 · 166 阅读 · 1 评论 -
【归纳总结】SpringBoot之配置文件
1️⃣ 配置文件的名称配置文件的名字为:application(-xxx).properties(yml),不可以换成其他名字2️⃣ 与JavaEE容器相关的配置配置端口号和应用名:例如:server.port=8081server.servlet.context-path=/demo13️⃣ 扫描包配置默认扫描包为启动类所在的包目录4️⃣ spring容器中的组件获得springboot配置文件中的值...原创 2021-04-07 22:38:34 · 505 阅读 · 1 评论 -
【归纳总结】SpringBoot之创建应用
针对SpringMVC配置太多的缺点,SpringBoot诞生了SpringBoot不需要依赖于外部的JavaEE容器(如Tomcat),内部集成了JavaEE容器,因此可以统一JavaEE容器的配置SpringBoot的最核心的一句话是约定大于配置,即:如果你没有告诉我注册一个什么样的组件,我给你注册一个默认的如果你告诉我注册了什么,以你通知的为准一般有两种方式创建SpringBoot应用:1️⃣ 通过官网创建网址:start.spring.io输入网址,进入如下页面:生成了一个压原创 2021-04-06 23:14:42 · 99 阅读 · 0 评论 -
【归纳总结】SpringMVC之JavaConfig
建议原创 2021-04-06 21:01:05 · 346 阅读 · 0 评论 -
【归纳总结】SpringMVC之异常处理
当程序中有异常时,异常会不断地向上抛出,SpringMVC可以进行统一的异常处理。用户就不会看到异常的页面。一般有两种处理方式:1️⃣ HandlerExceptionResolver(全局处理)全局处理即只要异常抛出就进入该处理器编写一个类继承HandlerExceptionResolver接口,重写方法resolveException,并使用@Component注解注册为组件,就可以使用了。该方法的参数:handler:Handler方法exception:抛出的异常该方法的返回值原创 2021-04-05 23:17:48 · 167 阅读 · 0 评论 -
【归纳总结】SpringMVC之HandlerInterceptor
CharacterEncodingFilter为了解决数据的中文乱码问题,需要引入Filter来设置编解码格式在web.xml文件中进行如下配置: <filter> <filter-name>characterEncodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</fil原创 2021-04-05 22:41:11 · 333 阅读 · 0 评论 -
【归纳总结】SpringMVC之静态资源处理
假如现在有一张bingbing.jpg的图片在应用下,发现我们无法通过localhost:8080/bingbing.jpg直接访问。原因是:没有对应的Handler来处理静态资源文件,即url-pattern为/ <servlet-mapping> <servlet-name>dispatcherServlet</servlet-name> <!--除了web资源根路径下的jsp文件,其余所有都经过dispatcherSe原创 2021-04-05 20:38:18 · 216 阅读 · 2 评论 -
【归纳总结】SpringMVC之RESTful风格接口
1️⃣ @PathVariable(重要)获得请求url的一部分作为形参 //@PathVariable注解的value属性值→占位符的名字 //@PathVariable注解对应的形参就可以获得对应的占位符的url的值 @RequestMapping("{usernamez}/article/details/{idz}") public BaseRespVo articleDetails(@PathVariable("usernamez") String username原创 2021-04-04 23:23:47 · 127 阅读 · 0 评论 -
【归纳总结】SpringMVC之HandlerMethod参数的封装
直接封装1️⃣基本类型和其对应的包装类的封装例如请求携带如下参数:localhost:8080/register?username=octavius&password=123456&age=20使用Handler可以自动接收到参数: @RequestMapping("register") public void register(String username,String password,Integer age){ System.out.println(原创 2021-04-04 22:54:34 · 244 阅读 · 0 评论 -
【归纳总结】SpringMVC之HandlerMethod
SpringMVC简介MVC的任务:将包含业务数据的模块与显示模块的视图解耦。SpringMVC和JavaEE的区别:SpringMVC的核心功能:SpringMVC的使用1️⃣导包①spring-webmvc会导入Spring的五个核心包,MVC的两个核心包,和日志 <dependency> <groupId>org.springframework</groupId> <artif原创 2021-04-01 23:49:36 · 586 阅读 · 0 评论 -
【归纳总结】Spring之JavaConfig
简单来说,就是不再使用xml配置文件来配置,改为使用配置类来进行配置配置类@Configuration把一个类标记为配置类,把配置也作为容器中的组件(可以使用注入功能的注解)@ComponentScan扫描的范围@EnableTransactionManagement对应标签:<tx:annotation-driven transaction-manager="transactionManager"/>@EnableAspectJAutoProxy对应标签:<aop:as原创 2021-04-01 15:32:39 · 166 阅读 · 0 评论 -
【归纳总结】Spring之事务
核心接口1️⃣PlatformTransactionManager即平台事务管理器,依赖于数据源,可以保证拿到的是同一个connection有三个api:getTransaction:通过事务定义获得事务状态commit:提交事务rollback:回滚事务2️⃣TransactionStatus记录事务状态3️⃣TransactionDefinition事务的名称、事务的隔离级别、事务的传播行为、事务的只读状态、事务的超时时间三者之间的关系如图:传播行为实现多个事务的共享原创 2021-04-01 11:05:09 · 232 阅读 · 0 评论 -
【归纳总结】Spring之Spring与MyBatis的结合
MyBatis需要提供一些组件给Spring管理也就是说,Spring容器中需要注册MyBatis的相关组件——DataSource和Mapper导包1️⃣Spring所需要的依赖 <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId>原创 2021-03-31 23:02:19 · 90 阅读 · 0 评论 -
【归纳总结】Spring之AspectJ
AspectJ实际上是对AOP编程思想的一个实践有三种实践方式:切入点表达式advisoraspect需要导包: <dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjweaver</artifactId> <version>1.9.6</version>原创 2021-03-31 22:22:12 · 246 阅读 · 1 评论 -
【归纳总结】Spring之AOP概述
基本概念Aspect Oriented Programming,面向切面编程作用:对某一些方法进行增强与动态代理的区别:动态代理:委托类中的全部方法AOP:容器中的组件里的指定的方法底层使用的代理:JDK和cglib编程术语委托类(target):也叫目标类,被代理类,有方法需要被增强的类代理类(proxy):方法已经增强的类织入(weaver):通过委托类生成代理对象的动作切入点(Pointcut):所有可能被增强的方法连接点(JoinPoint):代理对象正在执行的增强的方原创 2021-03-30 22:23:34 · 91 阅读 · 0 评论 -
【归纳总结】Spring之注解实现组件注册
首先,添加一个标签 <context:component-scan base-package="com.octavius"/>表示扫描该包目录以及所有子包:寻找该包中所有可以实现组件注册功能的注解。1️⃣组件注册@Component 组件的id为类名的首字母小写形式@Componentpublic class UserServiceImpl implements UserService{@Component(“组件id”) 组件的id为注解的value值原创 2021-03-30 21:23:54 · 114 阅读 · 0 评论 -
【归纳总结】Spring之组件的生命周期
容器中的组件的生命周期:我们要去使用组件,要经过哪一些过程流程图:组件达到可用状态之前经历的过程:bean的实例化:参数设置:该组件实现Aware接口:注册其他组件实现BeanPostProcessor接口:组件达到可用状态之后经历的过程:DisposableBean的destory()方法:自定义的destory()方法:...原创 2021-03-30 16:59:09 · 141 阅读 · 0 评论 -
【归纳总结】Spring之IOC&DI
基本认识IOC即Inverse Of Control,控制反转。区别于传统的java程序设计,用直接new对象的方法来创建对象,IOC思想是将我们设计好的对象交给Spring容器控制。DI即Dependency Injection,依赖注入。由容器动态的将某个依赖关系注入到组件之中。Spring的使用1️⃣导包Spring框架需要五个包spring-corespring-contextspring-beanspring-aopspring-expression只需要导入s原创 2021-03-30 09:49:43 · 68 阅读 · 2 评论 -
【归纳总结】Spring之设计模式(单例、工厂、代理、建造者)
设计模式的六大原则:单一职责:一个类和方法只做一件事开闭原则:对新增代码开放,对修改代码封闭里氏替换:子类不要覆盖父类的方法(抽象方法除外)接口隔离:不要在一个接口里面放很多的方法依赖倒置:依赖关系是通过接口或抽象类产生的迪米特法则:尽量降低类与类之间的耦合单例模式1️⃣核心思想应用程序运行过程中,获得某一个类型的实例的时候,获得的始终是同一个实例。分为三步:构造方法私有自身提供一个实例提供一个静态方法供外部类获取该类的对象2️⃣模式实现懒加载:需要的时候就加载,原创 2021-03-28 23:51:15 · 222 阅读 · 0 评论