SpringBoot
文章平均质量分 59
皮皮蟹01
在校计算机专业本科生一枚,想与大家一起交流技术、代码、前沿科技、new idea。还请社区里的大神们多关照。^_^
展开
-
【踩错】Spring源码环境搭建踩坑记录
2021-10-06之前调试Spring源码为了图省事,都是直接利用idea搭建一个Spring项目然后断点调试。这样的好处是快,坏处是对于Spring的整个代码架构没办法像自己的项目代码那样每个包、每个模块一目了然,并且是只读的,没有办法做一些修改与注释。搭建Spring源码阅读环境势在必行。废话不多说,记录一下坑。我使用的是Spring-5.0.4、gradle-4.4.11.下载Spring源码,下载并配置gradle2.配置Spring源码依赖的jar包的下载地址,打开根目录下的build原创 2022-01-27 00:14:41 · 495 阅读 · 0 评论 -
【小记】探析Java类加载时机
2021-09-14最近在重温《深入理解Java虚拟机》这本书,对于第七章的类加载机制部分了解到了之前没有注意的细节,特在此总结记录下来。类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载(Loading)、验证(Verification)、准备(Preparation)、解析(Resolution)、初始化(Initialization)、使用(Using)和卸载(Unloading)7个阶段。其中验证、准备、解析3个阶段部分统称为连接(Linking)。什么情况下需要开始原创 2022-01-26 18:07:42 · 215 阅读 · 0 评论 -
【踩错】thymeleaf多重${}
2021-07-03今天遇到一个问题,thymeleaf接收到controller传递过来的model数据中,含有list和map结构的数据,在thymeleaf渲染数据的过程中,首先用th:each遍历list,取list中的元素作为map的键,然后从map中取出对应的value来。想要在thymeleaf上渲染controller层传递过来的数据,需要使用${}来获取后台数据,例如contoller传递一个“user”到thymeleaf,需要在前端使用user.id,如下所示,可以获取到传递过来的原创 2022-01-26 18:03:23 · 565 阅读 · 0 评论 -
【小记】logback日志框架的配置和使用
2021-07-01日志在项目中必不可少,目前流行的日志框架有log4j、log4j2、logback,其中logback和log4j作者是同一个人。logback是SpringBoot默认集成的日志框架,效率高,能适应诸多的运行环境,是SLF4J门面框架的一种实现。添加依赖添加依赖:在pom文件中添加spring-boot-starter-logging<dependency> <groupId>org.springframework.boot</groupI原创 2022-01-26 18:03:05 · 187 阅读 · 0 评论 -
【实践】springboot中的重定向数据传递
2020-06-17在写springboot项目的时候,有时候会有重定向的需求,例如登录界面登录后,就应该使用重定向来进行页面的跳转。如果这时候使用的是转发的方式来进行页面的跳转的话,会出现两个问题:浏览器上的路径不会改变在主页中点击刷新时,页面会提示需要再次提交表单因为转发是通过forward()方法提交信息在多个页面之间进行传递。登陆后地址栏是需要变为主页地址的,而且也不应该出现刷新提示提交表单的现象,所以应该使用重定向来进行登录跳转。那么这就出现了一个问题,重定向的页面不能读取转向前通原创 2022-01-25 21:17:54 · 3532 阅读 · 0 评论 -
【实践】springboot上传文件
2020-05-31最近有个需求是上传文件到服务器,使用到的框架是springboot,查询资料后记录如下。1.添加基本依赖这是第一步,但一般建立springboot项目的时候能够勾选该启动依赖。<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId></dependency&原创 2022-01-25 21:17:27 · 934 阅读 · 0 评论 -
【实践】关于thymeleaf的select下拉选择框的默认选中项
2020-05-29最近在敲敲敲的过程遇到一个问题,这个问题是这样的:我需要在页面上提供用户更新信息的功能,在进入该页面前,首先获取信息,使用thymeleaf模板填充信息。前端有一个select标签,需求是显示用户之前所选中的内容。但是尝试了通过th:attr和th:if判断,都不好用,使用jquery来进行attr的设置也不好使。查阅一番才知道了解决办法:使用th:selected<select name="select" id="projecttype" class="form-contr原创 2022-01-25 21:17:04 · 9446 阅读 · 0 评论 -
【小记】有关cookie和session是什么
2020-05-26cookie? 饼干? 是的呀,这玩意儿能让人舒服~cookie大家都熟悉,例如登陆一些网站,一段时间后,就要求你重新登陆。1. cookie 和 session 简介HTTP是一种无状态的一种协议,换句话说,就是服务器记不住你,可能你每刷新一次页面,就要重新输入一次账号和密码进行登陆,这显然是让人无法接受的。cookie的作用就好比服务器给你贴个标,然后你每次向服务器再发起请求的时候,服务器能够认出是你。抽象概括一下,一个cookie可以认为是一个【变量】,形如name=va原创 2022-01-25 21:15:55 · 88 阅读 · 0 评论 -
【小记】获取客户端用户真实ip方法整理 from jekyll
由请求获取客户端ip地址的方法是request.getRemoteAddr(),在大部分的情况下该方法是有效的,但是在通过了apache、squid等反向代理软件就不能获取到客户端的真实ip了。经过代理后,由于在客户端和服务之间增加了中间层,因此服务器无法直接拿取到用户的ip地址,服务器端应用也无法直接通过转发请求的地址返回给客户端。但在转发请求的HTTP头信息中,增加了X-FORWARDED-FOR信息,用以跟踪原有客户端ip地址和原来客户端的请求的服务器地址。获取客户端真实ip地址的方法如下/**原创 2022-01-24 17:28:39 · 395 阅读 · 0 评论