前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Spring Security 入门(五):在 Spring-Boot中的应用

Spring Security 入门(五):在 Spring-Boot中的应用

作者头像
程序猿DD
发布于 2018-03-26 06:45:10
发布于 2018-03-26 06:45:10
1.6K00
代码可运行
举报
文章被收录于专栏:程序猿DD程序猿DD
运行总次数:0
代码可运行

前言

本文作为入门级的DEMO,完全按照官网实例演示;

项目目录结构

Maven 依赖

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.4.1.RELEASE</version>
  </parent>

  <dependencies>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-security</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-thymeleaf</artifactId>
    </dependency>
  </dependencies>

前端页面 home.html

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org">
<head>
    <title>Spring Security Example</title>
</head>
<body>
  <h1>Welcome!</h1>
  <p>Click <a th:href="@{/hello}">here</a> to see a greeting.</p>
</body>
</html>

前端页面 login.html

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org">
<head>
    <title>Spring Security Example </title>
</head>
<body>
<div th:if="${param.error}">    Invalid username and password.</div>
<div th:if="${param.logout}">    You have been logged out.</div>
<form th:action="@{/login}" method="post">    
    <div><label> UserName: <input type="text" name="username"/> </label></div>
    <div><label> Password: <input type="password" name="password"/> </label></div>
    <div><input type="submit" value="Sign In"/></div>
</form>
</body>
</html>

前端页面 hello.html

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org">
<head>
    <title>Hello World!</title>
