spring
sayyy
这个作者很懒,什么都没留下…
展开
-
@Value设置默认值
略原创 2023-04-19 19:55:15 · 287 阅读 · 0 评论 -
QuartZ Cron表达式
Cron表达式的格式:秒 分 时 日 月 周 年(可选)原创 2017-10-18 13:24:05 · 643 阅读 · 0 评论 -
注入指定名称的bean
指定注入的bean名称原创 2022-11-17 11:58:38 · 605 阅读 · 0 评论 -
# spring el 表达式安全操作符
spring el 表达式安全操作符,参考这里。ExpressionParser parser = new SpelExpressionParser();EvaluationContext context = SimpleEvaluationContext.forReadOnlyDataBinding().build();Inventor tesla = new Inventor("Nikola Tesla", "Serbian");tesla.setPlaceOfBirth(new PlaceO原创 2022-04-20 18:25:58 · 687 阅读 · 0 评论 -
spring el 表达式设置默认值
spring el 表达式返回值为null时,显示默认值,参考这里。没用 spring el 表达式时,值为null这样设置默认值:String name = "Elvis Presley";String displayName = (name != null ? name : "Unknown");用 spring el 表达式后,值为null这样设置默认值:ExpressionParser parser = new SpelExpressionParser();String name =原创 2022-04-20 18:19:50 · 2164 阅读 · 0 评论 -
【spring-boot】【spring-session】FilterRegistrationBean
前言spring-bootspring-sessionruoyiFilterRegistrationBean 什么时候生效?从 TomcatStarter.onStartup 到 ServletContextInitializerBeans.getOrderedBeansOfType 的调用过程。TomcatStarter.onStartup ServletContextInitializer.onStartup AnnotationConfigServletWebServerA原创 2022-04-15 16:16:00 · 527 阅读 · 0 评论 -
【spring-boot】集成【spring-session】,使用 redis 存储 session
前言在 【spring-boot】自动配置【spring-session】 过程基础上改进。说明如需要在redis中存储session,则创建SessionRepository 的redis实现即可。操作引入spring-boot的redis支持包。<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-r原创 2022-04-15 15:34:03 · 658 阅读 · 0 评论 -
【spring-boot】自动配置【spring-session】 过程
前言springboot项目仅引用 spring-session-core开发者自己提供 SessionRepositoryspring-boot 项目启用 spring-sessionspring-boot 项目引入spring-session-core:<dependency> <groupId>org.springframework.session</groupId> <artifactId>spring-session-原创 2022-04-15 15:07:03 · 3072 阅读 · 0 评论 -
【spring-session】springSessionRepositoryFilter Bean 介绍
前言【spring-session】介绍springSessionRepositoryFilterspring-session通过名为springSessionRepositoryFilter的Springbean起作用。springSessionRepositoryFilter bean用spring-session自定义的 HttpSession 替换默认的 HttpSession。@EnableSpringHttpSession 时的 springSessionRepositoryFil原创 2022-04-15 14:43:38 · 1014 阅读 · 0 评论 -
Springboot : RequestContextHolder
前言springboot 2.0.0.RELEASEsping-web 提供了 RequestContextHolder 。RequestContextHolder 让开发者可以在请求的任意位置获取到 request、response、session 等。因 RequestContextHolder 是 sping-web 提供的,所以 springboot 中也可以使用。获取请求参数RequestAttributes requestAttributes = RequestContextHol原创 2021-11-03 18:00:43 · 2047 阅读 · 0 评论 -
【Spring】Resource接口:ClassPathResource
前言java 1.8springboot 2.5.4ClassPathResource读取文件ClassPathResource 表示从类路径获取资源,它使用线程上下文类加载器、给定的类加载器来加载资源。classpath 资源存在于类路径中的文件系统中或 jar 包里。ClassPathResource 常用构造器public ClassPathResource(String path);public ClassPathResource(String path, @Nullable Cl原创 2021-08-31 23:08:52 · 3690 阅读 · 0 评论 -
Spring @Value 设置默认值
前言springboot 2.1.1.RELEASE@Value 未设置默认值时的表现org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'commonController': Injection of autowired dependencies failed; nested exception is java.lang.IllegalArgumentException: C原创 2021-05-21 11:59:58 · 1026 阅读 · 0 评论 -
UriComponentsBuilder 拼接URL、解析URL
前言关于URI参考这里。springboot 2.1.1.RELEASEUriComponentsBuilderUriComponentsBuilder 是UriBuilder的实现。针对Servlet,还派生出来ServletUriComponentsBuilder。使用过UriComponentsBuilder 的都知道,很好用快速来个示例String url = UriComponentsBuilder.fromUriString("http://mydomain/api/ge原创 2021-05-19 12:31:00 · 12711 阅读 · 3 评论 -
【SpringBoot】【Thyemeleaf 】【Spring EL表达式】 SPEL调用静态类、静态方法
前言spring 5.0.6.RELEASEThyemeleaf 3.0SpringBoot 2.3.4.RELEASESpring EL表达式 调用静态类、静态方法参考这里:https://docs.spring.io/spring-framework/docs/5.0.6.RELEASE/spring-framework-reference/core.html#expressions-typesThe special T operator can be used to specify原创 2021-04-21 17:37:19 · 2823 阅读 · 0 评论 -
spring mvc 接收List数组类型参数
前言spring mvc区分 application/x-www-form-urlencoded、application/json。参考这里下面的方法,有些未验证(思路应该是对的)。application/x-www-form-urlencoded 传递数组情况1:比如这样:http://xxx/test?ids=1&ids=2&ids=3controller 一侧这样写: @RequestMapping(value = "/test") @ResponseBody p原创 2021-01-05 21:09:34 · 687 阅读 · 0 评论 -
Spring MVC @ModelAttribute 数据绑定
前言示例未经验证Spring MVC @ModelAttribute 数据绑定通过 WebDataBinder 将 @RequestMapping 方法的参数与 request 进行数据绑定WebDataBinder 将 request parameter names (query parameters and form fields) 与 field names on the target Object 进行匹配数据绑定时,会使用 Spring Expression Language (S原创 2020-09-22 20:11:45 · 354 阅读 · 0 评论 -
【SpEL】随机数
前言Spring Expression Language (SpEL)Spring Expression Version : 5.1.3.RELEASEMaven 3.6.3Eclipse Version: 2019-12 (4.14.0)Egimport org.junit.Assert;import org.springframework.expression.ExpressionParser;import org.springframework.expression.spel.st原创 2020-08-20 11:08:35 · 546 阅读 · 0 评论 -
spring boot: 查看ApplicationContext中有哪些Bean
前言想查看ApplicationContext中类型为MyClass.class的Bean有哪些方法System.out.println(new Gson().toJson( BeanFactoryUtils.beanNamesForTypeIncludingAncestors( applicationContext, MyClass.class))); 例子@Componentpublic class TemplateEngineBeanPrint原创 2020-08-18 12:44:46 · 1060 阅读 · 0 评论 -
thymeleaf 异常:SpelEvaluationException: EL1008E: Property or field ‘url‘ cannot be found
前言thymeleaf页面遇错如下:Caused by: org.attoparser.ParseException: Exception evaluating SpringEL expression: "item.url" (template: "/rss/index" - line 16, col 9) at org.attoparser.MarkupParser.parseDocument(MarkupParser.java:393) at org.attoparser.MarkupPar原创 2020-08-15 09:29:10 · 4510 阅读 · 0 评论 -
spring el 三元表达式
前言spring 5.0.6.RELEASE三元表达式spring el 的三元表达式提供了一个简便的写法,可以省略true的值,如下:ExpressionParser parser = new SpelExpressionParser();String name = parser.parseExpression("name?:'Unknown'").getValue(String.class);System.out.println(name); // 'Unknown'参考htt原创 2020-08-14 18:43:41 · 1238 阅读 · 0 评论 -
spring el 表达式的上下文关联到 ApplicationContext
前言spring 5.0.6.RELEASE需求:让 spring el 表达式的上下文关联到 ApplicationContext 。这样就能在 EL 表达式中调用Bean。代码// create ApplicationContext ApplicationContext springContext = new ClassPathXmlApplicationContext("spring.xml");ConfigurableApplicationContext configurableC原创 2020-08-06 18:27:29 · 470 阅读 · 0 评论 -
Spring的EL表达式
前言执行EL表达式代码int clickNum = 33;EvaluationContext context = new StandardEvaluationContext();context.setVariable("clickNum", clickNum); ExpressionParser parser = new SpelExpressionParser();int newClickNum = parser.parseExpression("#clickNum * 2").getV原创 2020-08-06 17:22:32 · 273 阅读 · 0 评论 -
Spring事务 Transaction rolled back because it has been marked as rollback-only
前言使用Spring事务时,出现异常:org.springframework.transaction.UnexpectedRollbackException: Transaction rolled back because it has been marked as rollback-only这个错误正确的理解应为:在提交事务时,发现该事务已经回滚了!!!通常该错误发生在事务嵌套时,异常被中途捕获,导致上层的事务提交时失败。部分错误日志19:29:37.202 [http-nio-80-exe原创 2020-07-21 20:13:46 · 859 阅读 · 0 评论 -
Spring MVC 特性实现文件下载
代码import java.io.File;import javax.servlet.http.HttpSession;import org.apache.commons.io.FileUtils;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.beans.factory...原创 2020-03-14 19:53:25 · 133 阅读 · 0 评论 -
【spring-session】错误:No bean named 'springSessionRepositoryFilter' available
前言spring-session 2.0.2.RELEASE安装官方文档配置可以正常启动。自己改动了一下,就出现了错误:No bean named ‘springSessionRepositoryFilter’ available错误内容org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean n...原创 2020-02-12 18:47:09 · 3441 阅读 · 1 评论 -
ASM ClassReader failed to parse class file
前言维护很久以前的项目时,出现这个问题:ASM ClassReader failed to parse class file分析经过网上搜索该问题,发现是spring版本引起的。Note that the Java 8 bytecode level (-target 1.8, as required by -source 1.8) is only fully supported as o...原创 2020-02-12 16:50:57 · 659 阅读 · 0 评论 -
【spring-session】多项目实现session共享
前言spring-session 2.0.2.RELEASE通过 spring-session 可以实现在多项目之间共享 session 。此处不涉及跨域。场景场景1:同一个项目(项目A),部署多个,在访问任何一个时,均能够共享session(即项目A的集群部署)。场景2:有2个项目(项目A、项目B),部署在同1个域名下,通过目录区分访问。在项目A登录后,再进入项目B时,不需要再...原创 2020-02-06 17:58:01 · 3049 阅读 · 1 评论 -
【spring-session】 1.x与2.x 不兼容
前言A项目使用spring mvc,且spring-session版本为:1.3.1.RELEASEB项目使用spring-boot,且spring-session版本为:2.0.2.RELEASEA项目和B项目均使用同一个redis进行session共享。问题A项目和B项目获取的session不一致不一致。原因因 spring-session 1.x 中默认的cookieSer...原创 2020-02-06 17:10:19 · 676 阅读 · 3 评论 -
There is more than one Web fragment with the same name: "spring_web".
错误定位:根据报错提示,说有重复的模块,即找到重复的删掉即可。错误原因spring-web-xxx.jar 重复了。删除一个,保留一个。再次重启服务器,无异常。参考https://blog.csdn.net/qq_35425070/article/details/89101387...原创 2020-02-05 18:01:19 · 1753 阅读 · 0 评论 -
【spring-session】介绍
前言spring-session 2.0.10.RELEASE项目地址: https://spring.io/projects/spring-session文档地址: https://docs.spring.io/spring-session/docs/2.0.10.RELEASE/reference/html5/介绍spring-session在无需绑定web容器的情况下提供对集群...原创 2020-02-05 16:55:20 · 283 阅读 · 0 评论 -
springboot mail插件/JavaMailSenderImpl 发邮件。163网易企业邮箱调用的坑。
前言spring boot 2.0.0.RELEASE网易企业邮箱 2019年版jdk 1.8发邮件的说明按照加密方式方式,可以分为:明文TLS加密SSL加密发送明文发送明文邮件时,需要设置好:协议(默认是smtp,可不用设置)host端口(默认是25)用户名密码开启身份验证(mail.smtp.auth=true)网易企业邮箱 不再支持明文邮件了。使...原创 2019-11-06 18:43:01 · 8289 阅读 · 1 评论 -
spring PathVariable
@RequestMapping(value="/rss/{type}")public String index(@PathVariable("type") String type) { ...}原创 2019-10-24 16:58:55 · 175 阅读 · 0 评论 -
spring mvc字符编码过滤器 CharacterEncodingFilter ,添加例外url
前言spring 4.3.4.RELEASECharacterEncodingFilter : Spring MVC 提供的字符集过滤器,用于处理项目中的乱码问题项目比较老,大部分url使用的是GBK编码,少量url使用UTF-8编码。需要对 CharacterEncodingFilter 设置例外。即,少量url不要进行 CharacterEncodingFilter 过滤。Cha...原创 2019-10-23 14:29:12 · 971 阅读 · 0 评论 -
SQLErrorCodes loaded: [DB2, Derby, H2, HSQL, Informix, MS-SQL, MySQL, Oracle, PostgreSQL, Sybase, Ha
前言mysql 5.7ssm前两天遇到了这个异常,记录一下:[INFO][2019-10-06 02:03:39,268][org.springframework.beans.factory.xml.XmlBeanDefinitionReader]Loading XML bean definitions from class path resource [org/springframe...原创 2019-10-09 12:39:52 · 745 阅读 · 0 评论 -
Spring @scope注解
@scope注解使用方式:@scope("prototype")@scope注解可取值:singletonprototyperequestsessionglobal session@scope注解默认是singleton(单例模式),即scope=“singleton”。各个作用域的解释:scope说明singleton单例模式全局有且仅有一个实例...原创 2018-10-01 20:40:45 · 1583 阅读 · 0 评论