- radius服务器搭建
新雪兰
centos服务器搭建服务器运维
一、安装radius服务1、yum安装yuminstall-yfreeradiusfreeradius-mysqlfreeradius-utils如果安装失败,看这里centos6可用的源_新雪兰-CSDN博客2、防止服务没起来,重启下服务serviceradiusdrestart3、测试是否安装成功radiusd–X&radtesttestingpasswordlocalhost0testing
- vue2 使用 html2canvas 将页面 dom 转为图片并下载记录
TangAcrab
工具dom转图片html转图片
1、安装html2canvas依赖npminstallhtml2canvas-S2、页面中使用importHtml2Canvasfrom'html2canvas'//下载为png图片asyncdownFileByImg(imgName){//{分项名称}+{统计时段}+“能耗报表”+{导出时间(YYMMDDMMSS)}.pngtry{//文件名称constnowTime=formatDate(ne
- linux下搭建radius服务器,linux搭建freeradius服务器
weixin_39692761
相关网站系统版本:CentOSLinuxrelease7.3.1611(Core)我的系统上面什么都没有安装,这里要下载一些需要的包,这里说明下,我使用yum安装phpRPM包的时候会自动安装apache服务,所以这里我就不安装apache了,如果你们的phpRPM包中没有Apache就用yuminstall-yhttpd安装下。yuminstall-yphpphp-gdwgetgccgcc-c+
- radius认证服务器部署linux,CentOS安装配置radius服务器
方柏
1、安装Yuminstall-yfreeradiusfreeradius-mysqlfreeradius-utils2、配置1)修改clients.conf#vi/usr/local/etc/raddb/clients.conf在最后增加如下几行:client172.18.5.88{增加认证体,填写OMA的ip地址secret=testing123密钥shortname=172.18.5.88na
- Centos7 Radius服务搭建
搬砖小胖子
网络radius
|ldap地址radius地址172.20.10.11172.20.101.184条件:1、首先ldap服务器和radius服务器可以互相ping通2、关闭防火墙3、SELINUX=disabled1、安装yuminstall-yfreeradiusfreeradius-utilsfreeradius-ldapradiusd-X//测试如果输出Readytoprocessrequests,那么安装
- macOS安装Homebrew官网安装
时光不负追梦人
mac
Homebrew官网http://brew.sh/index_zh-cn.html官网安装Homebrew的安装很简单,mac自带ruby环境,只需在终端下输入如下指令即可完成Homebrew的安装,如果以下链接失效可以去官网看看新的链接:ruby-e"$(curl-fsSLhttps://raw.githubusercontent.com/Homebrew/install/master/inst
- Centos 7 freeradius 搭建企业wifi认证服务
兴同学
环境搭建
Centos7搭建Wpa认证服务关键字:freeradiuswpaeap参考:http://www.racksam.com/2017/03/02/centos7-install-freeradius路由器设置为WPA/WPA2企业版模式之后,热点的security=SECURITY_EAP,设备再连接该wifi1、准备工作:一台支持WPA/WPA2企业版的路由器一台安装了centos7的电脑或者虚
- centos7编译安装php7.4
T暴风雪
PHPLinuxlinux服务器centos
1.安装依赖包yuminstalllibxml2libxml2-developensslopenssl-develbzip2bzip2-devellibcurllibcurl-devellibjpeglibjpeg-devellibpnglibpng-develfreetypefreetype-develgmpgmp-devellibmcryptlibmcrypt-develreadlinerea
- 慕慕手记项目日记 熟悉SQLAIChemy ORM框架 2025-3-5
Martinenbule
慕慕手记项目日志lua开发语言
慕慕手记项目日记熟悉SQLAIChemyORM框架2025-3-5SQLAIChemy框架SQLAlchemy是一个功能强大的PythonSQL工具包和对象关系映射(ORM)框架,用于简化数据库操作。它提供了全套企业级持久化模式,既支持纯SQL开发,也支持高级ORM操作,是Python生态中最流行的数据库工具之一。安装SQLAlChemy使用以下命令进行安装pipinstallsqlalchemy
- python量化数据15:计算同花顺涨停次日涨跌幅表现
ETF股债基指标
linux运维服务器
一、环境安装pipinstallpandaspipinstallrequestspipinstallmootdx二、代码frommootdx.quotesimportQuotesimportpandasaspdimportrequestsimporttimeimportjsonclient=Quotes.factory(market='std')defget_open_limit_pool(dat
- libevent交叉编译
qsqya
c++
libevent交叉编译正常编译解压tarzxvflibevent-2.0.10-stable.tar.gz进入目录cdlibevent-2.0.10-stable设置安装路径./configure--prefix=/usr编译make安装makeinstall坑:默认是安装到/usr/local下的,程序执行时找不到包,可在CmakeLists.txt中修改三方包的路径交叉编译解压tarzxvf
- yum安装mod_limitipconn模块限制客户端多线程下载
由于网站几次被人以搞并发弄跨了,所以百度了一堆方法。其中有一篇针对apache的能限制ip访问量。不允许同一ip大并发访问。安装模块#yuminstallmod_limitipconn.x86_64-y配置文件#ll/etc/httpd/conf.d/total16-rw-r--r--1rootroot475Dec112008limitipconn.conf可直接在网站内做如下设置#vim/etc
- Python接口自动化测试:断言封装详解
程序员潇潇
软件测试python开发语言软件测试自动化测试功能测试程序人生职场和发展
在进行API接口测试时,断言起着至关重要的作用。断言是用于验证预期结果与实际结果是否一致的过程。在Python中,我们可以利用一些库来实现断言功能。1.安装必要的库在Python中,我们主要会使用两个库:requests和jsonpath。requests库用于发送HTTP请求,而jsonpath库则用于解析JSON数据。首先,我们需要安装这两个库。打开命令行,输入以下命令:pipinstallr
- pip安装Python包时,遇到错误“required to install pyproject.toml-based projects”
烤着地瓜数星星
pythonpip开发语言
1.确保你的Python环境是最新的。在命令行中运行以下命令更新pip:pipinstall--upgradepip2.确保你已经安装了setuptools和wheel这两个Python包:pipinstallsetuptoolswheel3.如果问题仍然存在,你可能需要检查你是否安装了正确的Python版本。某些Python包可能只支持特定版本的Python。你可以使用以下命令检查你的Pytho
- 二.Jupyter Notebook
无敌小昊昊
AI/Pythonjupyterpythonlinux
JupyterNotebook1.安装condainstalljupyter2.使用#激活虚拟环境condaactivateeny_Python3.12#启动jupyterlab
- npm下载canvas报错
zzzll30
npm前端node.js
npm下个canvas报错了,网上说的一堆方法都无效。特来记录下。canvas库说是要本地编译,需要本地的一些环境。跑canvas脚本报错。提示是需要安装python大于3.6.0的版本。根本原因是canvas下载完成后需要执行这句话node-pre-gypinstall--fallback-to-build--update-binary一般有两种解决方法第一种是下载编译好的适合自己操作系统的二进
- spark集群,kafka集群和zookeeper的docker集群快速搭建
醉与浮
toolsdockersparkkafka
准备操作安装docker(宿主机)yuminstalldocker(宿主机时centos用yum管理包)systemctldaemon-reload(重加载deamon服务,是docker的核心)systemctlrestartdocker.service(重启docker服务)docker常用命令dockerps-a查看所有容器dockersearchUbuntu寻找Ubuntu的镜像docke
- npm执行安装报错
Snalne
笔记vue.jsnode.jsnpm
安装vue脚手架的过程中,遇到了npminstall-g报错的问题。具体报错信息如下npmERR!codeEPERMnpmERR!syscallmkdirnpmERR!pathD:\Develop\nodejs\node_cache_cacachenpmERR!errnoEPERMnpmERR!FetchError:Invalidresponsebodywhiletryingtofetchhttp
- Ubuntu快速安装kafka集群
拥抱世界的精彩
kafka集群ubuntu搭建kafka集群kafka集群
搭建集群做少需要三台服务器一个centos和两个ubuntu每台都按照下面做:安装JDKsudoapt-getinstalldefault-jrejava-versionapt-getinstalldefault-jdkjava-version安装:sudoapt-getinstallzookeeper/etc/init.d/zookeeperstart//自启动默认信息:#安装路径/usr/sh
- linux上卸载kafka,kafka安装在linux上的安装
飞鼠明天做窝
linux上卸载kafka
kafka安装第一关java的安装捞得嘛,不谈第二关zookeeper的安装及配置1.直接打开Apachzookeeper进行下载Tips:source是源文件,需要编译后才能继续使用,所以一般直接下载上面的源文件。2.安装zookeeper传到linux里面进行解压3.配置zookeeper打开/etc/profile文件进行配置exportZOOKEEPER_INSTALL=/usr/loca
- 执行npm install 时,是如何将依赖包下载下来的。
senda66
nodenpmnpm前端node.js
今天,在使用node执行install时,突然就想到,这些依赖包是从哪下载的呢?配置的下载路径是在哪呢。突然想到后面可能将项目包放到node私有服务器上,到时候也通过npm来进行依赖下载。后来查了下相关资料,发现npm安装时会有个配置文件,这个配置文件中配置了下载地址,也可以通过命令动态配置。这个配置文件就是.npmrc。如果你要在项目中使用私有服务器地址,也可在项目跟路径下弄个配置文件,这样就会
- npm install安装报错
七小山
npm前端vue.js
在vue项目中,当我们在终端使用指令:npminstall下载node_modules(节点_模块)时出现报错的情况。主要是这个原因:npmERR!Cannotreadpropertiesofnull(reading'pickAlgorithm')翻译:npm错误!无法读取null的属性(读取“pickAlgorithm”)如果使用npminstall安装报错的话,可以先执行npmcachecle
- npm下载包报错解决方案
运维天坑笔记
运维笔记npm前端node.js
npm下载包的时候突然报错报错1:npminstall报错npmWARNtarENOENT:nosuchfileordirectory,open‘...\node_modules\.staging\...’有看到一些文章说删除package.json,然后重新npminstall安装就可以解决,亲测这个方法是不行的,依然还是会报相同的错误。正确的解决办法:删除文件package-lock.json
- Linux 使用 partprobe 更新分区表Linux 使用 partprobe 更新分区表
linux
简介partprobe是一个命令行实用程序,它可以在不重启的情况下更新内核有关分区表更改的信息。它强制内核重新读取指定磁盘的分区表。安装Debian/UbuntusudoaptupdatesudoaptinstallpartedRHEL/CentOS/Fedorasudoyuminstallparted#CentOS/RHEL7sudodnfinstallparted#Fedora,RHEL8+示
- python selenium兼容性_Selenium学习整理(Python)
k程
pythonselenium兼容性
1准备软件SeleniumIDEfirebug-2.0.19.xpifirepath-0.9.7-fx.xpiFirefox_46.0.1.5966_setup.exe由于火狐浏览器高版本以后就不支持firebug,最好下载安装49版本以下的。selenium_ide-2.9.1.xpiWebDriverpipinstallseleniumchromedriver.exeIEDriverServe
- Linux系统(以Ubuntu为例)安装高版本nodejs
红衣大叔
javascript帮助文档linuxubuntujavascript
运行以下命令可以下载并执行nvm(NodeVersionManager)的安装脚本。这个命令会从nvm的官方GitHub仓库下载特定版本的安装脚本并执行它,从而在你的系统上安装nvm。详细步骤打开终端:首先,打开你的终端应用程序。运行安装命令:curl-o-https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh|bash-使用
- tools:制作根文件系统debian9
maze.ma
toolsdebianrootfs文件系统制作
首先你先新建一个用于mount的目录mkdir/debian9其次你需要保证主机上有debootstrap以及qemu-user-staticapt-get-yinstalldebootstrapqemu-user-static现在你需要dd命令去生成rootfs.img文件ddif=/dev/zeroof=rootfs.imgbs=1Mcount=1024dd命令的话。bs代表一次读入写入大小。
- numpy版本踩坑总结 持续更新
AI算法网奇
python宝典python基础numpy
目录1.23版本报错module'numpy'hasnoattribute'bool'.协方差矩阵第2次优化:1.23版本影响库smplx报错module'numpy'hasnoattribute'bool'.解决方法:pipinstallnumpy==1.23.2测试版本命令:python-c"importnumpyasnp;print(np.__version__)"
- 修改虚拟机的yum配置
别惊鹊
linux
1.配置源,命令是:sudocurl-o/etc/yum.repos.d/CentOS-Base.repohttps://mirrors.aliyun.com/repo/Centos-7.repo2.再清空缓存,让配置生效,命令是:sudoyumcleanallsudoyummakecache3.测试是否配置成功。下载一个常见工具试一试,如果能下载成功,就证明这个操作完成了yuminstalltr
- 虚拟机 centos svn服务器搭建,centos下搭建svn+apache服务器
weixin_39757893
虚拟机centossvn服务器搭建
安装软件包#yuminstallhttpd#yuminstallmod_dav_svn#yuminstallsubversion2.验证安装#httpd-version结果显示:前往/etc/httpd/modules/下,检查是否包含mod_dav_svn.so和mod_authz_svn.so,如果有,mod_dav_svn安装成功。#svnserve--version结果显示:安装svn成功
- 安装数据库首次应用
Array_06
javaoraclesql
可是为什么再一次失败之后就变成直接跳过那个要求
enter full pathname of java.exe的界面
这个java.exe是你的Oracle 11g安装目录中例如:【F:\app\chen\product\11.2.0\dbhome_1\jdk\jre\bin】下的java.exe 。不是你的电脑安装的java jdk下的java.exe!
注意第一次,使用SQL D
- Weblogic Server Console密码修改和遗忘解决方法
bijian1013
Welogic
在工作中一同事将Weblogic的console的密码忘记了,通过网上查询资料解决,实践整理了一下。
一.修改Console密码
打开weblogic控制台,安全领域 --> myrealm -->&n
- IllegalStateException: Cannot forward a response that is already committed
Cwind
javaServlets
对于初学者来说,一个常见的误解是:当调用 forward() 或者 sendRedirect() 时控制流将会自动跳出原函数。标题所示错误通常是基于此误解而引起的。 示例代码:
protected void doPost() {
if (someCondition) {
sendRedirect();
}
forward(); // Thi
- 基于流的装饰设计模式
木zi_鸣
设计模式
当想要对已有类的对象进行功能增强时,可以定义一个类,将已有对象传入,基于已有的功能,并提供加强功能。
自定义的类成为装饰类
模仿BufferedReader,对Reader进行包装,体现装饰设计模式
装饰类通常会通过构造方法接受被装饰的对象,并基于被装饰的对象功能,提供更强的功能。
装饰模式比继承灵活,避免继承臃肿,降低了类与类之间的关系
装饰类因为增强已有对象,具备的功能该
- Linux中的uniq命令
被触发
linux
Linux命令uniq的作用是过滤重复部分显示文件内容,这个命令读取输入文件,并比较相邻的行。在正常情 况下,第二个及以后更多个重复行将被删去,行比较是根据所用字符集的排序序列进行的。该命令加工后的结果写到输出文件中。输入文件和输出文件必须不同。如 果输入文件用“- ”表示,则从标准输入读取。
AD:
uniq [选项] 文件
说明:这个命令读取输入文件,并比较相邻的行。在正常情况下,第二个
- 正则表达式Pattern
肆无忌惮_
Pattern
正则表达式是符合一定规则的表达式,用来专门操作字符串,对字符创进行匹配,切割,替换,获取。
例如,我们需要对QQ号码格式进行检验
规则是长度6~12位 不能0开头 只能是数字,我们可以一位一位进行比较,利用parseLong进行判断,或者是用正则表达式来匹配[1-9][0-9]{4,14} 或者 [1-9]\d{4,14}
&nbs
- Oracle高级查询之OVER (PARTITION BY ..)
知了ing
oraclesql
一、rank()/dense_rank() over(partition by ...order by ...)
现在客户有这样一个需求,查询每个部门工资最高的雇员的信息,相信有一定oracle应用知识的同学都能写出下面的SQL语句:
select e.ename, e.job, e.sal, e.deptno
from scott.emp e,
(se
- Python调试
矮蛋蛋
pythonpdb
原文地址:
http://blog.csdn.net/xuyuefei1988/article/details/19399137
1、下面网上收罗的资料初学者应该够用了,但对比IBM的Python 代码调试技巧:
IBM:包括 pdb 模块、利用 PyDev 和 Eclipse 集成进行调试、PyCharm 以及 Debug 日志进行调试:
http://www.ibm.com/d
- webservice传递自定义对象时函数为空,以及boolean不对应的问题
alleni123
webservice
今天在客户端调用方法
NodeStatus status=iservice.getNodeStatus().
结果NodeStatus的属性都是null。
进行debug之后,发现服务器端返回的确实是有值的对象。
后来发现原来是因为在客户端,NodeStatus的setter全部被我删除了。
本来是因为逻辑上不需要在客户端使用setter, 结果改了之后竟然不能获取带属性值的
- java如何干掉指针,又如何巧妙的通过引用来操作指针————>说的就是java指针
百合不是茶
C语言的强大在于可以直接操作指针的地址,通过改变指针的地址指向来达到更改地址的目的,又是由于c语言的指针过于强大,初学者很难掌握, java的出现解决了c,c++中指针的问题 java将指针封装在底层,开发人员是不能够去操作指针的地址,但是可以通过引用来间接的操作:
定义一个指针p来指向a的地址(&是地址符号):
- Eclipse打不开,提示“An error has occurred.See the log file ***/.log”
bijian1013
eclipse
打开eclipse工作目录的\.metadata\.log文件,发现如下错误:
!ENTRY org.eclipse.osgi 4 0 2012-09-10 09:28:57.139
!MESSAGE Application error
!STACK 1
java.lang.NoClassDefFoundError: org/eclipse/core/resources/IContai
- spring aop实例annotation方法实现
bijian1013
javaspringAOPannotation
在spring aop实例中我们通过配置xml文件来实现AOP,这里学习使用annotation来实现,使用annotation其实就是指明具体的aspect,pointcut和advice。1.申明一个切面(用一个类来实现)在这个切面里,包括了advice和pointcut
AdviceMethods.jav
- [Velocity一]Velocity语法基础入门
bit1129
velocity
用户和开发人员参考文档
http://velocity.apache.org/engine/releases/velocity-1.7/developer-guide.html
注释
1.行级注释##
2.多行注释#* *#
变量定义
使用$开头的字符串是变量定义,例如$var1, $var2,
赋值
使用#set为变量赋值,例
- 【Kafka十一】关于Kafka的副本管理
bit1129
kafka
1. 关于request.required.acks
request.required.acks控制者Producer写请求的什么时候可以确认写成功,默认是0,
0表示即不进行确认即返回。
1表示Leader写成功即返回,此时还没有进行写数据同步到其它Follower Partition中
-1表示根据指定的最少Partition确认后才返回,这个在
Th
- lua统计nginx内部变量数据
ronin47
lua nginx 统计
server {
listen 80;
server_name photo.domain.com;
location /{set $str $uri;
content_by_lua '
local url = ngx.var.uri
local res = ngx.location.capture(
- java-11.二叉树中节点的最大距离
bylijinnan
java
import java.util.ArrayList;
import java.util.List;
public class MaxLenInBinTree {
/*
a. 1
/ \
2 3
/ \ / \
4 5 6 7
max=4 pass "root"
- Netty源码学习-ReadTimeoutHandler
bylijinnan
javanetty
ReadTimeoutHandler的实现思路:
开启一个定时任务,如果在指定时间内没有接收到消息,则抛出ReadTimeoutException
这个异常的捕获,在开发中,交给跟在ReadTimeoutHandler后面的ChannelHandler,例如
private final ChannelHandler timeoutHandler =
new ReadTim
- jquery验证上传文件样式及大小(好用)
cngolon
文件上传jquery验证
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script src="jquery1.8/jquery-1.8.0.
- 浏览器兼容【转】
cuishikuan
css浏览器IE
浏览器兼容问题一:不同浏览器的标签默认的外补丁和内补丁不同
问题症状:随便写几个标签,不加样式控制的情况下,各自的margin 和padding差异较大。
碰到频率:100%
解决方案:CSS里 *{margin:0;padding:0;}
备注:这个是最常见的也是最易解决的一个浏览器兼容性问题,几乎所有的CSS文件开头都会用通配符*来设
- Shell特殊变量:Shell $0, $#, $*, $@, $?, $$和命令行参数
daizj
shell$#$?特殊变量
前面已经讲到,变量名只能包含数字、字母和下划线,因为某些包含其他字符的变量有特殊含义,这样的变量被称为特殊变量。例如,$ 表示当前Shell进程的ID,即pid,看下面的代码:
$echo $$
运行结果
29949
特殊变量列表 变量 含义 $0 当前脚本的文件名 $n 传递给脚本或函数的参数。n 是一个数字,表示第几个参数。例如,第一个
- 程序设计KISS 原则-------KEEP IT SIMPLE, STUPID!
dcj3sjt126com
unix
翻到一本书,讲到编程一般原则是kiss:Keep It Simple, Stupid.对这个原则深有体会,其实不仅编程如此,而且系统架构也是如此。
KEEP IT SIMPLE, STUPID! 编写只做一件事情,并且要做好的程序;编写可以在一起工作的程序,编写处理文本流的程序,因为这是通用的接口。这就是UNIX哲学.所有的哲学真 正的浓缩为一个铁一样的定律,高明的工程师的神圣的“KISS 原
- android Activity间List传值
dcj3sjt126com
Activity
第一个Activity:
import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import a
- tomcat 设置java虚拟机内存
eksliang
tomcat 内存设置
转载请出自出处:http://eksliang.iteye.com/blog/2117772
http://eksliang.iteye.com/
常见的内存溢出有以下两种:
java.lang.OutOfMemoryError: PermGen space
java.lang.OutOfMemoryError: Java heap space
------------
- Android 数据库事务处理
gqdy365
android
使用SQLiteDatabase的beginTransaction()方法可以开启一个事务,程序执行到endTransaction() 方法时会检查事务的标志是否为成功,如果程序执行到endTransaction()之前调用了setTransactionSuccessful() 方法设置事务的标志为成功则提交事务,如果没有调用setTransactionSuccessful() 方法则回滚事务。事
- Java 打开浏览器
hw1287789687
打开网址open浏览器open browser打开url打开浏览器
使用java 语言如何打开浏览器呢?
我们先研究下在cmd窗口中,如何打开网址
使用IE 打开
D:\software\bin>cmd /c start iexplore http://hw1287789687.iteye.com/blog/2153709
使用火狐打开
D:\software\bin>cmd /c start firefox http://hw1287789
- ReplaceGoogleCDN:将 Google CDN 替换为国内的 Chrome 插件
justjavac
chromeGooglegoogle apichrome插件
Chrome Web Store 安装地址: https://chrome.google.com/webstore/detail/replace-google-cdn/kpampjmfiopfpkkepbllemkibefkiice
由于众所周知的原因,只需替换一个域名就可以继续使用Google提供的前端公共库了。 同样,通过script标记引用这些资源,让网站访问速度瞬间提速吧
- 进程VS.线程
m635674608
线程
资料来源:
http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/001397567993007df355a3394da48f0bf14960f0c78753f000 1、Apache最早就是采用多进程模式 2、IIS服务器默认采用多线程模式 3、多进程优缺点 优点:
多进程模式最大
- Linux下安装MemCached
字符串
memcached
前提准备:1. MemCached目前最新版本为:1.4.22,可以从官网下载到。2. MemCached依赖libevent,因此在安装MemCached之前需要先安装libevent。2.1 运行下面命令,查看系统是否已安装libevent。[root@SecurityCheck ~]# rpm -qa|grep libevent libevent-headers-1.4.13-4.el6.n
- java设计模式之--jdk动态代理(实现aop编程)
Supanccy2013
javaDAO设计模式AOP
与静态代理类对照的是动态代理类,动态代理类的字节码在程序运行时由Java反射机制动态生成,无需程序员手工编写它的源代码。动态代理类不仅简化了编程工作,而且提高了软件系统的可扩展性,因为Java 反射机制可以生成任意类型的动态代理类。java.lang.reflect 包中的Proxy类和InvocationHandler 接口提供了生成动态代理类的能力。
&
- Spring 4.2新特性-对java8默认方法(default method)定义Bean的支持
wiselyman
spring 4
2.1 默认方法(default method)
java8引入了一个default medthod;
用来扩展已有的接口,在对已有接口的使用不产生任何影响的情况下,添加扩展
使用default关键字
Spring 4.2支持加载在默认方法里声明的bean
2.2
将要被声明成bean的类
public class DemoService {