</head>
<body>
<h1 th:inline="text">Hello [[${#httpServletRequest.remoteUser}]]!</h1>
<form th:action="@{/logout}" method="post">
    <input type="submit" value="Sign Out"/>
</form>
</body>
</html>

启动程序 Application.java

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
@SpringBootApplication
public class Application {
  public static void main(String[] args) {
    SpringApplication.run(Application.class, args);
  }
}

HomeController.java

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
@Controller
public class HomeController {
  @RequestMapping("/")
  public String home(){
    return "home";  
  }

  @RequestMapping("/login")
  public String login(){
    return "login";
  }

  @RequestMapping("/hello")
  public String hello(){
    return "hello";
  }
}

Web安全配置 WebSecurityConfig.java

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
@Configuration
@EnableWebSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
  @Override
  protected void configure(HttpSecurity http) throws Exception {
    http
      .authorizeRequests()
        .antMatchers("/").permitAll()                      //请求路径"/"允许访问
        .anyRequest().authenticated()                      //其它请求都需要校验才能访问
      .and()
        .formLogin()
          .loginPage("/login")                             //定义登录的页面"/login",允许访问
          .permitAll()
      .and()
        .logout()                                           //默认的"/logout", 允许访问
          .permitAll();
  }
  @Autowired
  public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {
    //在内存中注入一个用户名为anyCode密码为password并且身份为USER的对象
    auth
      .inMemoryAuthentication()
        .withUser("anyCode").password("password").roles("USER");
  }
}
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-01-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序猿DD 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
光纤接口有哪几种,从四个角度介绍
众所周知,光纤接口类型多样,但是他们到底有哪几种,有什么特点和适用什么场景呢?阿祥今天按连接器(LC/SC/ST等)、传输模式(单模/多模)、应用场景(电信/数据中心/家庭)等分类介绍,帮助粉丝们了解如何选型合适的光纤。
ICT系统集成阿祥
2025/04/04
1640
光纤接口有哪几种,从四个角度介绍
数据中心布线:12芯光缆和8芯光缆的选择
说到光缆连接,人们会根据光缆使用的连接器类型和光纤芯数运用各种术语加以描述。2 芯光 缆比较容易理解和辨识。使用 2 芯连接时,光缆以两根光纤为增量,例如常见的 LC 双工或 SC 双工连接器。
晟科通信
2020/06/10
2.6K0
数据中心布线:12芯光缆和8芯光缆的选择
光模块7种标准:GBIC、SFP、SFP+、SFP28、QSFP、QSFP+、QSFP28有什么区别?
本文将为大家介绍什么是GBIC、SFP、SFP+、SFP28、QSFP、QSFP+和QSFP28以及它们之间的区别。
网络技术联盟站
2023/03/02
19K0
光模块7种标准:GBIC、SFP、SFP+、SFP28、QSFP、QSFP+、QSFP28有什么区别?
数据中心40G QSFP+ SR4与40G QSFP+ LR4光模块的选择
40G QSFP+光模块具有四个独立的全双工收发通道,是四通道小型可插拔光模块,这种四通道的接口传输速率可高达40Gbps。QSFP光模块的密度是XFP光模块的4倍、SFP+光模块的3倍,作为一种光纤解决方案,满足了高密度高速率传输的需求。
易天光通信
2019/03/25
8430
数据中心40G QSFP+ SR4与40G QSFP+ LR4光模块的选择
关于光模块,看这一篇就够啦!
随着光通信的高速发展,现在我们工作和生活中很多场景都已经实现了“光进铜退”。也就是说,以同轴电缆、网线为代表的金属介质通信,逐渐被光纤介质所取代。
鲜枣课堂
2020/01/14
4.1K0
关于光模块,看这一篇就够啦!
OM5光纤跳线对比OM3/OM4有哪些优势?
光通信中“OM”是指“Optical Multi-mode”,光模式,是多模光纤表示光纤等级的标准。目前,TIA和IEC定义的光纤跳线标准有OM1, OM2, OM3, OM4, 以及OM5。
亿源通科技HYC
2019/09/12
1.4K0
OM5光纤跳线对比OM3/OM4有哪些优势?
800G光模块的分类
800G光模块今年开始量产,由于ChatGPT等AI技术的爆发,进一步增加了市场对800G光模块的需求。这篇笔记梳理下800G光模块的信息,方便大家参考。
光学小豆芽
2023/09/02
2.7K0
800G光模块的分类
MPO(高密度光纤连接器)产业链投资机会梳理
在AI数据中心的高速发展中,高效的连接解决方案至关重要。MPO(Multi-fiber Push On)连接器因其高密度和多纤连接能力,成为AI数据中心的核心组件。
AIGC部落
2025/03/31
1000
MPO(高密度光纤连接器)产业链投资机会梳理
优化800G数据中心:高速线缆、有源光缆和光纤跳线解决方案
随着技术的飞速发展,数据中心正在从100G和400G演进到800G时代,对高速数据传输的需求与日俱增。因此,选择高效且可靠的布线解决方案对于800G数据中心至关重要。本文将深入探讨800G数据中心的三大主流布线解决方案——高速线缆(DAC)、有源光缆(AOC)和光纤跳线,并分析它们如何提高性能并支持现代数据中心不断增长的需求。
通信产品推荐官
2025/03/24
1070
优化800G数据中心:高速线缆、有源光缆和光纤跳线解决方案
最新MPO光模块产品分类介绍
最新MPO光模块分类汇总,先给大家介绍一下什么MPO光模块?MPO光模块是指接口采用MPO连接器的光模块,通常与MPO光纤跳线搭配使用,MPO连接器还有公头和母头之分。光模块MPO接口的一般都是采用公头类型,相反MPO光纤跳线用来连接光模块的则是母头,简单理解就是公母搭配。
易天光通信
2019/05/29
1.6K0
全方位解析40G QSFP+ SR4光模块(QSFP-40G-SR4)
40G QSFP+ SR4光模块是40G以太网短距离传输的优选解决方案,当然40G DAC高速线缆和40G AOC光缆价格更有优势,能满足40G数据中心机房搭建需求,不同方案不同选择!接下来易天光通信(ETU-LINK)通过模块封装类型、传输速率、传输距离、接口类型和激光器类型来全方位解析QSFP-40G-SR4光模块。
易天光通信
2019/03/14
1.4K0
全方位解析40G QSFP+ SR4光模块(QSFP-40G-SR4)
漫谈多模光纤类型:OM1、OM2、OM3、OM4、OM5,深度好文,值得阅读!
多模光纤是在 LAN 企业和数据中心应用所需的距离上实现 10 Gbit/s 速度的常见选择,有多种多模光纤类型可用于高速网络安装,每一种都具有不同的覆盖范围和数据速率能力。有这么多选择(OM1、OM2、OM3、 OM4、OM5),选择最合适的多模光纤可能很困难。本文就带大家了解一下相关内容。
网络技术联盟站
2022/01/05
6.6K0
漫谈多模光纤类型:OM1、OM2、OM3、OM4、OM5,深度好文,值得阅读!
三种封装形式下的400G光模块概述
5G时代的到来,催生了4K高清视频,多维视频,高性能计算等各种领域的应用,从而大带宽、高并发比、及时性高要求促使网络流量通道底座的升级迭代,以实现更高效率的数据传输。采用的100G链路叠加,但是已有的光纤资源跟不上带宽要求的增长,因此更大带宽出入口的要求更加明显。从200G过渡到400G,事实证明不管是在数据中心的应用还是在长距离波分技术设备传输上,400G的端口增长的速度都是相当可观的。400G端口技术可以大幅度的提高链路传输效率,提升网络带宽,帮助大型互联网公司和运营商应对流量爆发式增长而带来的问题。
武汉格凌科技
2024/11/11
2400
三种封装形式下的400G光模块概述
一秒知道光纤、光缆、跳线、尾纤、连接器类型
光纤是由二氧化硅玻璃经复杂的工艺拉制而成,简单的说就是一种高度透明的玻璃丝,它又全称为光导纤维。
亿源通科技HYC
2021/05/17
1.8K0
一秒知道光纤、光缆、跳线、尾纤、连接器类型
40G光模块介绍及常见问题探讨
40G QSFP+光模块符合QSFP+MSA SFF-8436和IEEE 802.3ba标准性。40G多模光模块采用OM3多模光纤传输距离可达300M,采用OM4多模光纤传输距离可达400M。40G单模光模块最大传输距离可达40KM,40G QSFP+光模块在数据中心、云计算、高性能计算和电信运营商等场景有着广泛应用
武汉格凌科技
2024/11/25
1740
40G光模块介绍及常见问题探讨
光纤光缆基础知识二十问
光纤纤芯和包层是由不同折射率的玻璃组成,中心为高折射率玻璃纤芯(掺锗二氧化硅),中间为低折射率硅玻璃包层(纯二氧化硅)。光以一特定的入射角度射入光纤,在光纤和包层间发生全发射(由于包层的折射率稍低于纤芯),从而可以在光纤中传播。涂覆层的主要作用是保护光纤不受外界的损伤,同时又增加光纤的柔韧性。正如前面所述,纤芯和包层都是玻璃材质,不能弯曲易碎,涂覆层的使用则起到保护并延长光纤寿命的作用。
亿源通科技HYC
2021/05/28
1.6K0
光纤光缆基础知识二十问
400G光模块的3种封装(QSFP-DD、OSFP、CFP8)
光模块封装形式具有三个共同特点:外形小巧、功耗低、可与所有系统供应商互操作。了解 100G光模块市场的发展将有助于我们理解400G技术的引入。服务提供商需要可插拔光模块来实现长距离和专用技术,例如相干检测。数据中心团队需要一种低功耗、低成本的短距离(最长2KM)应用解决方案。CFP外形是第一款100G可插拔收发器,支持短距离和长距离应用,但体积非常大,功耗很高(12W)。随着技术和组件在尺寸和功耗方面的改进,较小的CFP2和CFP4被引入市场。尽管技术不断进步,但目前100G和200G的嵌入式相干技术仍然只能在CFP和CFP2外形尺寸上使用。与此同时,超大规模数据中心对额外带宽容量的需求巨大,推动了QSFP28外形尺寸用于各种短距离应用(DAC、PSM4、CWDM4和SR4)。QSFP28得到了广泛采用,并且比CFP外形尺寸更小,功耗更低。
武汉格凌科技
2024/11/04
1.7K0
400G光模块的3种封装(QSFP-DD、OSFP、CFP8)
网络设备硬核技术内幕 交换机篇 9 SuperStar
而在海峡对岸,三个美丽的姑娘还在到处寻觅自己的另一半,希望找到自己的Superstar。
用户8289326
2022/07/27
8980
网络设备硬核技术内幕 交换机篇 9 SuperStar
弱电工程师,25G 以太网与 40G 以太网:你选择哪个?
在当今不断发展的数据中心中,带宽需求的增长可以通过向更高传输速度-100G 的转变来实现。要升级到100G,有两种方法:
网络技术联盟站
2021/09/06
1.2K0
弱电工程师,25G 以太网与 40G 以太网:你选择哪个?
基于 400Gbps 100G-PAM4 OSFP 和 QSFP112 的线缆和光模块之IB网络连接
‌NVIDIA LinkX‌是指英伟达提供的一系列网络连接解决方案,主要用于高性能计算(HPC)和数据中心环境。LinkX涵盖了多种产品,包括连接交换机、网卡等设备的线缆和光模块,支持从100Gb/s EDR(Enhanced Data Rate增强速率)到200Gb/s HDR(High-Dynamic Range高动态光照渲染)再到最新的400Gb/s NDR(Next Data Rate最新的速率)速率。适用于100G/ 200G/ 400G 和 800G 基础设施的 InfiniBand 和以太网互连。这个网络架构中的光模块、有源光缆和DAC堆叠线缆具有非常出色的低延时、低功耗和可靠性,适用于AI和加速计算。接下来我们重点看看400Gbps 100G-PAM4 OSFP 和 QSFP112 的线缆和光模块在这个网络解决方案中的连接是怎么样的?
武汉格凌科技
2025/01/13
2210
基于 400Gbps 100G-PAM4 OSFP 和 QSFP112 的线缆和光模块之IB网络连接
推荐阅读
相关推荐
光纤接口有哪几种,从四个角度介绍
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验