文章目录《SpringBoot与Shiro整合-权限管理实战》---- 从构建到模拟数据库登入---- [点击下载源码](https://github.com/lihuate/demo_01.git)---- [或者查看?](https://github.com/lihuate/demo_01.git)课程大纲1. 课程内容简介1.1. 内容简介1.2. 课程目标1.3. 课程相关软件2. Sp
转载 2024-06-19 19:39:46
22阅读
写在前面:2020年2月29号修改该文章,之前针对302鉴权失败问题的解决方案存在 “WebUtils.toHttp 往返回response写返回值的时候出现回写跨域问题”。现已进行更正。近期项目需要前后端分离,由于前后端分离后原来的适用的shiro配置无法满足现有系统要求。同时在前后端项目分离的项目中存在的跨域问题,cookies不再使用,通过token方式实现用户登陆鉴权。下面记录在整个过程中
转载 2024-03-21 09:42:04
287阅读
目录环境基本介绍pom.xml启动器依赖管理机制分析为什么导入starter-web所有相关依赖都导入进来?为什么版本号都不用写?自定义版本号第三方的依赖总结自动配置机制理解默认的包扫描规则配置默认值按需加载自动配置总结自动配置流程问题流程步骤流程总结总结起来:自动配置原理核心技能常用注解组件注册使用条件注解属性绑定YAML配置文件基本语法日志配置说明SpringBoot怎么把日志默认配置好的日
AOP 代理模式引入: 静态代理模式:dao层 1-1-0 接口:UserDaopackage com.kuang.w.demo02.dao; public interface UserDao { /** * class add() */ void add(); /** * class upTable */ void upTa
转载 10月前
14阅读
1. Spring 的生态圈Spring 官网地址:Spring | Homehttps://spring.io/进入官网首页,可以看到Spring能做什么:1. Microservices: 微服务开发。把大型应用拆分成一个个微小的功能模块,每一个微小的功能模块就是一个微服务。2. Reactive: 响应式编程。基于异步非阻塞的方式, 整个应用之间构建异步数据流的方式,异步数据流运行占用少量的
Spring Boot 异常处理与单元测试一、 SpringBoot 中异常处理方式1、SpringBoot 中对于异常处理提供了五种处理方式1.1自定义错误页面 SpringBoot 默认的处理异常的机制:SpringBoot 默认的已经提供了一套处理异常的机制。 一旦程序中出现了异常 SpringBoot 会像/error 的 url 发送请求。在 springBoot 中提供了一个 叫 Ba
转载 2024-03-21 08:47:31
0阅读
7. Actuator启用Actuator,你只要在build.gradle中加入:compile 'org.springframework.boot:spring-boot-starter-actuator'Spring Boot Actuator提供了一系列RESTful接口:HTTP方法路径描述GET/beansSpring应用上下文中所有bean以及它们之间的依赖关系GET/autocon
SpringBoot异常处理 做Web应用的时候,请求处理过程中发生错误是非常常见的情况。Spring Boot提供了一个默认的映射:/error,当处理中抛出异常之后,会转到该请求中处理,并且该请求有一个全局的错误页面用来展示异常内容。但是页面很不友好,我们需要发送给一些参数让前端开发者识别就可以了。 1.状态码抛异常 处理Web请求时引发的任何未处理的异常都会导致服务器返回HTTP 500响
CRUD中遇到的知识点整理表单重复提交问题不经过登录直接来到某一页面的问题----拦截器我们这里的拦截器拦截的路径是/** :任意多层路径下的所有请求都会被拦截,那么静态资源就会被拦截如何解决静态资源被拦截器拦截的问题拦截器步骤总结拦截器原理thymeleaf可以通过抽取部分重复模板片段,减少重复工作量任何一个页面,如果想要被thymeleaf模板引擎解析,都必须在对应页面引入模板引擎的th名称
Spring Boot学习(4)REST风格简介:按照REST风格访问资源时使用行为动作区分对资源进行了何种操作 http://localhost:0000/users 查询全部用户信息 GET(查询) http://localhost:0000/users/1 查询指定用户信息 GET(查询) http://localhost:0000/users 添加用户信息 POST(新增/保存)
转载 2024-04-04 12:03:38
55阅读
一、ajax提交form表单和不同的form表单的提交主要区别在于,ajax提交表单是异步提交的,而普通的是同步提交的表单。通过在后台与服务器进行少量数据交换,ajax 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。传统普通的网页(不使用ajax)如果需要更新内容,必须重载整个网页页面。二、通过ajax提交form实现的登录实例:<body>
前面介绍了spring web篇数据返回的几种常用姿势,当我们在相应一个http请求时,除了直接返回数据之外,还有另一种常见的case -> 重定向;比如我们在逛淘宝,没有登录就点击购买时,会跳转到登录界面,这其实就是一个重定向。本文主要介绍对于后端而言,可以怎样支持302重定向 I. 环境搭建首先得搭建一个web应用才有可能继续后续的测试,借助SpringBoot搭建一个web
302 Found请求的资源现在临时从不同的URI响应请求。由于这样的重定向是临时的,客户端应当继续向原有地址发送以后的请求。只有在Cache-Control或Expires中进行了指定的情况下,这个响应才是可缓存的。新的临时性的URI应当在响应的Location域中返回。除非这是一个HEAD请求,否则响应的实体中应当包含指向新的URI的超链接及简短说明。如果这不是一个GET或者HEAD请求,那么
200105-SpringBoot 系列 web 篇之自定义返回 Http Code 的 n 种姿势虽然 http 的提供了一整套完整、定义明确的状态码,但实际的业务支持中,后端并不总会遵守这套规则,更多的是在返回结果中,加一个 code 字段来自定义业务状态,即便是后端 5xx 了,返回给前端的 http code 依然是 200那么如果我想遵守 http 的规范,不同的 case 返
重定向与请求转发SpringMVC 默认采用服务器内部转发的形式展示页面信息。同样也支持重定向页面。重定向重定向是发一个302的状态码给浏览器,浏览器自己去请求跳转的网页。地址栏会发生改变。重定向以 redirect: 开头package com.xxxx.springmvc.controller; import org.springframework.stereotype.Controller
1:页面呈现常见的错误页面这个空白页面主要包括 默认错误路径、时间戳、错误提示消息 和错误状态码但如果我们使用其他的客户端(非浏览器),例如 Postman工具 发送 http://127.0.0.1:8080/noPage 请求时,默认响应客户端的是JSON数据,如下图所示响应完整信息如上图2:原理分析出现上面的两种默认效果的原因是 SpringBoot容器为我们自动配置了 错误处理自
转载 2024-01-10 15:56:07
62阅读
解决前后端分离Vue项目部署到服务器后出现的302重定向问题问题描述问题原因定位问题解决方案校验修改效果相关阅读写在最后 问题描述最近发现自己开发的vue前后端分离项目因为使用了spring security 安全框架,即使在登录认证成功之后再调用一些正常的接口总是会莫名奇妙地出现302重定向的问题,导致接口数据出不来。奇怪的是这个问题在本地开发环境并没有,而是部署到了服务器之后才会有。 接口无
    当控制器方法返回的String值以“redirect:”开头的话,那么这个String不是用来查找视图的,而是用来指导浏览器进行重定向的路径。如:    当一个处理器方法完成之后,该方法所指定的模型数据将会复制到请求中,并作为请求中的属性,请求会转发(forward)到视图上进行渲染。因为控制器方法和视图所处理
1、默认规则默认情况下,Spring Boot提供/error处理所有错误的映射对于浏览器客户端,响应一个“ whitelabel”错误视图,以HTML格式呈现相同的数据。对于其它的一些客户端,它将生成JSON响应,其中包含错误,HTTP状态和异常消息的详细信息 对于 “ whitelabel”错误视图,是springboot默认提供的处理/error请求的BasicErrorContr
1、前言  上个周末的时候,在方志朋老师的公众号上看见了一篇《教你用纯Java实现一个网页版的Xshell(附源码)》的文章,非常感兴趣,这不正好这周六稍有闲时,就好好的研究了研究,顺便记录一下学习心得。   github项目开源地址:https://github.com/NoCortY/WebSSH,感兴趣的童鞋们,可以自己运行该项目,需要注意的是:首先,环境需要运行在一个可以使用Xshell的
转载 2024-06-21 18:49:26
25阅读
  • 1
  • 2
  • 3
  • 4
  • 5