Spring系列教程
Spring框架研究
Thinkingcao
CSDN2019年度博客之星、博客专家,专注架构、Java、Spring、SpringBoot、SpringCloud、微服务、数据库、分布式、中间件、源码分析、JVM性能调优、K8S等领域
微信搜索公众号:「Thinking曹」,一个执着于架构的JAVA基层码农,每天带你学习新知识。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Java中读取properties配置文件的八种方式总结
一、前言在做Java项目开发过程中,涉及到一些数据库服务连接配置、缓存服务器连接配置等,通常情况下我们会将这些不太变动的配置信息存储在以 .properties 结尾的配置文件中。当对应的服务器地址或者账号密码信息有所变动时,我们只需要修改一下配置文件中的信息即可。同时为了让Java程序可以读取 .properties配置文件中的值,Java的JDK中提供了java.util.Properties类可以实现读取配置文件。二、Properties类Properties 类位于 java.util.Pro原创 2020-12-29 14:01:04 · 58405 阅读 · 3 评论 -
Spring中@ResponseStatus注解的作用
一、@ResponseStatus注解作用@ResponseStatus注解是spring-web包中提供的一个注解,从下图部分源码中可以看出@ResponseStatus注解具有value、code、reason 三个属性。@ResponseStatus注释可指定下表所示属性:属性类型是否必要说明codeHttpStatus否http状态码,如HttpStatus.CREATED,HttpStatus.OKvalueString否同code属性reas原创 2020-12-08 17:58:35 · 9568 阅读 · 0 评论 -
SpringMVC处理器拦截器(HandlerInterceptor)
简介SpringWebMVC的处理器拦截器,类似于Servlet开发中的过滤器Filter,用于处理器进行预处理和后处理。应用场景1、日志记录,可以记录请求信息的日志,以便进行信息监控、信息统计等。2、权限检查:如登陆检测,进入处理器检测是否登陆,如果没有直接返回到登陆页面。3、性能监控:典型的是慢日志。-方法preHandle: 顾名思义,该方法将在请求处理之前进行调用,在co...原创 2018-08-30 10:23:57 · 1137 阅读 · 0 评论 -
Spring中,applicationContext.xml 配置文件在web.xml中的配置详解
一、首先写一下代码结构。二、再看web.xml中的配置情况。<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:sch...原创 2018-08-19 00:14:27 · 1421 阅读 · 0 评论 -
ApplicationContext详解以及多个ApplicationContext.xml的相互引用
转自:https://www.cnblogs.com/TTTTT/p/6675557.html看到博主比较好的一篇文章,是我在找的资源,所以转载收藏下,仅供后面自己复习使用如果说BeanFactory是spring的心脏,那么Application就是完整的身躯。ApplicationContext就是由BeanFactory派生出来的。一、ApplicationContext类...转载 2018-08-16 15:34:18 · 2101 阅读 · 0 评论 -
Spring中@Transactional事务回滚失效
一、使用场景举例在了解@Transactional怎么用之前我们必须要先知道@Transactional有什么用。下面举个栗子:比如一个部门里面有很多成员,这两者分别保存在部门表和成员表里面,在删除某个部门的时候,假设我们默认删除对应的成员。但是在执行的时候可能会出现这种情况,我们先删除部门,再删除成员,但是部门删除成功了,删除成员的时候出异常了。这时候我们希望如果成员删除失败了,之前删除的部门也...转载 2018-05-15 14:57:37 · 3453 阅读 · 0 评论 -
@Component、@Repository、@Service、@Controller、@Scope(“prototype“)区别
原文地址:http://blog.csdn.net/qq_35624642/article/details/62423833@Component、 @Repository 、@Service、 @Controller 将类表示为Beanspring自 2.0 版本开始,陆续引入了一些注解用于简化 Spring 的开发。@Repository注解便属于最先引入的一批,它用于将数原创 2017-09-27 20:48:22 · 767 阅读 · 0 评论 -
@Component注解的含义
“无意中发现了一个巨牛的人工智能教程,忍不住分享一下给大家。教程不仅是零基础,通俗易懂,而且非常风趣幽默,像看小说一样!觉得太牛了,所以分享给大家。点人工智能教程可以跳转到教程。1、@controller 控制器(注入服务)2、@service 服务(注入dao)3、@repository dao(实现dao访问)4、@component (把普通pojo实例化到spring容...原创 2017-05-04 15:41:20 · 190863 阅读 · 7 评论 -
使用@Autowired注解注入,是写接口名字还是实现类的名字?
来自某程序员一个问答问题:1. 有一点没明白,为什么注解@repository注解的是接口UserDAO的实现类UserDAOImpl,而在UserServiceImpl中使用@Autowired注解注入属性private UserDAO userDAO自动装配,为什么最后得到的是UserDAOImpl的实例。-----上面是某位同学的提问,我也有这样的疑问----2. @Servi...原创 2018-12-17 21:39:12 · 12597 阅读 · 0 评论 -
Spring框架常用注解大全,收藏
注解本身没有功能的,就和xml一样。注解和xml都是一种元数据,元数据即解释数据的数据,这就是所谓配置。本文主要罗列Spring|SpringMVC相关注解的简介。Spring部分1.声明bean的注解@Component 组件,没有明确的角色@Service 在业务逻辑层使用(service层)@Repository 在数据访问层使用(dao层)@Controller...转载 2019-02-21 10:39:48 · 409 阅读 · 0 评论 -
Spring bean注入之constructor-arg注入和property注入的区别
1、说明 constructor-arg:通过构造函数注入。 property:通过setter对应的方法注入2、constructor-arg的使用示例 (1)、entity代码:public class Student { private Integer id; private String name; private List<...原创 2019-06-03 14:16:10 · 2069 阅读 · 0 评论 -
spring配置注解context:annotation-config和context:component-scan区别
此文章转自https://blog.csdn.net/u010648555/article/details/76371474,仅作为记录查询所用Spring 中在使用注解(Annotation)会涉及到< context:annotation-config> 和 < context:component-scan>配置,下面就对这两个配置进行诠释。1.context:...原创 2019-06-03 13:46:15 · 460 阅读 · 0 评论 -
Spring :监听器ContextLoaderListener的作用
一、在开始使用Spring读取配置文件ApplicationContext.xml的时候没有配置监听器,在applicationContext.xml在web.ml中配置如下: <context-param> <param-name>contextConfigLocation</param-name> <param-...原创 2019-06-03 11:19:14 · 2887 阅读 · 0 评论 -
spring加载properties配置文件context:property-placeholder
<context:property-placeholder/>${key}占位符属性替换器,配置如下: <context:property-placeholder location="属性文件,多个之间逗号分隔" file-encoding="文件编码" ignore-resource-not...原创 2019-06-05 23:34:01 · 1197 阅读 · 0 评论 -
Spring 配置事务
Spring的事务配置有两种一、基于注解配置流程:1、Spring配置文件配置需要加入:<!-- 定义事务 --><bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property na...原创 2019-04-10 11:32:41 · 1914 阅读 · 0 评论 -
Spring常用注解
借鉴一篇好文:Spring注解学习 Spring常用的注解有: @Controller @Service @Autowired @RequestMapping @RequestParam @ModelAttribute @Cacheable @CacheFlush @Re...原创 2017-04-21 17:10:26 · 1236 阅读 · 0 评论 -
浅谈Spring中的事务回滚
使用Spring管理事务过程中,碰到过一些坑,因此也稍微总结一下,方便后续查阅。一、代码中事务控制的3种方式1. 编程式事务: 就是直接在代码里手动开启事务,手动提交,手动回滚。优点就是可以灵活控制,缺点就是太麻烦了,太多重复的代码了。2. 声明式事务: 就是使用SpringAop配置事务,这种方式大大的简化了编码。需要注意的是切入点表达式一定要写正确。3. 注解事务: 直接在Servic...转载 2019-12-17 11:53:29 · 596 阅读 · 0 评论 -
SpringBoot各版本全网最全学习资料收集导航(欢迎收藏)
注: 以下文档为本人日常学习查阅百度、谷歌搜集,多为国内知名博客作者翻译,总结到这里,方便学习和查阅,后续会持续更新!1.SpringBoot官方文档英文版文档版本是基于SpringBoot2.1.7.RELEASE,其他版本可自行更换SpringBoot地址:https://docs.spring.io/spring-boot/docs/2.1.7.RELEASE/refere...原创 2019-12-09 14:04:38 · 1172 阅读 · 0 评论 -
Java 必须掌握的 20+ 种 Spring 常用注解
注解本身没有功能的,就和 xml 一样。注解和 xml 都是一种元数据,元数据即解释数据的数据,这就是所谓配置。本文主要罗列 Spring|Spring MVC相关注解的简介。Spring部分1、声明bean的注解 @Component 组件,没有明确的角色 @Service 在业务逻辑层使用(service层) @...原创 2019-04-23 10:45:30 · 372 阅读 · 0 评论 -
Spring注解@Value在controller无法获取到值
一、说到@Value注解,用过的应该都知道,这是Spring3的一个注解,通过@value注解的方式获取properties文件中的配置值,大大简化了我们读取配置文件的代码 首先必须要配置properties文件的加载bean:在spring的配置文件中加入:让spring将properties的文件中的内容加载进spring容器中,将properties加入到Spring容器中有两种...原创 2018-06-08 11:23:20 · 10598 阅读 · 2 评论 -
SpringBoot 系列教程(二十三) :使用@Order注解调整配置类加载顺序
1 、@Order 1、Spring 4.2 利用@Order控制配置类的加载顺序, 2、Spring在加载Bean的时候,有用到order注解。 3、通过@Order指定执行顺序,值越小,越先执行 4、@Order注解常用于定义的AOP先于事物执行 5、order如果不标注数字,默认最低优先级,因为其默认值是int最大值2 、创建Springbo...原创 2018-12-05 00:12:30 · 21058 阅读 · 18 评论 -
SpringAop切入点execution表达式详解
一、Aspect切入点语法定义在使用spring框架配置AOP的时候,不管是通过XML配置文件还是注解的方式都需要定义pointcut"切入点"例如 :定义切入点表达式 : execution (* com.sample.service.impl..*.*(..))execution()是最常用的切点函数,其语法如下所示:整个表达式可以分为五个部分1、executio...原创 2018-12-07 12:18:10 · 11876 阅读 · 2 评论 -
SpringContextHolder获取bean实例
package com.thinkingcao.common.utils;import java.net.HttpURLConnection;import java.net.URL;import java.util.Date;import org.apache.commons.lang3.Validate;import org.slf4j.Logger;import org.sl...原创 2018-08-16 16:55:22 · 2882 阅读 · 0 评论 -
Spring加载配置文件propertoies中util:properties和context:property-placeholder区别
前言util:properties和context:property-placeholder标签都可以用来获取外部配置文件,加载到Spring容器,通过Spring容器来管理获取外部配置文件中的内容准备工作准备jdbc.properties链接数据库配置database.url=jdbc:mysql://localhost/smaple database.driver...原创 2019-04-10 10:12:51 · 1466 阅读 · 0 评论 -
Spring IOC通过注解配置bean
前言在xml配置了<context:component-scan>这个标签后,spring可以自动去扫描base-package下面或者子包下面的java文件,如果扫描到有@Component @Controller@Service等这些注解的类,则把这些类注册为bean注意:如果配置了<context:component-scan>那么<context:an...原创 2019-04-10 11:50:03 · 347 阅读 · 0 评论 -
Spring @ControllerAdvice @ExceptionHandler 全局处理异常
一、概述对于与数据库相关的 Spring MVC 项目,我们通常会把事务配置在 Service层,当数据库操作失败时让 Service 层抛出运行时异常,Spring 事物管理器就会进行回滚。如此一来,我们的 Controller 层就不得不进行 try-catch Service 层的异常,否则会返回一些不友好的错误信息到客户端。但是,Controller 层每个方法体都写一些模板化...原创 2019-09-07 20:06:07 · 862 阅读 · 0 评论 -
Java注解之 @Target、@Retention、@Documented详解
一、前言想了解下Spring框架里面的注解一些用法和配置,下面以@RestController注解为例子package org.springframework.web.bind.annotation;import java.lang.annotation.Documented;import java.lang.annotation.ElementType;import java...原创 2019-09-07 21:01:35 · 1767 阅读 · 0 评论 -
Spring Mobile检测多种设备类型
spring mobile框架是一个很小的,用于获取设备信息,然后跳转到不同视图的框架。集成方式一、pring Moblie是什么? SpringMoblie是SpringMvc的一个扩展项目,它旨在简化移动web应用程序的开发。 开源地址为 https://github.com/spring-projects/spring-mobile二、Spring Moblie可以...转载 2019-09-09 10:28:13 · 1108 阅读 · 0 评论 -
Error creating bean with name ‘multipartResolver‘: Lookup method resolution failed; nested exception
1、SpringMVC上传文件,SpringMVC.xml配置2、在启动项目,加载springmvc.xml文件时中报异常Error creating bean with name 'multipartResolver': Lookup method resolution failed; nested exception is java.lang.IllegalStateExcept...原创 2019-09-12 17:29:10 · 5507 阅读 · 0 评论 -
SpringMVC静态资源访问配置
一、前言不知道有没有遇到过在访问项目登录html页面或者其他html页面的时候访问不了其中的js文件,js文件属于静态资源文件,同时还有img、css、font等静态资源文件,在某些时候,大部分情况下都是需要开放访问权限的;二、查看一下web.xml文件,前端控制器的配置1、web.xml <!-- springmvc的前端控制器 --> &...原创 2019-09-16 17:59:13 · 857 阅读 · 0 评论 -
@RequestBody的使用
@RequestBody的使用:https://blog.csdn.net/justry_deng/article/details/80972817转载 2019-09-19 17:47:10 · 642 阅读 · 0 评论 -
SpringMVC静态资源访问之缓存配置之cache-period
一、概述 在传统的SSM架构中,开发web项目,在Controller层都用的SpringMVC,如果项目的DispatcherServlet拦截 是配置成*.do这样的URL,就不存在访问不到静态资源的问题。如果DispatcherServlet配置拦截“/”,则是拦截了所有的请求,同时对*.js,*.jpg的访问也就被拦截了。二、分析问题原因:在传统web项目(非...原创 2019-09-07 19:46:06 · 2910 阅读 · 0 评论
分享