Linux程序包管理之yum及源代码安装
第十六章、Linux程序包管理之yum及源代码安装
目录
- yum介绍
- yum配置文件
- yum的repo配置文件中可用的变量
- yum命令的使用
- 使用光盘作为本地yum仓库
- 如何创建yum仓库
- 编译安装的三步骤
- 开源程序代码的获取方式
- 安装后的配置
16.1、yum简介
Yum(全称为 Yellow dog Updater, Modified)是redhat系列linux系统的包管理工具。就是类似windows下安装软件那个下一步下一步的东西。由于linux的开源,所以linux下的软件有大量组件依赖。这导致了linux安装一个软件必须先安装各依赖包,yum就是帮助我们解决这个的。
yum的基础是RPM,RPM是由红帽公司开发的软件包管理方式,使用rpm我们可以方便的进行软件的安装、查询、卸载、升级等工作。但是RPM软件包之间的依赖性问题往往会很繁琐,尤其是软件由多个rpm包组成时。 于是,yum基于rpm包管理,做到了能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包的功能,无须繁琐地一次次下载、安装。
16.2、yum repository是什么?
存储了众多rpm包,以及包的相关的元数据文件(放置于特定目录:repodata);
通过配置repo文件中指定远程文件服务器的地址来安装指定的程序包,repo文件中文件服务器的格式:
ftp://
http://
nfs://
file:///指向到repodata所在目录;
16.3、yum客户端
配置文件
/etc/yum.conf:为所有仓库提供公共配置
/etc/yum.repos.d/*.repo:为仓库的指向提供配置
仓库的定义
[repositoryID]
name=Some name for this repository
baseurl=url://path/to/repository/ # 指定仓库的路径
enabled={1|0} # 是否启用此仓库
gpgcheck={1|0} # 是否对程序包进行验证
gpgkey=URL # 指定程序包的签名
enablegroups={1|0} # 是否允许安装包组
failovermethod={roundrobin | priority}
当baseurl指定多个仓库时的次序,默认为:roundrobin,随机挑选;
cost=
定义多个repo时访问开销默认为1000;
16.4、yum命令的使用方法
使用格式
yum [options] [command] [package ...]
[command]列表
command is one of:
* install package1 [package2] [...]
* update [package1] [package2] [...]
* update-to [package1] [package2] [...]
* update-minimal [package1] [package2] [...]
* check-update
* upgrade [package1] [package2] [...]
* upgrade-to [package1] [package2] [...]
* distribution-synchronization [package1] [package2] [...]
* remove | erase package1 [package2] [...]
* autoremove [package1] [...]
* list [...]
* info [...]
* provides | whatprovides feature1 [feature2] [...]
* clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]
* makecache [fast]
* groups [...]
* search string1 [string2] [...]
* shell [filename]
* resolvedep dep1 [dep2] [...]
(maintained for legacy reasons only - use repoquery or yum provides)
* localinstall rpmfile1 [rpmfile2] [...]
(maintained for legacy reasons only - use install)
* localupdate rpmfile1 [rpmfile2] [...]
(maintained for legacy reasons only - use update)
* reinstall package1 [package2] [...]
* downgrade package1 [package2] [...]
* deplist package1 [package2] [...]
* repolist [all|enabled|disabled]
* repoinfo [all|enabled|disabled]
* repository-packages <enabled-repoid> <install|remove|remove-or-reinstall|remove-
or-distribution-synchronization> [package2] [...]
* version [ all | installed | available | group-* | nogroups* | grouplist |
groupinfo ]
* history [info|list|packages-list|packages-info|summary|addon-info|redo|undo|roll‐
back|new|sync|stats]
* load-transaction [txfile]
* updateinfo [summary | list | info | remove-pkgs-ts | exclude-updates | exclude-all
| check-running-kernel]
* fssnapshot [summary | list | have-space | create | delete]
* fs [filters | refilter | refilter-cleanup | du]
* check
* help [command]
16.4.1、常用方法示例
显示仓库列表
yum repolist [all | disabled] # 默认只显示以启用的repo
示例:
[root@www yum.repos.d]# yum repolist
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* epel: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
源标识 源名称 状态
base/7/x86_64 CentOS-7 - Base - mirrors.aliyun.com 9,363
epel/x86_64 Extra Packages for Enterprise Linux 7 - x86_64 10,976
extras/7/x86_64 CentOS-7 - Extras - mirrors.aliyun.com 435
localbase local base repo 9,007
updates/7/x86_64 CentOS-7 - Updates - mirrors.aliyun.com 399
repolist: 30,180
显示程序包
yum list [all | glob_exp1] [glob_exp2] [...]
yum list available| updates| installed [glob_exp1] [...]
示例:
# 1、显示以ansible开头的所有的包
[root@www yum.repos.d]# yum list ansible*
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* epel: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
可安装的软件包
ansible.noarch 2.2.0.0-4.el7 epel
ansible-inventory-grapher.noarch 2.3.2-1.el7 epel
ansible-lint.noarch 3.4.1-1.el7 epel
ansible-openstack-modules.noarch 0-20140902git79d751a.el7 epel
ansible-review.noarch 0.12.2-1.el7 epel
ansible1.9.noarch 1.9.6-2.el7 epel
# 2、显示所有已经安装的包
[root@www yum.repos.d]# yum list installed
安装程序包
yum install package1 [package2] [...]
# 默认安装最新版本,如果希望安装老版本则指定版本号
示例:
# 1、安装tree命令和htop命令
[root@www yum.repos.d]# yum install tree htop
重新安装程序包
yum reinstall package1 [package2] [...]
示例:
# 重新安装tree,htop命令
[root@www yum.repos.d]# yum reinstall tree htop
升级程序包
yum update [package1] [package2] [...]
yum downgrade package1 [package2] [...] #(降级安装)
示例:
# 练习1、升级centos7系统vim编辑器
[root@www yum.repos.d]# yum update vim-common
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* epel: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
正在解决依赖关系
--> 正在检查事务
---> 软件包 vim-common.x86_64.2.7.4.160-1.el7 将被 升级
--> 正在处理依赖关系 vim-common = 2:7.4.160-1.el7,它被软件包 2:vim-enhanced-7.4.160-1.el7.x86_64 需要
---> 软件包 vim-common.x86_64.2.7.4.160-1.el7_3.1 将被 更新
--> 正在检查事务
---> 软件包 vim-enhanced.x86_64.2.7.4.160-1.el7 将被 升级
---> 软件包 vim-enhanced.x86_64.2.7.4.160-1.el7_3.1 将被 更新
--> 解决依赖关系完成
检查可用升级
yum check-update
卸载程序包
yum remove | erase package1 [package2] [...]
# 生产环境中不建议使用remove去卸载,会同时卸载依赖包,影响其它程序;
示例:
[root@www ~]# yum remove tree
查看程序包信息
yum info [...]
示例:
[root@www ~]# yum info htop
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* epel: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
已安装的软件包
名称 :htop
架构 :x86_64
版本 :2.0.2
发布 :1.el7
大小 :207 k
源 :installed
来自源:epel
简介 : Interactive process viewer
网址 :http://hisham.hm/htop/
协议 : GPL+
描述 : htop is an interactive text-mode process viewer for Linux, similar to
: top(1).
查看指定的特性(可以是某文件)是由哪个程序包所提供
yum provides | whatprovides feature1 [feature2] [...]
示例:
[root@www ~]# yum provides /bin/htop
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* epel: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
htop-2.0.2-1.el7.x86_64 : Interactive process viewer
源 :@epel
匹配来源:
文件名 :/bin/htop
清理本地缓存
yum clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]
# 通常清理缓存时使用yum clean all
构建缓存
yum makecache
搜索
yum search string1 [string2] [...]
示例:
[root@www ~]# yum search ansible
查看指定包所依赖的程序
yum deplist package1 [package2] [...]
示例:
# 查看ansible依赖哪些包
[root@www ~]# yum deplist ansible
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* epel: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
软件包:ansible.noarch 2.2.0.0-4.el7
依赖:/usr/bin/python2
provider: python.x86_64 2.7.5-48.el7
依赖:PyYAML
provider: PyYAML.x86_64 3.10-11.el7
依赖:python(abi) = 2.7
provider: python.x86_64 2.7.5-48.el7
依赖:python-httplib2
provider: python-httplib2.noarch 0.7.7-3.el7
依赖:python-jinja2
provider: python-jinja2.noarch 2.7.2-2.el7
依赖:python-keyczar
provider: python-keyczar.noarch 0.71c-2.el7
依赖:python-paramiko
provider: python2-paramiko.noarch 1.16.1-1.el7
provider: python-paramiko.noarch 1.12.4-1.el7.centos
依赖:python-setuptools
provider: python-setuptools.noarch 0.9.8-4.el7
依赖:python-six
provider: python-six.noarch 1.9.0-2.el7
依赖:sshpass
provider: sshpass.x86_64 1.05-5.el7
查看yum事务历史
yum history [info|list|packages-list|packages-info|summary|addon-info|redo|undo|roll‐back|new|sync|stats]
示例:
[root@www ~]# yum history
已加载插件:fastestmirror
ID | 登录用户 | 日期和时间 | 操作 | 变更数
-------------------------------------------------------------------------------
15 | root <root> | 2016-12-29 08:33 | Update | 2
14 | root <root> | 2016-12-29 08:26 | Reinstall | 2
13 | root <root> | 2016-12-29 08:25 | Install | 2 <
12 | root <root> | 2016-12-29 08:16 | Install | 1 ><
11 | root <root> | 2016-12-26 15:07 | Install | 1 >
10 | root <root> | 2016-12-24 15:34 | Install | 1
9 | root <root> | 2016-12-24 15:32 | Install | 2
8 | root <root> | 2016-12-18 15:18 | Install | 1
7 | root <root> | 2016-12-13 11:12 | Install | 1
6 | root <root> | 2016-12-06 22:10 | Install | 4
5 | root <root> | 2016-12-05 21:48 | Install | 1
4 | root <root> | 2016-12-04 18:44 | Install | 1
3 | root <root> | 2016-12-04 18:43 | Install | 1
2 | root <root> | 2016-12-04 18:40 | Install | 1
1 | 系统 <空> | 2016-12-04 18:13 | Install | 387
history list
安装本地程序包
yum install xxx-VERSION.release.arch.rpm
示例:
[root@www Packages]# yum install tree-1.6.0-10.el7.x86_64.rpm
包组管理的相关命令
yum groupinstall group1 [group2] [...]
yum groupupdate group1 [group2] [...]
yum grouplist [hidden] [groupwildcard] [...]
yum groupremove group1 [group2] [...]
yum groupinfo group1 [...]
示例:
[root@www ~]# yum grouplist
已加载插件:fastestmirror
没有安装组信息文件
Maybe run: yum groups mark convert (see man yum)
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* epel: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
可用的环境分组:
最小安装
基础设施服务器
计算节点
文件及打印服务器
MATE 桌面环境
基本网页服务器
虚拟化主机
带 GUI 的服务器
GNOME 桌面
KDE Plasma Workspaces
开发及生成工作站
[root@www ~]# yum groupinstall "Development Tools"
16.4.2、yum的命令行选项
--nogpgcheck:禁止进行gpg check
-y:自动回答为yes
-q:静默模式;
--disablerepo=repoidglob:临时禁用此处指定的repo
--enablerepo=repoidglob:临时启用此处指定的repo
--noplugins:禁用所有插件;
16.5、yum的repo配置文件中可用的变量
$releasever:当前os的发行版的主版本号;
$arch:平台;
$basearch:基础平台;
$YUM0-$YUM9
16.6、创建yum仓库
16.6.1、将本地光盘作为yum仓库
- 挂在本地光盘
- 编辑repo文件
- 查看可用仓库
# 挂载本地光盘
[root@www ~]# mount /dev/cdrom /media/
mount: /dev/sr0 写保护,将以只读方式挂载
[root@www ~]# ls /media/
CentOS_BuildTag EULA images LiveOS repodata RPM-GPG-KEY-CentOS-Testing-7
EFI GPL isolinux Packages RPM-GPG-KEY-CentOS-7 TRANS.TBL
# 编辑repo文件
[root@www ~]# cd /etc/yum.repos.d/
您在 /var/spool/mail/root 中有新邮件
[root@www yum.repos.d]# vim localbase.repo
[localbase]
name=local yum repository
baseurl=file:///media
enbaled=1
gpgcheck=0
# 查看可用仓库
[root@www yum.repos.d]# yum repolist
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* epel: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
源标识 源名称 状态
base/7/x86_64 CentOS-7 - Base - mirrors.aliyun.com 9,363
epel/x86_64 Extra Packages for Enterprise Linux 7 - x86_64 10,976
extras/7/x86_64 CentOS-7 - Extras - mirrors.aliyun.com 435
localbase local yum repository 9,007
updates/7/x86_64 CentOS-7 - Updates - mirrors.aliyun.com 399
repolist: 30,180
16.6.2、创建指定程序包目录创建为仓库
- 安装createrepo命令
- 切换至程序包所在目录
- 创建repodata数据
- 配置repo文件
# 安装createrepo
[root@www repo]# yum -y install createrepo
# 创建/yum/repo目录存放程序包
[root@www ~]# mkdir -p /yum/repo
[root@www ~]# cp /media/Packages/php* /yum/repo/
[root@www ~]# ll /yum/repo/|wc -l
28
您在 /var/spool/mail/root 中有新邮件
[root@www ~]# cd /yum/repo/
[root@www repo]# ls
php-5.4.16-36.el7_1.x86_64.rpm php-mysqlnd-5.4.16-36.el7_1.x86_64.rpm
php-bcmath-5.4.16-36.el7_1.x86_64.rpm php-odbc-5.4.16-36.el7_1.x86_64.rpm
php-cli-5.4.16-36.el7_1.x86_64.rpm php-pdo-5.4.16-36.el7_1.x86_64.rpm
php-common-5.4.16-36.el7_1.x86_64.rpm php-pear-1.9.4-21.el7.noarch.rpm
php-dba-5.4.16-36.el7_1.x86_64.rpm php-pecl-memcache-3.0.8-4.el7.x86_64.rpm
php-devel-5.4.16-36.el7_1.x86_64.rpm php-pgsql-5.4.16-36.el7_1.x86_64.rpm
php-embedded-5.4.16-36.el7_1.x86_64.rpm php-process-5.4.16-36.el7_1.x86_64.rpm
php-enchant-5.4.16-36.el7_1.x86_64.rpm php-pspell-5.4.16-36.el7_1.x86_64.rpm
php-fpm-5.4.16-36.el7_1.x86_64.rpm php-recode-5.4.16-36.el7_1.x86_64.rpm
php-gd-5.4.16-36.el7_1.x86_64.rpm php-snmp-5.4.16-36.el7_1.x86_64.rpm
php-intl-5.4.16-36.el7_1.x86_64.rpm php-soap-5.4.16-36.el7_1.x86_64.rpm
php-ldap-5.4.16-36.el7_1.x86_64.rpm php-xml-5.4.16-36.el7_1.x86_64.rpm
php-mbstring-5.4.16-36.el7_1.x86_64.rpm php-xmlrpc-5.4.16-36.el7_1.x86_64.rpm
php-mysql-5.4.16-36.el7_1.x86_64.rpm
# 生成repodata数据
[root@www ~]# cd /yum/repo/
[root@www repo]# createrepo ./
Spawning worker 0 with 7 pkgs
Spawning worker 1 with 7 pkgs
Spawning worker 2 with 7 pkgs
Spawning worker 3 with 6 pkgs
Workers Finished
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete
[root@www repo]# ll repodata/
总用量 72
-rw-r--r-- 1 root root 7642 12月 29 10:23 1f2790b2f5cb011b0ee50480f1a734b1cfef3fcf8cb5c56715c56ab8b373f928-primary.xml.gz
-rw-r--r-- 1 root root 5091 12月 29 10:23 5bfd453ae038a5befb57f483a0cf16fa2b33c3efbbd5d08102750e751a9dadd6-other.xml.gz
-rw-r--r-- 1 root root 10581 12月 29 10:23 7f3365a22053bad95693995eb31c88102ba25f9c404e88123226dd19a5fdd29e-other.sqlite.bz2
-rw-r--r-- 1 root root 19721 12月 29 10:23 861e8e2872ef3faf07613bba90135feeb4128ce850085544c5e51444d9c7e731-primary.sqlite.bz2
-rw-r--r-- 1 root root 11285 12月 29 10:23 96c960d58f47cc8dd0ecee902139dae3af6c2c5242d9a063549ae54d8cd99548-filelists.sqlite.bz2
-rw-r--r-- 1 root root 6526 12月 29 10:23 ad31846122b77a0150a5eb6f3434d260d30fabd18d211351ceeb7945c310cddd-filelists.xml.gz
-rw-r--r-- 1 root root 2980 12月 29 10:23 repomd.xml
# 配置repo文件
[root@www yum.repos.d]# vim local-php.repo
[localphp]
name=local php repository
baseurl=file:///yum/repo
enbaled=1
gpgcheck=0
# 查看可用仓库是否又localphp
[root@www ~]# yum repolist
已加载插件:fastestmirror
localphp | 2.9 kB 00:00:00
localphp/primary_db | 19 kB 00:00:00
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* epel: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
源标识 源名称 状态
base/7/x86_64 CentOS-7 - Base - mirrors.aliyun.com 9,363
epel/x86_64 Extra Packages for Enterprise Linux 7 - x86_64 10,976
extras/7/x86_64 CentOS-7 - Extras - mirrors.aliyun.com 435
localbase local yum repository 9,007
localphp local php repository 27
updates/7/x86_64 CentOS-7 - Updates - mirrors.aliyun.com 399
repolist: 30,207
16.7、程序包编译安装
16.7.1、开源程序源代码的获取方式
- 官方自建站点获取;
- 代码托管;常用代码托管机构有:
- sourceforge
- GitHub.com
- code.google.com
16.7.2、编译安装前准备工作
编译C源代码
前提:提供开发工具及开发环境;
开发工具:make, gcc等;
开发环境:开发库,头文件;
通过包组提供开发组建
centos6: "development tools", "server platform development"
16.7.3、编译安装的三个步骤
第一步:./configure
1、通过选项传递参数,指定启用特性,安装路径等;执行时会参考用户的指定以及Makefile.in文件生成makefile;
2、检查各依赖到的外部环境;
3、通过—help:获取其支持使用的选项
第二步:make
根据makefile文件,构建应用程序;
第三步:make install
是一个复制文件,生成链接的过程;
建议:安装前查看INSTALL及README文件;
16.7.4、安装后的配置
# 1、导出二进制程序目录至PATH环境变量中;
编辑:/etc/profile.d/NAME.sh
export PATH=/path/to/bin:$PATH
# 2、导出库文件路径
编辑:/etc/ld.so.conf.d/NAME.conf
添加新的库文件所在目录至此文件中;让系统重新生成缓存
ldconfig [-v]
# 3、导出头文件
基于链接的方式实现:将安装路径下include目录软链接至/usr/include/与程序对应的名称
ln -sv /PATH/TO/APPDIR/include /usr/include/APP_NAME #
# 4、导出帮助手册
编辑/etc/man.config文件
添加一个MANPATH
Linux程序包管理之yum及源代码安装的更多相关文章
- 十七、程序包管理之yum和编译安装
YUM Redhat二次发行版 Yellow Dog Linux,上使用的yum(Yellowdog Update Modifier),由yellow dog 研发 yum命令的工作原理 1.接收用户 ...
- Linux程序包管理初步-yum的使用
何为yum? yum:由yellow dog研发,全称Yellowdog Update Modifier 是rhel系列系统上rpm包管理器的前端工具,可用来自动解决依赖关系,从而更好的实现程序包的安 ...
- 【程序包管理】Linux程序包管理之yum源安装
yum源安装是我们工作中常用的一种方式,它是在Fedora和RedHat以及SUSE中基于rpm的软件包管理器,它可以使系统管理人员交互和自动化地更细与管理RPM软件包,能够从指定的服务器自动下载RP ...
- Linux程序包管理rpm与yum
Linux程序包管理 Linux中软件的安装主要有两种形式:一种是直接下载源代码包自行编译后安装,另一种直接获取rpm软件包进行安装. 程序的组成部分: 二进制程序:程序的主体文件,比如我们运行一个l ...
- linux基础之程序包管理(rpm,yum)
一.rpm 安装:rpm { -i | --install } [ install-options ] PACKAGE_FILE... -v: 显示安装时的详细信息 -vv: 显示许多难以阅读的调试信 ...
- Linux 程序包管理-YUM
前端工具YUM管理程序包: rpm管理软件虽然方便,但是需要手工解决软件包的依赖关系:很多时候安装一个软件需要首先安装一个或多个(有时多达上百个)其它软件,手工解决很复杂:使用yum可以解决这个问题 ...
- Linux 程序包管理-RPM
程序简介: POSIX(Portable Openratin System)跨平台系统:不同操作系统平台的标准C库(glibc)都是遵循POSIX规范的,这样基于标准库开发程序的源代码可以夸平台编译 ...
- Linux程序包管理初步-rpm的使用
在Linux系统上,一般而言,对于程序包管理器来说分为三类: debian:dpt,dpkg; (程序包后缀.deb) rhel:rpm (程序包后缀.rpm) suse:rp ...
- Linux程序包管理.md
rpm 简介 RPM包管理员(简称RPM,全称为The RPM Package Manager)是在Linux下广泛使用的软件包管理器.RPM此名词可能是指.rpm的文件格式的软件包,也可能是指其本身 ...
随机推荐
- 前端学PHP之PDO预处理语句
× 目录 [1]定义 [2]准备语句 [3]绑定参数[4]执行查询[5]获取数据[6]大数据对象 前面的话 本来要把预处理语句和前面的基础操作写成一篇的.但是,由于博客园的限制,可能是因为长度超出,保 ...
- git命令分类图
- ASP.NET Core真实管道详解[2]:Server是如何完成针对请求的监听、接收与响应的【上】
Server是ASP .NET Core管道的第一个节点,负责完整请求的监听和接收,最终对请求的响应同样也由它完成.Server是我们对所有实现了IServer接口的所有类型以及对应对象的统称,如下面 ...
- C#泛型方法解析
C#2.0引入了泛型这个特性,由于泛型的引入,在一定程度上极大的增强了C#的生命力,可以完成C#1.0时需要编写复杂代码才可以完成的一些功能.但是作为开发者,对于泛型可谓是又爱又恨,爱的是其强大的功能 ...
- TeamCity : 自动触发 Build
创建了 build 的配置以后,您既可以手动点击 "Run" 按钮来触发一次 build 过程,也可以通过 Triggers 配置实现自动触发 build 过程.一个 trigge ...
- 让Lua自己把文件夹下面的所有文件自动加载起来吧
没有想到我也做了一回标题党.其实这里边说的自动还是有夸大其词的部分.其实只是指定文件夹,然后根据指定文件夹数据,加载目录下边的内容而已. 怎么来进行Lua文件的加载 一般情况下,相关的功能需要给他创建 ...
- 仅此一文让你明白ASP.NET MVC原理
ASP.NET MVC由以下两个核心组成部分构成: 一个名为UrlRoutingModule的自定义HttpModule,用来解析Controller与Action名称: 一个名为MvcHandler ...
- 【无私分享:ASP.NET CORE 项目实战(第五章)】Repository仓储 UnitofWork
目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 本章我们来创建仓储类Repository 并且引入 UnitOfWork 我对UnitOfWork的一些理解 UnitOfW ...
- 第一篇 Entity Framework Plus 之 Audit
一般系统会有登陆日志,操作日志,异常日志,已经满足大部分的需求了.但是有时候,还是需要Audit 审计日志,审计日志,主要针对数据增,改,删操作数据变化的记录,主要是对数据变化的一个追踪过程.其中主要 ...
- JavaWeb_day03_员工信息添加修改删除
day03员工的添加,修改,删除 修改功能 思路 : 点击修改员工数据之后,跳转到单行文本,查询要修改的员工id的全部信息,主键id设置为readonly,其余的都可以修改, 修改之后,提交按钮,提交 ...