- 实战:十分钟实现基于JWT前后端分离的权限框架
生命在于折腾_355a
##前言面试过很多Java开发,能把权限这块说的清楚的实在是不多,很多人因为公司项目职责问题,很难学到这类相关的流程和技术,本文梳理一个简单的场景,实现一个基于jwt前后端分离的权限框架。##简易流程###登录获取票据和缓存信息freemaker模版技术,0个代码不用写,生成完整的一个模块,带页面、建表sql脚本、处理类、service等完整模块2.多数据源:(支持同时连接无数个数据库,可以不同的模块连接不同数的据库)支持N个数据源3.阿里数据库连接池druid,安全权限框架shiro(菜单权限和按钮权限),缓存框架ehcache4.
- Pikachu靶场之越权漏洞详解
caker丶
网络安全pikachu安全web安全逻辑越权漏洞网络安全系统安全
Pikachu靶场之越权漏洞详解前言逻辑越权漏洞简述漏洞描述漏洞原因漏洞分类水平越权垂直越权权限框架缺陷如何防御第一关水平越权问题分析尝试防御第二关垂直越权问题分析尝试防御前言本篇文章用于巩固对自己逻辑越权漏洞的学习总结,其中部分内容借鉴了以下博客。链接:pikachuUnsafeFileupload不安全的文件上传(pikachuOverpermission越权(皮卡丘漏洞平台通关系列))链接:
- springboot实现SpringSecurity权限框架《附带项目地址》
@Jerry-
springbootjava后端
1、SpringSecurity简介:Spring是非常流行和成功的Java应用开发框架,SpringSecurity正是Spring家族中的成员。SpringSecurity基于Spring框架,提供了一套Web应用安全性的完整解决方案。2、基本功能:主要功能是“认证”和“授权”,Web应用的安全性包括**用户认证(Authentication)和用户授权(Authorization)**两个部
- springboot shiro jwt实现认证和授权
tomorrow.hello
Shiro授权认证springbootjavaspring
1.shiro,jwt,oauth2.0是什么?Shiro:权限框架,可在C/S下运行。shiro是一套权限管理框架,包括认证、授权等,在使用时直接写相应的接口(小而简单的Shiro就足够)jwt:是一个鉴权生成加密token的一个名称。oauth2.0:一种权限实现标准,是一种安全的授权框架,提供了一套详细的授权机制。用户或应用可以通过公开的或私有的设置,使用第三方认证和授权。Shiro有三大核
- springboot整合shiro实现认证和授权功能(非常详细)
沐雨橙风ιε
springbootjava后端
Shiro和SpringSecurity应该是我们比较常用的权限框架了,这篇文章教大家怎么通过springboot整合shiro从零开始搭建一个包含权限控制的后台管理系统。目录第一步:创建springboot项目第二步:添加maven的依赖第三步:修改配置文件第四步:创建数据库表第五步:创建表user对应类第六步:创建UserRealm第七步:创建Shiro配置类第八步:实现登录功能控制器层业务层
- Spring 整合Shiro鉴权授权
杀了小惠
springboot后端java
一、什么是Shiroshiro是apache的一个开源框架,是一个权限管理的框架,实现用户认证、用户授权。spring中有springsecurity,是一个权限框架,它和spring依赖过于紧密,没有shiro使用简单。shiro不依赖于spring,shiro不仅可以实现web应用的权限管理,还可以实现c/s系统,分布式系统权限管理,shiro属于轻量框架,越来越多企业项目开始使用shiro,
- 开箱即用的企业级前后端分离【.NET Core6.0 Api + Vue 2.x + RBAC】权限框架-Blog.Core
追逐时光者
.NETCore.NET开源项目.netcorevue.js前端
前言今天要给大家推荐一个开箱即用的企业级前后端分离【.NETCore6.0Api+Vue2.x+RBAC】权限框架(提高生产效率,快速开发就选它):Blog.Core。推荐原因Blog.Core通过详细的文章和视频讲解,将知识点各个击破,入门ASP.NetCore不再难。项目功能完善,并且采用流行的前后端分离架构,代码完整开箱即用,能够帮助到那些想要学习.NETCore和Vue编写项目的同学。项目
- 手撸 Java Web RBAC 权限管理
一份执着_
前言权限管理是在项目中经常要使用到的模块,有着极其重要的功能。在Java帝国中有两个比较出名的权限框架,分别为Shiro和SpringSecurity,两者各有优缺,但这不是本篇要讨论的重点,这次我们不用任何权限框架来实现RBAC权限管理。本文所有代码下载地址:https://github.com/zhaojun1998/Premission-StudyRBAC简介RBAC(Role-BasedA
- SpringBoot 自定义切面只在controller生效的问题
染的人
JavaspringBoot开发笔记springjavaspringbootaop
前几天在一个SpringBoot项目中,封装一个基于注解的切面功能,在测试过程中,发现这个切面逻辑在Service层使用,无论如何都进入不了其中的业务逻辑,但是在Controller层是正常使用。在几番确认Aop配置无误的情况下,通过各种查找资料,最后找到了解决方法。这个项目的权限框架采用Shiro,在自定义实现AuthorizingRealm的UserRelam类中,给注入的Sevice类加上@
- SpringBoot+Shiro权限框架
Hiseico
[TOC]本文主要记录SpringBoot与Shiro进行整合使用,实现强大的用户权限管理,其中涉及如何完成用户认证(即用户登录),用户授权,thymeleaf页面整合shiro权限标签等知识点。SpringBoot与Shiro框架简介SpringBoot框架简介Spring的诞生是Java企业版(JavaEnterpriseEdition,JEE,也称J2EE)的轻量级代替品。无需开发重量级的E
- java 权限框架 ij配置Shiro
中年程序员一枚
java开发语言intellij-idea
Shiro是一个Java平台的开源权限框架,用于认证和访问授权。具体来说,满足对如下元素的支持:用户,角色,权限(仅仅是操作权限,数据权限必须与业务需求紧密结合),资源(url)。用户分配角色,角色定义权限。访问授权时支持角色或者权限,并且支持多级的权限定义。在Shiro中有三个核心组件:Subject,SecurityManager,RealmSubject本质上就是当前访问用户的抽象描述。Se
- SpringBoot整合SpringSecurity认证与授权
全栈小白.
Java全栈开发SpringBootspringboot后端java
唠嗑部分在项目开发中,权限认证是很重要的,尤其是一些管理类的系统,对于权限要求更为严格,那么在Java开发中,常用的权限框架有哪些呢?推荐的有两种,Shiro与SpringSecurity,当然也可以结合切面自己实现Shiro是Apache开源的一款权限框架,比较轻量级,简单容易学,但是不能在其中注入Spring中的容器BeanSpringSecurity是Spring生态中的一个组件,比较重量级
- springboot整合spring-security(权限框架)
豆豆的java之旅
springboot整合java前端spring
一.准备工作1.创建maven工程创建导入jar包org.springframework.bootspring-boot-starter-parent2.2.3.RELEASEorg.springframework.bootspring-boot-starter-weborg.springframework.bootspring-boot-starter-thymeleaforg.springfr
- java权限框架_Shiro(Java权限框架)入门
没名字的女人
java权限框架
什么是Shiro?ApacheShiro是一个强大且易用的Java安全框架,执行身份验证、授权、密码和会话管理。使用Shiro的易于理解的API,您可以快速、轻松地获得任何应用程序,从最小的移动应用程序到最大的网络和企业应用程序。shiro不依赖于spring,shiro不仅可以实现web应用的权限管理,还可以实现c/s系统,分布式系统权限管理,shiro属于轻量框架,越来越多企业项目开始使用sh
- 一个Java的权限框架-Shiro
秦 羽
#SpringBootjava安全开发语言
Shiro\textcolor{Orange}{Shiro}Shiro学习过程中的笔记,方便查阅学习\textcolor{green}{学习过程中的笔记,方便查阅学习}学习过程中的笔记,方便查阅学习笔记总结来源于视频B站狂神说\textcolor{green}{笔记总结来源于视频B站狂神说}笔记总结来源于视频B站狂神说欢迎各位小伙伴关注点赞⭐️收藏留言Shiro1.shiro简介2.快速实践3.S
- 权限框架之Shiro详解
Dream_ling
记录springbootshiro
文章大纲一、权限框架介绍二、Shiro基础介绍三、SpringBoot整合Shiro代码实战四、项目源码与资料下载五、参考文章一、权限框架介绍1.什么是权限管理 权限管理属于系统安全的范畴,权限管理实现对用户访问系统的控制,按照安全规则或者安全策略控制用户可以访问而且只能访问自己被授权的资源。 权限管理包括用户身份认证和授权两部分,简称认证授权。对于需要访问控制的资源用户首先经过身份认证,认证
- springboot整合shiro实现前后端分离,兼容最新的jakarta的依赖包(片尾推荐当前最好用的权限框架)
江南一舟110
springboot后端java
1.简单的用法如下inirealm方式//1.创建数据源RealmDefaultSecurityManagerdefaultSecurityManager=newDefaultSecurityManager();Iniini=Ini.fromResourcePath("classpath:shiro.ini");defaultSecurityManager.setRealm(newMyRealm(
- springboot mybatis 后台框架平台 集成代码生成器 shiro 权限
开心漠少君
1.代码生成器:[正反双向](单表、主表、明细表、树形表,快速开发利器)+快速表单构建器freemaker模版技术,0个代码不用写,生成完整的一个模块,带页面、建表sql脚本、处理类、service等完整模块2.多数据源:(支持同时连接无数个数据库,可以不同的模块连接不同数的据库)支持N个数据源3.阿里数据库连接池druid,安全权限框架shiro(菜单权限和按钮权限),缓存框架ehcache4.
- 记录springboot中使用springsecurity一些注意和需要理解的地方
所执者唯己
javaspringbootsecurityspringsecuritysecurity框架springbootjwttoken
前几天在springboot中使用了下springsecurity做下记录,先简单介绍下securitysecurity是spring的一个安全权限框架无论是之前的单系统还是现在的前后端分离都可以很好的集成使用,主要分为三块内容1.认证2.鉴权3.安全防护认证是在用户第一次登录的时候(因为加了token,用的jwt),需要首先去认证,并生成token,这个token的处理可以放在redis并设置超
- spring boot 前后端分离整合shiro(一)快速上手
非正常编码
shiro学习javaspringbootshiro前后端分离权限
springboot前后端分离整合shiro(一)快速上手前言第一次写博客,可能有些地方表达不是很好,不对的地方欢迎大家指出。shiro简介shiro是apache的一个权限框架,相比springsecurity更简单易用。在使用shiro前一定要对它执行的一个基本流程、内部组件有一个大概的了解。shiro中有三个重要的概念:Subject主体。可以是一个程序、一个用户,用来表示当前登录的对象。我
- springMvc自定义拦截器
xyang_1128
框架的学习
其实最初我是不想这篇文章的,因为我个人感觉拦截器没什么用,如果是需要权限拦截的话,完成可以使用现成的权限框架,比如shiro,不是因为我懒,因为我们自己去写的话肯定会有一堆问题,没那个必要,但是考虑到以后可能会自己写些拦截器这方面的东西,还是写一下巩固一下印象把....创建一个拦截器importorg.slf4j.Logger;importorg.slf4j.LoggerFactory;impor
- 深入理解Spring Security授权机制原理
朱季谦
SpringSecurityjavaspring
原创/朱季谦在SpringSecurity权限框架里,若要对后端http接口实现权限授权控制,有两种实现方式。一、一种是基于注解方法级的鉴权,其中,注解方式又有@Secured和@PreAuthorize两种。@Secured如:1@PostMapping("/test")2@Secured({WebResRole.ROLE_PEOPLE_W})3publicvoidtest(){4......5
- shiro入门
心动的代码~
原创shiro入门
前言简单的来说:ApacheShiro是Java的一个安全框架。功能强大,使用简单的Java安全框架,它为开发人员提供一个直观而全面的认证,授权,加密及会话管理的解决方案。Shiro简介1.什么是shiroshiro是apache的一个开源框架,是一个权限管理的框架,实现用户认证、用户授权。spring中有springsecurity(原名Acegi),是一个权限框架,它和spring依赖过于紧密
- Shiro快速入门
Lin-Cheng
经验记录shiro
Shiro快速入门1、前言1.1什么是Shiro1.2shiro有哪些功能1.3shiro架构2、快速入门1、前言1.1什么是Shiroshiro是apache的一个开源框架,是一个权限管理的框架,实现用户认证、用户授权。spring中有springsecurity(原名Acegi),是一个权限框架,它和spring依赖过于紧密,没有shiro使用简单。shiro不依赖于spring,shiro不
- Shiro权限框架 01(shiro框架入门)
一杯咖啡.
springmybatisjavaidea
目录一、Shiro简介1.1、什么是shiro?1.2、在应用程序角度来观察如何使用Shiro完成工作?1.3、Shiro架构shiro功能简介:Shiro核心架构图:二、Shiro入门案例准备工作:1、导入相关依赖2、编写shiro.ini文件(Shiro框架的配置文件)3、使用Shiro4、Shiro与Web容器集成①在web.xml中进行shiro过滤器配置②添加配置文件shiro-web.
- 【腾讯云 Cloud Studio 实战训练营】使用Cloud Studio构建SpringSecurity权限框架
小鲍侃java
优秀的开源项目/架构介绍腾讯云javaspringboot
1.CloudStudio(云端IDE)简介CloudStudio是基于浏览器的集成式开发环境(IDE),为开发者提供了一个永不间断的云端工作站。用户在使用CloudStudio时无需安装,随时随地打开浏览器就能在线编程。CloudStudio作为在线IDE,包含代码高亮、自动补全、Git集成、终端等IDE的基础功能,同时支持实时调试、插件扩展等,可以帮助开发者快速完成各种应用的开发、编译与部署工
- Spring Security + jwt 实现安全控制
城南码农
权限系统是每个系统必不可少的一部分,我们可以自己实现根据自己的需求采用不同的技术方案。最近在我们的管理后台尚使用了SpringSecurity+JWT实现了后台的权限系统,包括用户登录,角色分配,鉴权与授权。理解权限框架本质有哪些技术方案?业内通用的做法有Shiro,SpringSecurity,还有很多公司自己实现的基于url拦截的权限框架。从个人使用体验上来说,有好用的轮子就应该选择用经过很多
- java数字签名三种方式
知了ing
javajdk
以下3钟数字签名都是基于jdk7的
1,RSA
String password="test";
// 1.初始化密钥
KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance("RSA");
keyPairGenerator.initialize(51
- Hibernate学习笔记
caoyong
Hibernate
1>、Hibernate是数据访问层框架,是一个ORM(Object Relation Mapping)框架,作者为:Gavin King
2>、搭建Hibernate的开发环境
a>、添加jar包:
aa>、hibernatte开发包中/lib/required/所
- 设计模式之装饰器模式Decorator(结构型)
漂泊一剑客
Decorator
1. 概述
若你从事过面向对象开发,实现给一个类或对象增加行为,使用继承机制,这是所有面向对象语言的一个基本特性。如果已经存在的一个类缺少某些方法,或者须要给方法添加更多的功能(魅力),你也许会仅仅继承这个类来产生一个新类—这建立在额外的代码上。
- 读取磁盘文件txt,并输入String
一炮送你回车库
String
public static void main(String[] args) throws IOException {
String fileContent = readFileContent("d:/aaa.txt");
System.out.println(fileContent);
- js三级联动下拉框
3213213333332132
三级联动
//三级联动
省/直辖市<select id="province"></select>
市/省直辖<select id="city"></select>
县/区 <select id="area"></select>
- erlang之parse_transform编译选项的应用
616050468
parse_transform游戏服务器属性同步abstract_code
最近使用erlang重构了游戏服务器的所有代码,之前看过C++/lua写的服务器引擎代码,引擎实现了玩家属性自动同步给前端和增量更新玩家数据到数据库的功能,这也是现在很多游戏服务器的优化方向,在引擎层面去解决数据同步和数据持久化,数据发生变化了业务层不需要关心怎么去同步给前端。由于游戏过程中玩家每个业务中玩家数据更改的量其实是很少
- JAVA JSON的解析
darkranger
java
// {
// “Total”:“条数”,
// Code: 1,
//
// “PaymentItems”:[
// {
// “PaymentItemID”:”支款单ID”,
// “PaymentCode”:”支款单编号”,
// “PaymentTime”:”支款日期”,
// ”ContractNo”:”合同号”,
//
- POJ-1273-Drainage Ditches
aijuans
ACM_POJ
POJ-1273-Drainage Ditches
http://poj.org/problem?id=1273
基本的最大流,按LRJ的白书写的
#include<iostream>
#include<cstring>
#include<queue>
using namespace std;
#define INF 0x7fffffff
int ma
- 工作流Activiti5表的命名及含义
atongyeye
工作流Activiti
activiti5 - http://activiti.org/designer/update在线插件安装
activiti5一共23张表
Activiti的表都以ACT_开头。 第二部分是表示表的用途的两个字母标识。 用途也和服务的API对应。
ACT_RE_*: 'RE'表示repository。 这个前缀的表包含了流程定义和流程静态资源 (图片,规则,等等)。
A
- android的广播机制和广播的简单使用
百合不是茶
android广播机制广播的注册
Android广播机制简介 在Android中,有一些操作完成以后,会发送广播,比如说发出一条短信,或打出一个电话,如果某个程序接收了这个广播,就会做相应的处理。这个广播跟我们传统意义中的电台广播有些相似之处。之所以叫做广播,就是因为它只负责“说”而不管你“听不听”,也就是不管你接收方如何处理。另外,广播可以被不只一个应用程序所接收,当然也可能不被任何应
- Spring事务传播行为详解
bijian1013
javaspring事务传播行为
在service类前加上@Transactional,声明这个service所有方法需要事务管理。每一个业务方法开始时都会打开一个事务。
Spring默认情况下会对运行期例外(RunTimeException)进行事务回滚。这
- eidtplus operate
征客丶
eidtplus
开启列模式: Alt+C 鼠标选择 OR Alt+鼠标左键拖动
列模式替换或复制内容(多行):
右键-->格式-->填充所选内容-->选择相应操作
OR
Ctrl+Shift+V(复制多行数据,必须行数一致)
-------------------------------------------------------
- 【Kafka一】Kafka入门
bit1129
kafka
这篇文章来自Spark集成Kafka(http://bit1129.iteye.com/blog/2174765),这里把它单独取出来,作为Kafka的入门吧
下载Kafka
http://mirror.bit.edu.cn/apache/kafka/0.8.1.1/kafka_2.10-0.8.1.1.tgz
2.10表示Scala的版本,而0.8.1.1表示Kafka
- Spring 事务实现机制
BlueSkator
spring代理事务
Spring是以代理的方式实现对事务的管理。我们在Action中所使用的Service对象,其实是代理对象的实例,并不是我们所写的Service对象实例。既然是两个不同的对象,那为什么我们在Action中可以象使用Service对象一样的使用代理对象呢?为了说明问题,假设有个Service类叫AService,它的Spring事务代理类为AProxyService,AService实现了一个接口
- bootstrap源码学习与示例:bootstrap-dropdown(转帖)
BreakingBad
bootstrapdropdown
bootstrap-dropdown组件是个烂东西,我读后的整体感觉。
一个下拉开菜单的设计:
<ul class="nav pull-right">
<li id="fat-menu" class="dropdown">
- 读《研磨设计模式》-代码笔记-中介者模式-Mediator
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
/*
* 中介者模式(Mediator):用一个中介对象来封装一系列的对象交互。
* 中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。
*
* 在我看来,Mediator模式是把多个对象(
- 常用代码记录
chenjunt3
UIExcelJ#
1、单据设置某行或某字段不能修改
//i是行号,"cash"是字段名称
getBillCardPanelWrapper().getBillCardPanel().getBillModel().setCellEditable(i, "cash", false);
//取得单据表体所有项用以上语句做循环就能设置整行了
getBillC
- 搜索引擎与工作流引擎
comsci
算法工作搜索引擎网络应用
最近在公司做和搜索有关的工作,(只是简单的应用开源工具集成到自己的产品中)工作流系统的进一步设计暂时放在一边了,偶然看到谷歌的研究员吴军写的数学之美系列中的搜索引擎与图论这篇文章中的介绍,我发现这样一个关系(仅仅是猜想)
-----搜索引擎和流程引擎的基础--都是图论,至少像在我在JWFD中引擎算法中用到的是自定义的广度优先
- oracle Health Monitor
daizj
oracleHealth Monitor
About Health Monitor
Beginning with Release 11g, Oracle Database includes a framework called Health Monitor for running diagnostic checks on the database.
About Health Monitor Checks
Health M
- JSON字符串转换为对象
dieslrae
javajson
作为前言,首先是要吐槽一下公司的脑残编译部署方式,web和core分开部署本来没什么问题,但是这丫居然不把json的包作为基础包而作为web的包,导致了core端不能使用,而且我们的core是可以当web来用的(不要在意这些细节),所以在core中处理json串就是个问题.没办法,跟编译那帮人也扯不清楚,只有自己写json的解析了.
- C语言学习八结构体,综合应用,学生管理系统
dcj3sjt126com
C语言
实现功能的代码:
# include <stdio.h>
# include <malloc.h>
struct Student
{
int age;
float score;
char name[100];
};
int main(void)
{
int len;
struct Student * pArr;
int i,
- vagrant学习笔记
dcj3sjt126com
vagrant
想了解多主机是如何定义和使用的, 所以又学习了一遍vagrant
1. vagrant virtualbox 下载安装
https://www.vagrantup.com/downloads.html
https://www.virtualbox.org/wiki/Downloads
查看安装在命令行输入vagrant
2.
- 14.性能优化-优化-软件配置优化
frank1234
软件配置性能优化
1.Tomcat线程池
修改tomcat的server.xml文件:
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" maxThreads="1200" m
- 一个不错的shell 脚本教程 入门级
HarborChung
linuxshell
一个不错的shell 脚本教程 入门级
建立一个脚本 Linux中有好多中不同的shell,但是通常我们使用bash (bourne again shell) 进行shell编程,因为bash是免费的并且很容易使用。所以在本文中笔者所提供的脚本都是使用bash(但是在大多数情况下,这些脚本同样可以在 bash的大姐,bourne shell中运行)。 如同其他语言一样
- Spring4新特性——核心容器的其他改进
jinnianshilongnian
spring动态代理spring4依赖注入
Spring4新特性——泛型限定式依赖注入
Spring4新特性——核心容器的其他改进
Spring4新特性——Web开发的增强
Spring4新特性——集成Bean Validation 1.1(JSR-349)到SpringMVC
Spring4新特性——Groovy Bean定义DSL
Spring4新特性——更好的Java泛型操作API
Spring4新
- Linux设置tomcat开机启动
liuxingguome
tomcatlinux开机自启动
执行命令sudo gedit /etc/init.d/tomcat6
然后把以下英文部分复制过去。(注意第一句#!/bin/sh如果不写,就不是一个shell文件。然后将对应的jdk和tomcat换成你自己的目录就行了。
#!/bin/bash
#
# /etc/rc.d/init.d/tomcat
# init script for tomcat precesses
- 第13章 Ajax进阶(下)
onestopweb
Ajax
index.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/
- Troubleshooting Crystal Reports off BW
blueoxygen
BO
http://wiki.sdn.sap.com/wiki/display/BOBJ/Troubleshooting+Crystal+Reports+off+BW#TroubleshootingCrystalReportsoffBW-TracingBOE
Quite useful, especially this part:
SAP BW connectivity
For t
- Java开发熟手该当心的11个错误
tomcat_oracle
javajvm多线程单元测试
#1、不在属性文件或XML文件中外化配置属性。比如,没有把批处理使用的线程数设置成可在属性文件中配置。你的批处理程序无论在DEV环境中,还是UAT(用户验收
测试)环境中,都可以顺畅无阻地运行,但是一旦部署在PROD 上,把它作为多线程程序处理更大的数据集时,就会抛出IOException,原因可能是JDBC驱动版本不同,也可能是#2中讨论的问题。如果线程数目 可以在属性文件中配置,那么使它成为
- 正则表达式大全
yang852220741
html编程正则表达式
今天向大家分享正则表达式大全,它可以大提高你的工作效率
正则表达式也可以被当作是一门语言,当你学习一门新的编程语言的时候,他们是一个小的子语言。初看时觉得它没有任何的意义,但是很多时候,你不得不阅读一些教程,或文章来理解这些简单的描述模式。
一、校验数字的表达式
数字:^[0-9]*$
n位的数字:^\d{n}$
至少n位的数字:^\d{n,}$
m-n位的数字:^\d{m,n}$