- 【设计模式之解释器模式 -- C++】
Conce-lin
设计模式设计模式解释器模式c++
解释器模式–语法解析,执行操作解释器模式是一种设计模式,用于为某个语言定义其语法表示,并提供一个解释器,这个解释器使用该表示来解释语言中的句子。这种模式通常用于开发专门的语言或脚本引擎,可以解析和执行用户定义的指令或表达式。组成抽象表达式(AbstractExpression):定义解释操作的接口,这个接口为解释特定的上下文提供了解释(interpret)方法。终结符表达式(TerminalExp
- 【设计模式之中介者模式 -- C++】
Conce-lin
设计模式设计模式中介者模式c++
中介者模式–统一协调,对象解耦中介者模式是一种行为设计模式,它允许你减少多个对象或类之间的直接通信,从而减少它们之间的依赖关系,提高模块化,并促进代码的可维护性。中介者通过成为对象之间通信的中心点,使得对象不需要显式地相互引用,从而使其更容易独立地改变它们之间的交云。组成中介者(Mediator)接口:定义了与各个同事(Colleague)对象通信的接口。具体中介者(ConcreteMediato
- C++11 -表达式/包装器
UpUpUp……
c++开发语言笔记
1.lambda表达式各部分说明[capture-list]:捕捉列表,该列表总是出现在lambda函数的开始位置,编译器根据[]来判断接下来的代码是否为lambda函数,捕捉列表能够捕捉上下文中的变量供lambda函数使用。(parameters):参数列表。与普通函数的参数列表一致,如果不需要参数传递,则可以连同()一起省略。mutable:默认情况下,lambda函数总是一个const函数,
- 计算机等级考试数据库三级(笔记2)
烂白菜@
计算机基础java数据库服务器
1插入修改现要创建一个具有如下功能的触发器:每当在销售表中插入一条销售记录时,修改商品表中对应商品的销售总量,假设一次只插入一条销售记录。请补全下列代码。CREATETRIGGERtriinsertonxxFORxxASxx商品表xx销售总量=xx+(SELECT销售数量FROMxx)WHERE商品号IN(SELECT商品号FROMInserted)1函数返回CREATEFUNCTIONdbo.f
- SpringBoot 常用注解汇总
咩咩咩咩没
面试学习路线阿里巴巴springbootjavaspringdatabase开发语言
目录SpringBoot常用注解汇总一、启动注解@SpringBootApplication@SpringBootConfiguration注解,继承@Configuration注解,主要用于加载配置文件@EnableAutoConfiguration注解,开启自动配置功能@ComponentScan注解,主要用于组件扫描和自动装配二、Controller相关注解@Controller@RestC
- Android设计模式之观察者模式
木子庆五
设计模式观察者模式android
一、定义:定义对象间一种一对多的依赖关系,使得每当一个对象改变状态,则所有依赖于它的对象都会得到通知并被自动更新。二、核心角色:Subject:抽象主题被观察的角色,管理观察者集合,提供注册/注销方法,定义通知逻辑。ConcreteSubject:具体主题,存储具体状态数据,状态变更时触发通知。Observer:抽象观察者,定义更新接口,使得主题状态发生变化时更新自己。ConcreteOberve
- Spring Boot 中使用 Redis 实现分布式锁:原理与实战
一个差不多的先生
springbootredis分布式
SpringBoot中使用Redis实现分布式锁:原理与实战在分布式系统中,多个实例可能同时访问共享资源,导致数据不一致或竞态条件问题。分布式锁是一种常用的解决方案,它可以确保同一时间只有一个实例能够访问共享资源。Redis由于其高性能和原子操作特性,常被用于实现分布式锁。本文将详细介绍如何在SpringBoot中使用Redis实现分布式锁,包括两种常见方法:手动实现和使用Redisson。一、分
- Scala文件读写案例:全文单词统计
别惊鹊
scala
2.txt内容如下Thankyouverymuch.WellIwanttothankyouallverymuchthisisgreat,theseareourfriends,wehavethousandsoffriendsinthisincrediblemovement.Thiswasamovementlikenonobody'severseenbefore,andfranklythiswasIb
- MyBaitis-Plus 使用动态表名 selectPage 不生效
cccl.
Javajavamybatis
在使用MyBatis-Plus时,采用动态表名策略后,selectPage方法无法正常生效。MyBatis-Plus动态表名插件配置MyBatis-Plus动态表名失效原因MyBatis-Plus动态表名失效解决办法MyBatis-Plus动态表名插件配置以下是我项目中MyBatis-Plus的插件配置:importcn.hutool.core.net.NetUtil;importcom.baom
- 计算机等级考试数据库三级(笔记3)
烂白菜@
计算机基础数据库服务器oracle
插入修改现要创建一个具有如下功能的触发器:每当在销售表中插入一条销售记录时,修改商品表中对应商品的销售总量,假设一次只插入一条销售记录。请补全下列代码。CREATETRIGGERtriinsertonxxFORxxASxx商品表xx销售总量=xx+(SELECT销售数量FROMxx)WHERE商品号IN(SELECT商品号FROMInserted)类图主要于表达问题领域概念模型,类图中除了表达抽象
- 代码随想录算法训练营第27天 | 第八章 贪心算法 part05
tt555555555555
C++学习学习笔记算法贪心算法leetcodec++笔记
文章目录第八章贪心算法part0556.合并区间738.单调递增的数字968.监控二叉树(可跳过)总结第八章贪心算法part0556.合并区间本题也是重叠区间问题,如果昨天三道都吸收的话,本题就容易理解了。别忘了添加最后一个区间56.合并区间classSolution{public:staticboolcmp(vector&a,vector&b){if(a[0]==b[0])returna[1]>
- 白话 涨点大法——渐进精炼数据方法
Echoes638
机器学习人工智能
渐进精炼数据方法(ProgressiveDataRefinement)定义渐进精炼数据是一种在训练过程中动态筛选“可信样本”的方法。它的核心思想是:“只用当前模型能正确预测的样本,继续训练模型。”使用场景这种方法特别适合以下场景:•数据集标签存在噪声(比如人脸表情标签可能有误)•初始模型泛化能力较差•想让模型逐步聚焦在高质量样本上理解你可以理解为老师想要写一本完美教材(模型泛化能力强),当他每讲完
- Linux系统之ar命令详解
门前灯
linuxar运维服务器ar详解
ar命令是Unix和类Unix操作系统中的一个工具,用于创建、修改以及提取归档文件(archive)。归档文件是一种将多个文件打包成一个单独文件的方式,但与tar不同,它通常用于静态库的创建,这些静态库可以被编译器和链接器用来构建可执行程序。扩展名为.a的文件就是一种由ar创建的归档文件。基本语法ar[选项][操作][归档文件][成员文件...]常用操作r(replace):将文件插入归档文件中。
- Axios核心原理
jjjjjjjjj¢
笔记前端
Axios是一个基于Promise的HTTP客户端,它可以用于浏览器和Node.js。其核心原理主要包括以下几个部分:请求流程Axios的请求流程主要包括以下步骤:创建实例:axios.create()方法可以创建一个具有默认配置的Axios实例。请求拦截器:在请求发送前,可以使用axios.interceptors.request.use()进行修改,如添加token、修改headers。请求适
- 2025宠物智能喂养设备全栈开发方案:Python驱动的高效实现路径
智享食事
宠物python开发语言
一、核心系统架构设计1.1硬件架构拓扑图硬件架构图采用树莓派CM4+ESP32双核架构:主控单元:RaspberryPiComputeModule4(Python3.10+)传感器阵列:TOF激光测距模块(饲料余量监测)六轴IMU(设备倾倒检测)环境传感器组(DHT22+BME680)1.2软件技术栈#典型依赖库配置requirements={"edge_compute":["tensorflow
- 代码随想录算法训练营第31天| 贪心
行道迟迟818
算法python数据结构
LeetCode.455分发饼干g.sort()s.sort()left=0foriins:ifleft>=len(g):breakifi>=g[left]:left+=1returnleftLeetCode.376摆动序列prediff=0res=1foriinrange(len(nums)-1):curdiff=nums[i+1]-nums[i]ifcurdiff*prediffres:res
- 代码随想录算法训练营第三十五天| 贪心算法04
Rachela_z
贪心算法算法
452.用最少数量的箭引爆气球代码随想录重叠区间问题,注意点:1.只要points长度不为0,那么至少是需要一只箭的,所以result初始值为12.排序后,如果当前元素第一个值比前一个元素最后一个值小,那么说明不在一个区间里3.在相同区间里的话,需要选择最短尾端classSolution:deffindMinArrowShots(self,points:List[List[int]])->int:
- 代码随想录算法训练营第二十七天 | 贪心算法 part01
sagen aller
算法贪心算法
455.分发饼干将胃口与饼干排序,从胃口最大的开始遍历,找到符合条件的饼干,不符合就找下一个。也就是说最大的饼干找能满足的最大的胃口。classSolution{public:intfindContentChildren(vector&g,vector&s){sort(g.begin(),g.end());sort(s.begin(),s.end());intresult=0;intj=s.siz
- iOS自定义collection view的page size(width/height)分页效果
Invisible_He
xcodeiOS开发swiftiOSSwiftUICollection
前言想必大家工作中或多或少会遇到下图样式的UI需求吧像这种cell长度不固定,并且还能实现的分页效果UI还是很常见的实现我们这里实现主要采用collectionview,实现的方式是自定义一个UICollectionViewFlowLayout的子类,在这个类里对cell布局进行排列当出现pagesize小于collectionview的size的时候,可以使用ZLCollectionFreePa
- 用Android studio 做出QQ登录界面
puerhuo
androidstudioandroidstudio
1.布局界面代码如下:
- 高级排序之希尔排序
black bean
数据结构和算法算法数据结构排序算法希尔排序高级排序
1.什么是希尔排序希尔排序(Shell'sSort)是插入排序的一种又称“缩小增量排序”(DiminishingIncrementSort),是直接插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法。该方法因D.L.Shell于1959年提出而得名。希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰
- react如何引用(按需加载)百度地图,并结合and组件化封装
编程猪猪侠
react.js前端前端框架
1.技术选项:vite+react+antdesignload-script2.实现思路:1.按需加载如何实现?要实现按需加载就不能直接在项目的入口文件这种地方去通过script标签引入,这里使用load-script封装了一个加载百度地图的Bmap.js方法,实现动态的插入script脚本。根目录下创建Bmap.js文件import_loadScriptfrom'load-script';exp
- Linux Kernel 之十 详解 PREEMPT_RT、Xenomai 的架构、源码、构建及使用
ZC·Shou
LinuxKernellinuxPREEMPT_RTxenomaiRTOSCobaltMercury
概述 现在的RTOS基本可以分为Linux阵营和非Linux阵营这两大阵营。非Linux阵营的各大RTOS都是独立发展,使用上也相对独立;而Linux阵营则有多种不同的实现方法来改造Linux以实现实时性要求。本文我们重点关注Linux阵营的实时内核实现方法! 本文我们重点关注PREEMPT_RT以及Xenomai3和Xenomai4这两种实时Linux内核的实现方法,关于RTLinux和RT
- Linux命令之readelf详解
飞翔的鲲
【Linux/Gcc技术专栏】linuxreadelf
###Date:2017/10/2823:31参考:http://man.linuxde.net/readelf一、readelf命令介绍readelf命令用来显示一个或者多个elf格式的目标文件的信息,可以通过它的选项来控制显示哪些信息。这里的elf-file(s)就表示那些被检查的文件。可以支持32位,64位的elf格式文件,也支持包含elf文件的文档(这里一般指的是使用ar命令将一些elf文
- 希尔排序-Hibbard增量序列(C语言)
云儿乱飘
#排序排序算法
#include#include#defineNUM80000#defineRANGE80008voidinsert(int*arr,intl,intn,intstep){for(inti=l+step;il&&arr[j]1);return;}intmain(){intarr[NUM]={0};srand(time(0));for(inti=0;i
- 力扣219.存在重复元素Ⅱ
不吃洋葱.
leetcode算法数据结构
给你一个整数数组nums和一个整数k,判断数组中是否存在两个不同的索引i和j,满足nums[i]==nums[j]且abs(i-j)&nums,intk){//定义一个dictionaryunordered_mapdictionary;//定义了一个整型变量length把nums的大小赋值给lengthintlength=nums.size();//遍历nums中的每一个元素for(inti=0;
- 从系统架构、API对接核心技术、业务场景设计及实战案例四个维度,深度解析1688代采系统
数据小爬虫.网站开发-Brad
1688系统架构
以下从系统架构、API对接核心技术、业务场景设计及实战案例四个维度,深度解析1688代采系统的技术实现与商业价值:一、系统架构设计与技术选型1.分层架构体系HTTP/HTTPS鉴权数据交互存储消息队列支付/物流用户终端API网关业务层数据层MySQL/RedisRabbitMQ/Kafka第三方服务表现层:支持PC端/移动端H5/小程序多端适配,采用Vue3+ElementPlus构建响应式界面网
- 如何基于ios部署Deep Seek?
恶霸不委屈
iospythonswift
在iOS上部署深度学习模型(如DeepSeek或其他自定义模型)通常需要将模型转换为iOS支持的格式(如CoreML),并通过代码集成到应用中。以下是详细步骤:1.准备模型模型训练确保你的模型已训练完成(如PyTorch、TensorFlow/Keras格式)。转换为CoreML格式使用coremltools将模型转换为.mlmodel格式:importcoremltoolsasct#示例:转换P
- Django:文件上传时报错in a frame because it set ‘X-Frame-Options‘ to ‘deny‘.
云浮万里_1
djangohttppython
即:使用Content-Security-Policy1.安装DjangoCSP中间件:pipinstalldjango-csp2.更改项目配置:#settings.pyMIDDLEWARE=[...'csp.middleware.CSPMiddleware',...]CSP_DEFAULT_SRC=("'self'",)CSP_FRAME_ANCESTORS=("'self'","http://
- OSPF邻居建立及状态机
LEO DAVE
网络网络协议
邻居建立建立邻居关系的条件RID不能冲突AreaID要一致Authtype要一致空认证明文认证MD5认证认证模式接口认证区域认证Authdata要匹配Hellointerval要一致Deadinterval要一致Ebit和Nbit要一致,交换5类LSA和交换7类LSAN/Pbit,P进行7转5DN,MPLS的防环DC,支持按需链路特殊场景(针对的OSPF网络类型)P2P地址不要求IP地址在同一网段
- jquery实现的jsonp掉java后台
知了ing
javajsonpjquery
什么是JSONP?
先说说JSONP是怎么产生的:
其实网上关于JSONP的讲解有很多,但却千篇一律,而且云里雾里,对于很多刚接触的人来讲理解起来有些困难,小可不才,试着用自己的方式来阐释一下这个问题,看看是否有帮助。
1、一个众所周知的问题,Ajax直接请求普通文件存在跨域无权限访问的问题,甭管你是静态页面、动态网页、web服务、WCF,只要是跨域请求,一律不准;
2、
- Struts2学习笔记
caoyong
struts2
SSH : Spring + Struts2 + Hibernate
三层架构(表示层,业务逻辑层,数据访问层) MVC模式 (Model View Controller)
分层原则:单向依赖,接口耦合
1、Struts2 = Struts + Webwork
2、搭建struts2开发环境
a>、到www.apac
- SpringMVC学习之后台往前台传值方法
满城风雨近重阳
springMVC
springMVC控制器往前台传值的方法有以下几种:
1.ModelAndView
通过往ModelAndView中存放viewName:目标地址和attribute参数来实现传参:
ModelAndView mv=new ModelAndView();
mv.setViewName="success
- WebService存在的必要性?
一炮送你回车库
webservice
做Java的经常在选择Webservice框架上徘徊很久,Axis Xfire Axis2 CXF ,他们只有一个功能,发布HTTP服务然后用XML做数据传输。
是的,他们就做了两个功能,发布一个http服务让客户端或者浏览器连接,接收xml参数并发送xml结果。
当在不同的平台间传输数据时,就需要一个都能解析的数据格式。
但是为什么要使用xml呢?不能使json或者其他通用数据
- js年份下拉框
3213213333332132
java web ee
<div id="divValue">test...</div>测试
//年份
<select id="year"></select>
<script type="text/javascript">
window.onload =
- 简单链式调用的实现技术
归来朝歌
方法调用链式反应编程思想
在编程中,我们可以经常遇到这样一种场景:一个实例不断调用它自身的方法,像一条链条一样进行调用
这样的调用你可能在Ajax中,在页面中添加标签:
$("<p>").append($("<span>").text(list[i].name)).appendTo("#result");
也可能在HQ
- JAVA调用.net 发布的webservice 接口
darkranger
webservice
/**
* @Title: callInvoke
* @Description: TODO(调用接口公共方法)
* @param @param url 地址
* @param @param method 方法
* @param @param pama 参数
* @param @return
* @param @throws BusinessException
- Javascript模糊查找 | 第一章 循环不能不重视。
aijuans
Way
最近受我的朋友委托用js+HTML做一个像手册一样的程序,里面要有可展开的大纲,模糊查找等功能。我这个人说实在的懒,本来是不愿意的,但想起了父亲以前教我要给朋友搞好关系,再加上这也可以巩固自己的js技术,于是就开始开发这个程序,没想到却出了点小问题,我做的查找只能绝对查找。具体的js代码如下:
function search(){
var arr=new Array("my
- 狼和羊,该怎么抉择
atongyeye
工作
狼和羊,该怎么抉择
在做一个链家的小项目,只有我和另外一个同事两个人负责,各负责一部分接口,我的接口写完,并全部测联调试通过。所以工作就剩下一下细枝末节的,工作就轻松很多。每天会帮另一个同事测试一些功能点,协助他完成一些业务型不强的工作。
今天早上到公司没多久,领导就在QQ上给我发信息,让我多协助同事测试,让我积极主动些,有点责任心等等,我听了这话,心里面立马凉半截,首先一个领导轻易说
- 读取android系统的联系人拨号
百合不是茶
androidsqlite数据库内容提供者系统服务的使用
联系人的姓名和号码是保存在不同的表中,不要一下子把号码查询来,我开始就是把姓名和电话同时查询出来的,导致系统非常的慢
关键代码:
1, 使用javabean操作存储读取到的数据
package com.example.bean;
/**
*
* @author Admini
- ORACLE自定义异常
bijian1013
数据库自定义异常
实例:
CREATE OR REPLACE PROCEDURE test_Exception
(
ParameterA IN varchar2,
ParameterB IN varchar2,
ErrorCode OUT varchar2 --返回值,错误编码
)
AS
/*以下是一些变量的定义*/
V1 NUMBER;
V2 nvarc
- 查看端号使用情况
征客丶
windows
一、查看端口
在windows命令行窗口下执行:
>netstat -aon|findstr "8080"
显示结果:
TCP 127.0.0.1:80 0.0.0.0:0 &
- 【Spark二十】运行Spark Streaming的NetworkWordCount实例
bit1129
wordcount
Spark Streaming简介
NetworkWordCount代码
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
- Struts2 与 SpringMVC的比较
BlueSkator
struts2spring mvc
1. 机制:spring mvc的入口是servlet,而struts2是filter,这样就导致了二者的机制不同。 2. 性能:spring会稍微比struts快。spring mvc是基于方法的设计,而sturts是基于类,每次发一次请求都会实例一个action,每个action都会被注入属性,而spring基于方法,粒度更细,但要小心把握像在servlet控制数据一样。spring
- Hibernate在更新时,是可以不用session的update方法的(转帖)
BreakingBad
Hibernateupdate
地址:http://blog.csdn.net/plpblue/article/details/9304459
public void synDevNameWithItil()
{Session session = null;Transaction tr = null;try{session = HibernateUtil.getSession();tr = session.beginTran
- 读《研磨设计模式》-代码笔记-观察者模式
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
import java.util.ArrayList;
import java.util.List;
import java.util.Observable;
import java.util.Observer;
/**
* “观
- 重置MySQL密码
chenhbc
mysql重置密码忘记密码
如果你也像我这么健忘,把MySQL的密码搞忘记了,经过下面几个步骤就可以重置了(以Windows为例,Linux/Unix类似):
1、关闭MySQL服务
2、打开CMD,进入MySQL安装目录的bin目录下,以跳过权限检查的方式启动MySQL
mysqld --skip-grant-tables
3、新开一个CMD窗口,进入MySQL
mysql -uroot
- 再谈系统论,控制论和信息论
comsci
设计模式生物能源企业应用领域模型
再谈系统论,控制论和信息论
偶然看
- oracle moving window size与 AWR retention period关系
daizj
oracle
转自: http://tomszrp.itpub.net/post/11835/494147
晚上在做11gR1的一个awrrpt报告时,顺便想调整一下AWR snapshot的保留时间,结果遇到了ORA-13541这样的错误.下面是这个问题的发生和解决过程.
SQL> select * from v$version;
BANNER
-------------------
- Python版B树
dieslrae
python
话说以前的树都用java写的,最近发现python有点生疏了,于是用python写了个B树实现,B树在索引领域用得还是蛮多了,如果没记错mysql的默认索引好像就是B树...
首先是数据实体对象,很简单,只存放key,value
class Entity(object):
'''数据实体'''
def __init__(self,key,value)
- C语言冒泡排序
dcj3sjt126com
算法
代码示例:
# include <stdio.h>
//冒泡排序
void sort(int * a, int len)
{
int i, j, t;
for (i=0; i<len-1; i++)
{
for (j=0; j<len-1-i; j++)
{
if (a[j] > a[j+1]) // >表示升序
- 自定义导航栏样式
dcj3sjt126com
自定义
-(void)setupAppAppearance
{
[[UILabel appearance] setFont:[UIFont fontWithName:@"FZLTHK—GBK1-0" size:20]];
[UIButton appearance].titleLabel.font =[UIFont fontWithName:@"FZLTH
- 11.性能优化-优化-JVM参数总结
frank1234
jvm参数性能优化
1.堆
-Xms --初始堆大小
-Xmx --最大堆大小
-Xmn --新生代大小
-Xss --线程栈大小
-XX:PermSize --永久代初始大小
-XX:MaxPermSize --永久代最大值
-XX:SurvivorRatio --新生代和suvivor比例,默认为8
-XX:TargetSurvivorRatio --survivor可使用
- nginx日志分割 for linux
HarborChung
nginxlinux脚本
nginx日志分割 for linux 默认情况下,nginx是不分割访问日志的,久而久之,网站的日志文件将会越来越大,占用空间不说,如果有问题要查看网站的日志的话,庞大的文件也将很难打开,于是便有了下面的脚本 使用方法,先将以下脚本保存为 cutlog.sh,放在/root 目录下,然后给予此脚本执行的权限
复制代码代码如下:
chmo
- Spring4新特性——泛型限定式依赖注入
jinnianshilongnian
springspring4泛型式依赖注入
Spring4新特性——泛型限定式依赖注入
Spring4新特性——核心容器的其他改进
Spring4新特性——Web开发的增强
Spring4新特性——集成Bean Validation 1.1(JSR-349)到SpringMVC
Spring4新特性——Groovy Bean定义DSL
Spring4新特性——更好的Java泛型操作API
Spring4新
- centOS安装GCC和G++
liuxihope
centosgcc
Centos支持yum安装,安装软件一般格式为yum install .......,注意安装时要先成为root用户。
按照这个思路,我想安装过程如下:
安装gcc:yum install gcc
安装g++: yum install g++
实际操作过程发现,只能有gcc安装成功,而g++安装失败,提示g++ command not found。上网查了一下,正确安装应该
- 第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/
- How to determine BusinessObjects service pack and fix pack
blueoxygen
BO
http://bukhantsov.org/2011/08/how-to-determine-businessobjects-service-pack-and-fix-pack/
The table below is helpful. Reference
BOE XI 3.x
12.0.0.
y BOE XI 3.0 12.0.
x.
y BO
- Oracle里的自增字段设置
tomcat_oracle
oracle
大家都知道吧,这很坑,尤其是用惯了mysql里的自增字段设置,结果oracle里面没有的。oh,no 我用的是12c版本的,它有一个新特性,可以这样设置自增序列,在创建表是,把id设置为自增序列
create table t
(
id number generated by default as identity (start with 1 increment b
- Spring Security(01)——初体验
yang_winnie
springSecurity
Spring Security(01)——初体验
博客分类: spring Security
Spring Security入门安全认证
首先我们为Spring Security专门建立一个Spring的配置文件,该文件就专门用来作为Spring Security的配置