- Windows 安装pyenv
码农小钢
pythonlinuxjavawindowsshell
步骤一:安装命令pipinstallpyenv-win--target%USERPROFILE%/.pyenv步骤二:在文件管理器试试pyenv-winimage.png步骤三:复制路径步骤四:添加环境变量变量把PYENV添加到系统变量。注意不是用户变量。变量名:PYENV变量值:C:\Users\Administrator\.pyenv\pyenv-win这里填写你的pyenv路径path添加把
- App弱网测试是怎么测试的!
程序员小 濠
自动化测试技术分享干货分享jmeter测试用例测试工具python自动化测试软件测试APP测试
一、网络测试的一般流程step1:首先要考虑网络正常的情况①各个模块的功能正常可用②页面元素/数据显示正常step2:其次要考虑无网络的情况①APP各个功能在无网络情况下是否可用②APP各个页面之间切换是否正常③发送网络请求时是否会导致闪退、卡死等异常情况④APP各个页面是否显示完整美观,未刷新的页面是否做了相应的提示和处理⑤在无网络情况下数据是否会丢失⑥无网络提示信息是否友好step3:再次考虑
- LVGL -------矩阵3
weixin_44799641
LVGL的学习开发语言
staticvoidevent_cb(lv_event_t*e){lv_obj_t*obj=lv_event_get_target(e);uint32_tid=lv_btnmatrix_get_selected_btn(obj);boolprev=id==0?true:false;boolnext=id==6?true:false;if(prev||next){/Findthecheckedbut
- Python办公自动化教程(008):设置excel单元格边框和背景颜色
叁拾舞
Pythonpythonexcel
3.2添加边框示例代码importopenpyxlfromopenpyxl.stylesimportBorder,Side#1️⃣创建Excel工作簿wb=openpyxl.Workbook()sheet=wb.activesheet.title="球员信息"#2️⃣定义边框样式(细线边框)thin_border=Border(left=Side(style="thin"),right=Side(
- UGUI中的InputField下的placeholder的作用?
砍柴喂马
这两个都是文本输入信息,那么为什么要分为两个呢,有什么作用呢?经过尝试我们就会发现,其实Placeholder的作用是用来输入提示信息的。当text下没有输入内容的时候,我们自己设定的提示信息就会出现在输入框中来提示我们此处应该输入什么,以致于不使我们迷惑。当在text中输入信息后,提示信息默认就会不显示了。当此处为空时,又会出现此提示信息。所以这个Placeholder的作用就是用来制作提示信息
- XSL 语言:XML 样式表的语言基础与应用
wjs2024
开发语言
XSL语言:XML样式表的语言基础与应用引言XSL(ExtensibleStylesheetLanguage)是一种专门用于XML文档样式的语言,它允许用户定义XML文档的格式、布局和外观。XSL是XML技术家族中的重要组成部分,与XML和XPATH等语言共同构成了处理和格式化XML文档的强大工具集。本文将详细介绍XSL语言的基础知识、应用场景以及与相关技术的结合。XSL语言概述1.XSL的目的X
- 【C语言】Leetcode热题100 --更新中
司六米希
leetcodec语言算法
【C语言】Leetcode热题1001.两数之和1.两数之和给定一个整数数组nums和一个整数目标值target,请你在该数组中找出和为目标值target的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案,并且你不能使用两次相同的元素。你可以按任意顺序返回答案。示例1:输入:nums=[2,7,11,15],target=9输出:[0,1]解释:因为nums[0]+nums[1
- 邮箱html邮件显示不全,制作邮箱能正常显示的HTML邮件的方法
weixin_39812577
邮箱html邮件显示不全
制作邮箱能正常显示的HTML邮件的方法发送html邮件的建议:用style写内联的CSS;少用图片;用table实现左右布局或者更复杂的布局;用background元素设置背景图片等。几乎每个会员制网站都需要通过后台发送邮件来与会员进行沟通,如注册确认、营销推广。这些由站方发给会员的信件,往往纯文本格式已不能满足界面和交互的要求,这时候我们就需要发送HTML页面。由于HTML邮件不是独立的HOST
- React中使用高德地图组件React-amap
qq_36560180
ReactReact-amap高德地图
在项目中有一个需要在地图上显示物体定位以及分布热力图的需求,导师选择使用高德地图进行实现。对应的package为React-amap。记录一下在项目中遇到的几个问题以及解决方案:自定义Markers外观,//标记杆塔的图片样式style={position:'relative',backgroundColor:'white',color:'#fff',border:'0pxsolid#fff',b
- Angular Superresolution of Real Aperture Radar for Target Scale Measurement 论文阅读
青铜锁00
论文阅读Radar论文阅读
AngularSuperresolutionofRealApertureRadarforTargetScaleMeasurement1.研究目标与实际意义1.1研究目标1.2实际意义2.创新方法与模型设计2.1广义混合正则化(GHR)框架核心公式与传统方法对比2.2自适应迭代重加权(AIR)求解器算法设计复杂度分析3.实验设计与结果验证3.1仿真实验实验设置关键结果3.2实际数据验证4.未来研究方
- 代码随想录刷题学习日记
努力向前ing
代码随想录学习日记算法数据结构学习回溯
仅为个人记录复盘学习历程,解题思路来自代码随想录代码随想录刷题笔记总结网址:代码随想录40.组合总和II给定一个数组candidates和一个目标数target,找出candidates中所有可以使数字和为target的组合。candidates中的每个数字在每个组合中只能使用一次。说明:所有数字(包括目标数)都是正整数。解集不能包含重复的组合。提供参数:整数数组candicates,目标数tar
- Android 高斯模糊
xiao芝麻
Android开发
packagecom.pingan.carowner.servicewindow.utils;importandroid.annotation.TargetApi;importandroid.content.Context;importandroid.graphics.Bitmap;importandroid.graphics.BitmapFactory;importandroid.os.Buil
- 前端开发核心知识点深度解析:从CSS到Vue的全面指南
A_cot
cssvue.js前端开发语言javascript
一、CSS篇1.link与@import的区别加载方式:是HTML标签,并行加载;@import是CSS语法,串行加载兼容性:@import不支持IE5以下DOM控制:link可通过JS操作DOM修改,@import不可动态修改权重计算:@import引入的样式优先级低于link@importurl('style.css');二、JavaScript篇2.原型链机制原型对象:每个函数都有proto
- myabtis入门案例
HPF_99
mybatisjavamysqljavamybatis
mybatis入门案例1.新建项目(Maven),搭建环境数据库(名:mybatis,表user)导出sql:/*NavicatMySQLDataTransferSourceServer:localhost_3306SourceServerVersion:50162SourceHost:localhost:3306SourceDatabase:mybatisTargetServerType:MYS
- MYSQL实现动态替换字符串某个下标位置的值的函数
bilibilidicks
mysqljava数据库
DELIMITER$$CREATEFUNCTIONreplace_in_array(input_stringVARCHAR(255),split_delimiterVARCHAR(1),numberINT,targetStrVARCHAR(255))RETURNSVARCHAR(255)BEGINDECLAREtemp_arrayVARCHAR(255)DEFAULTinput_string;DE
- XSL是指可扩展样式表语言 (EXtensible Stylesheet Language)
万事俱备,就差一个程序员了
XSLXSL是指可扩展样式表语言(EXtensibleStylesheetLanguage),是一种用于以可读格式呈现XML数据的语言。目录简介语法XSL是否与XML相同用途应用简介XSL之于XML,就像CSS之于HTML。它是指可扩展样式表语言(EXtensibleStylesheetLanguage)。这是一种用于以可读格式呈现XML数据的语言。xsl是一种标记语言,表示如何将xml文档的内容
- python代码实现支持神经网络对鸢尾花分类
邀_灼灼其华
机器学习及概率统计python神经网络分类sklearn
1、导入支持向量机模型,划分数据集fromsklearnimportdatasetsfromsklearnimportsvmiris=datasets.load_iris()iris_x=iris.datairis_y=iris.targetindices=np.random.permutation(len(iris_x))iris_x_train=iris_x[indices[:-10]]iri
- Linux 安装 mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz
weixin_54252682
linuxmysql
一、删除原来安装的mysql1.查询并删除[root@localhost/]#find/-namemysqlfind:‘/run/user/1000/gvfs’:Permissiondenied/etc/selinux/targeted/active/modules/100/mysql/var/lib/mysql/usr/lib64/mysql/usr/share/mysql/usr/local/
- Flutter 使用OverlayEntry实现Toast
Gm_Cheng
flutterandroid
记录一次关于实现Flutter的tosat消息提示框设定传入参数首先,toast需要两个基本参数,BuildContext和String,BuildContext为上下文,String为需要现实的文字信息若是需要自定义字体或者消息框样式,可以设置TextStyle或Container等其他组件作为参数传入进来,至于toast的显示时间,可以设置一个默认的Duration值为3000毫秒,再定义两个
- sharpGL绘制球体
苜柠
SharpGLc#
OpenGLgl=openGLControl1.OpenGL; //画二次曲面球体绘制过程 //OpenGL的状态记录与恢复的操作,就需要PushMatrix和PopMatrix两个函数。 gl.PushMatrix(); //绘制二次曲面 varsphere=gl.NewQuadric(); //设置二次却面绘制风格。gluQuadricDrawStyle。一般都是选用GLU_FILL风格,采用
- 终极指南:styled-components 深度解析与实战对比
ox0080
#北漂+滴滴出行WebVIP激励styled-comCSS
一、CSS-in-JS革命:现代Web样式新范式1.1传统CSS的三大痛点全局污染:class命名冲突导致"样式战争"状态隔离:动态样式需要操作DOM类名架构割裂:样式文件与组件逻辑分离//传统CSS的典型问题实例//Button.css.btn{background:blue;}//全局作用域//App.css.btn{padding:10px;}//意外覆盖1.2CSS-in-JS的核心优势真
- VUE实现日历记录事件
yu_zheng5163
vue.jsjavascriptecmascript
el-calendarHTML代码段可以根据自己的需要显示内容,样式-1?'lar-is-selected':'lar-no-selected'"@click="holidayUpdate(data,date)">班-1&&queryDate.indexOf(data.day)!=-1"style="color:#f73131">休 -1?'color:#F73131;text-alig
- HTML---css选择器
lh_freak
htmlcss前端
CSS指层叠样式表,是一种用来为结构化文档(如HTML文档或XML应用)添加样式(字体、间距和颜色等)的计算机语言,CSS文件扩展名为.css。使用CSS我们可以大大提升网页开发的工作效率!插入样式表的方法有三种:外部样式(Externalstylesheet)内部样式(Internalstylesheet)内联样式(Inlinestyle)内联样式(行内样式)hello样式直接写入到本元素标签中
- A Bayesian Angular Superresolution Method With Lognormal Constraint for Sea-Surface Target 论文阅读
青铜锁00
论文阅读Radar论文阅读
目录1.研究背景与问题2.方法创新3.关键优势4.实验验证5.与传统方法对比6.结论与意义1.研究背景与问题核心挑战:实孔径雷达受限于天线孔径尺寸,导致角分辨率不足,影响海面目标(如船舶)的精细化探测。传统方法局限性:谱估计方法(如MUSIC、IAA):依赖多快拍数据,机械扫描雷达难以满足。正则化方法(如TSVD、l1/l2约束):假设噪声服从高斯分布,未考虑海杂波的非高斯特性(如Rayleigh
- HTML入门
Lorraine-灵
html前端
1.1定义是一门用于web的标记语言,即将内容显示在web浏览器页面上。HTML标签主要包含单标签和双标签内容,标签属性格式,属性名=属性值例:1.2骨架标签 注释Ctrl键+/注释内容在源代码里可见保存:Ctrl键+s1.3常见标签标题标签h1-h6示例段落标签p示例横线超链接标签属性href:跳转地址target:新窗口打开例:点击打开百度图片标签
- ES6笔记总结(Xmind格式):第二天
星河路漫漫
ES6笔记总结es6笔记前端
Xmind鸟瞰图:简单文字总结:ES6知识总结Proxy(代理):1.作用:实现数据的私有化处理2.target目标对象handler处理函数3.处理函数中有两个方法:get,set4.读取数据会触发get方法,写入数据会触发set方法Reflect(反射)1.作用:用于拦截并操作JavaScript对象的方法2.提供与Object内置方法相同功能的方法3.提供更安全的操作4.作为Proxy的默认
- 【Gitlab】gitlab断电启动失败:runsv not running
骑猪上班
运维gitlab服务器linux
gitlab-ctlstart启动时候报错,runsvnotrunning解决问题:1.启动systemctlstartgitlab-runsvdir.service若启动时候没反应,则进行第二步,查看系统服务2.systemctl-ttarget如果存在inactivedead的服务,则意味着这个服务出错了,进行第三步操作3.systemctllist-jobs列出所有正在运行的任务,如果存在某
- LeetCode 热题100-70-搜索二维矩阵Ⅱ
一条吃猫的鱼
Leetcode热题100
核心思想:z字形搜索思路:我们可以从矩阵matrix的右上角(0,n−1)进行搜索。在每一步的搜索过程中,如果我们位于位置(x,y),那么我们希望在以matrix的左下角为左下角、以(x,y)为右上角的矩阵中进行搜索,即行的范围为[x,m−1],列的范围为[0,y]:如果matrix[x,y]=target,说明搜索完成;如果matrix[x,y]>target,由于每一列的元素都是升序排列的,那
- gitlab断电后启动不了
Enriquze
gitlab服务器linux
gitlab-ctlstart启动时候报错,runsvnotrunning解决问题:启动systemctlstartgitlab-runsvdir.service若启动时候没反应,则进行第二步,查看系统服务systemctl-ttarget如果存在inactivedead的服务,则意味着这个服务出错了,进行第三步操作systemctllist-jobs列出所有正在运行的任务,如果存在某个任务是ru
- gitlab断电启动失败:runsv not running
lsw1990lsw
gitlab服务器运维
重新启动sudosystemctlrestartgitlab-runsvdir.service若启动时候没反应,则进行第二步,查看系统服务sudosystemctl-ttarget如果存在inactivedead的服务,则意味着这个服务出错了,进行第三步操作sudosystemctllist-jobs列出所有正在运行的任务,如果存在某个任务是running,其他任务waiting,则是该任务堵塞了
- 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的配置