热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

日志管理方法及系统

摘要本发明涉及应用系统日志管理技术领域,提供了一种日志管理方法和系统,所述方法包括如下步骤:S1:初始化系统业务功能列表和业
摘要
本发明涉及应用系统日志管理技术领域,提供了一种日志管理方法和系统,所述方法包括如下步骤:S1:初始化系统业务功能列表和业务功能方法列表;S2:将业务操作中的具体操作信息与系统日志表和历史数据日志表直接相关联;S4:根据业务操作自动记录日志信息。本发明从整体考虑整个应用系统的日志信息与业务操作挂接,用户在运行时可以根据当前的需要,选择某业务操作是否需要记录日志,并且在业务操作界面能即时将相关的日志信息调出来,不需要再跑到专门的日志查询界面,大大简化了用户的操作。
 技术领域


[0001] 本发明涉及应用系统日志管理技术领域,特别涉及一种系统日志与业务操作的无 缝挂接日志管理方法及系统。

背景技术

[0002] 要保护和提高计算机用户的网络安全,由各种操作系统、应用程序、设备和安全产 品的日志数据能够帮助用户提前发现和避开灾难,并且找到安全事件的根本原因。目前,基 本上每个应用系统都有自己的日志信息,日志数据对于实现网络安全的价值有多大取决于 两个因素:第一,用户的系统和设备必须进行合适的设置以便记录你需要的数据。第二,用 户必须有合适的工具、培训和可用的资源来分析收集到的数据。

[0003] 在能够分析日志数据之前,显然要收集数据。更重要的是,记录数据的程序或者设 备要设置为收集需要的数据。一旦收集完日志数据,需要解决的问题就是如何有效地利用 这些数据。

[0004] 对用户来讲操作日志最通用的做法是把日志信息与业务操作隔离,在实现上常采 用如下方式:

[0005] 1)构造系统日志表

[0006] 系统日志表一般包含如下字段:

[0007]

Figure CN101436962BD00041

[0008] 另外,不同的系统根据框架的不同,可以增加一些框架相应的属性或者一些冗余 字段,但是核心的字段就如上表所列。

[0009] 2)业务功能在执行操作时,通过代码记录日志

[0010] 在用户执行某项操作时,如新增销售订单,对应系统中会有一个方法来进行数据的处理,如插入销售订单数据表。在插入完成后,会调用一个公共的日志记录方法,将操作 情况记录到步骤1)中的系统日志表。

[0011] 根据框架的不同,在使用上会存在差异,有些系统是框架自动去记录日志,但是操 作方式与原理是一样的。

[0012] 3)查询日志信息

[0013] 在应用系统的“系统管理”子系统下面挂一个日志查询的模块,用户可以在查询界 面输入查询条件,如功能、操作时间范围、操作者等;确定后,系统就从步骤1)的系统日志 表将符合条件的日志记录显示出来。

[0014] 以上方式对用户来讲特别不友好,需要从现有业务操作界面切换到日志查询界 面,而且还要根据组合条件才能匹配到目标业务数据。如在修改销售订单001时,想查看其 对应的日志信息,则需要切换到“系统管理”子系统下的日志查询界面,并输入“功能名称= 销售订单,操作实例=001”才能查到。而有些系统甚至没有专门的“操作实例”字段,这样 查询出来的结果要再一次定位,增加了系统处理流程。

[0015] 对普通的只注重操作结果的业务来讲,以上方式基本上能满足应用要求;但是对 注重操作过程的业务来讲,上述操作方式无法使用户了解到业务数据曾经发生过什么样的变化。

[0016] 有些应用系统为日志管理的单个功能点增加历史数据查询的功能,即增加一个专 门的数据表用来维护历史数据的变更,或者增加一个日志联查的功能,能在当前界面查询 到操作日志。但上述功能的增加不是基于一个日志查询系统整体的考虑,而且以后想为其 它功能再增加历史数据查询或者日志联查功能,或者取消当前的日志联查,就需要增加数 据表并修改代码了,增加了系统日志管理的复杂性。

发明内容

[0017] 本发明目的是要解决日志信息与业务操作挂接的问题,将系统日志与业务关联起 来,并且将日志分类,使用户不必从统一的日志信息表中查询符合条件的记录,并且能够决 定在哪些重要数据上记录其历史变动的详细信息。

[0018] 为解决上述技术问题,本发明提供了一种日志管理方法,包括如下步骤:

[0019] Sl :初始化系统业务功能列表和业务功能方法列表;

[0020] S2 :创建系统日志表和历史数据日志表;

[0021] S3 :将业务操作中的具体操作信息与系统日志表和历史数据日志表直接相关联;

[0022] S4 :根据业务操作自动记录日志信息。

[0023] 其中,系统业务功能列表中至少包括如下字段:业务功能ID、功能编码、功能名 称,还可以包括功能描述、层次、上级功能节点、是否可用字段。

[0024] 业务功能方法列表至少包括如下字段:业务功能方法ID、功能ID、功能方法名、方 法类型、日志记录方式;其中功能ID对应系统业务功能列表中的ID。

[0025] 优选的,在步骤Sl之后,还包括设置日志记录方式的步骤;所述日志记录方式有 三种:记录操作、记录历史数据、不记录;默认为记录操作。

[0026] 另一方面,本发明提供一种日志管理系统,由客户端和服务器端组成,

[0027] 所述服务器端包括:列表初始化单元,用于初始化系统业务功能列表和业务功能方法列表;日志表创建单元,用于创建系统日志表和历史数据日志表;数据关联单元,将业 务操作中的具体操作信息与系统日志表和历史数据日志表直接相关联;日志记录单元,用 于根据业务操作自动记录日志信息。

[0028] 其中,所述客户端包括:业务操作单元,用于客户端的业务操作;

[0029] 所述业务操作单元包括:日志记录方式设置单元,用于根据业务功能方法列表提 供的方式设置日志记录方式。

[0030] 与现有技术相比,本发明从整体考虑整个应用系统的日志信息与业务操作挂接, 用户在运行时可以根据当前的需要,选择某业务操作是否需要记录日志,以及是否需要记 录历史数据的变动过程;并且,用户在业务操作界面能即时将相关的日志信息调出来,不需 要再跑到专门的日志查询界面,大大简化了用户的操作。

附图说明

[0031] 图1是本发明实施例的系统日志与业务操作挂接的总体流程示意图;

[0032] 图2是本发明实施例的应用系统根据用户业务操作记录日志信息的过程示意图;

[0033] 图3表示本发明所述日志管理系统实施例的逻辑结构示意图。

Figure CN101436962BD00061

Figure CN101436962BD00071

[0040] 在上述字段中,前三个字段(ID、功能编码、功能名称)是必须具备的,根据系统的 不同,可以选择性的添加其他的辅助性字段,如上述示例列表中的“功能描述”、“层次”等字 段,还可以设置关联字段,与系统中具体的界面操作类关联,以便在点击菜单时,打开对应 的操作界面。在此仅以上表所列的核心的基本字段为例进行说明。

[0041] 其中,ID是系统业务功能列表的主键,是用来唯一表示一条数据的字段,其值不能 重复,每个ID唯一定位一条记录,比如,在上述业务功能列表中,对于功能名称字段为“销 售订单”的记录,有唯一对应的ID和功能编码,其中ID用于应用系统内部数据管理时对该 业务功能的内部唯一性标识,功能编码则是面向用户和系统管理员的对于该业务功能的外 部唯一性标识。

[0042] 在本发明的一个实施例中采用自动编号主键,就是新建一个ID字段,自动增长, 非常方便也满足主键的原则,优点是:数据库自动编号,速度快,而且是增量增长,聚集型主 键按顺序存放,对于检索非常有利;数字型的主键占用空间小,易排序,在程序中传递也方 便;通过非系统增加记录(比如手动录入,或是用其他工具直接在表里插入新记录,或老系 统数据导入)时,也非常方便,不用担心主键重复问题。当然,也可以采用其它如Max加一、 自制加一、⑶ID等方式设计主键,这些都属于本领域技术人员所熟知的技术,在此不再赘 述。

[0043] 功能编码字段表示应用系统提供的每一业务功能的唯一编码,用于标识应用系统 所提供的业务功能。如前所述,在该系统业务功能列表中,每一功能编码都唯一对应相应的 功能名称和功能描述,功能名称和功能描述字段是为了用户和系统管理人员管理、查询理 解上的方便而设置的,功能名称是对于业务功能的命名,如“销售订单”、“采购出库单”、“采 购单”、“物料需求计划”、“人力资源类型管理”等;功能描述是对业务功能的作用或者所能 实现目的的详细表述。层次字段表示当业务前功能在业务功能清单中所处的层次,如0表 示根节点,即应用系统,1表示子模块,2表示子模块下的功能...等。上级功能节点字段表 示当前业务功能的父节点。是否可用字段表示对于当前业务功能的控制能否被用户使用, 默认为“是”。

[0044] 2)初始化业务功能方法列表

[0045] 针对前述系统业务功能列表中的业务功能,初始化每项业务功能所对应的方法, 如系统业务功能列表中功能名称为“销售订单”,方法列表中就相应针对销售订单的操作 (如新增、修改、审核等)作一系列限定和描述。业务功能方法列表所包含的字段如下:

[0046]

Figure CN101436962BD00081

[0047] 在上述字段中,前四个字段(ID、功能ID、功能方法名和方法类型)和“日志记录方 式字段”是必须具备的,根据系统的不同,还可以选择性的添加其他的辅助性字段,如上述 示例列表中的“功能方法描述”、“功能方法路径”字段。

[0048] 其中,ID是业务功能方法列表的主键,唯一定位一条功能方法的记录。功能ID对 应系统业务功能列表中的主键ID,从而建立起系统业务功能列表与业务功能方法列表之间 的联系;还是以系统业务功能列表中功能名称为“销售订单”为例,其对应于功能方法列表 中的功能方法名可以有add、delete, modify三种,所对应的功能方法描述分别为新增、删 除、修改。功能方法路径是当前方法所对应类的路径。

[0049] 方法类型分为以下两类:

[0050] a)状态变更类

[0051] 状态变更类主要有两种情况,一种是数据不发生变动,仅仅是状态改变,此时不需 要记录它的数据变动,只记录操作即可,如审核;一种是数据被删除,此时只在系统日志表 中记录删除操作即可,如删除销售订单。有一个例外就是新增操作,由于在系统可以记录历 史数变动过程,所以对新增操作同样不需要记录历史数据,也就是说如果该数据未发生改 变,则当前值就是新增时的值,因此,业务数据的新增操作也属于状态变更类,只需记录操 作即可。

[0052] b)数据变更类

[0053] 即数据发生变动且未被删除,此时除了记录操作外,还需要记录历史数据的变动, 如修改、变更销售订单。

[0054] 日志记录方式表示当前方法记录日志的方式,可以为以下三种方式之一:记录操 作、记录历史数据、不记录。其中,记录操作仅仅记录应用系统的操作结果,即用户只能知道 某某日期,某个用户针对某个功能作了什么操作,如“XX日期,系统管理员新增用户”,在存 储的时候是将相应的内容拆开存储在后述“系统日志表”的相应字段中。记录历史数据,除 记录操作外,还记录数据的变化过程,其存储方式见后述“历史数据日志表”。不记录,表示 不记录操作,也不记录历史数据。

[0055] 3)针对每个功能方法,设置日志记录方式[0056] 系统提供日志记录方式设置界面,显示内容如前述“业务功能方法列表”的记录, 用户可以选中具体的某个业务功能的某个方法名,设置日志的记录方式,提供的选项为“记 录操作”、“记录历史数据”和“不记录”;默认为“记录操作”。

[0057] 4)存储功能方法列表日志记录方式字段

[0058] 根据用户在日志设置界面的操作结果,将用户设置的日志记录方式存储在“业务 功能方法列表”的“日志记录方式”字段,以便后期用户进行业务操作过程中根据应用系统 用户的需求进行相应的日志记录工作。

[0059] 5)创建系统日志表及历史数据日志表

[0060] 系统日志表用于记录用户对应用系统的操作结果,传统日志表如背景技术中“构 造系统日志表”所示,本发明优选实施方式之一所使用的系统日志表与传统日志表有一些 差别:

[0061] >增加记录ID、记录分录ID字段;

[0062] >删除“操作对象”以及“业务类型”字段;

[0063] >修改“功能名称”为“功能ID”,修改“操作类型”为“方法ID”。

[0064] 具体如下:

[0065]

Figure CN101436962BD00091

[0066] 同样,系统日志表中的ID是系统日志表的主键,唯一定位一条系统日志的记录。 操作者、操作时间、IP地址、执行结果字段设置都和传统的日志表一样,在此不再多加描述。

[0067] 功能ID以及方法ID用来定位一个用户的具体业务操作,即在某个功能上作的什么操作,分别对应“业务功能表”、“业务功能方法表”的ID。

[0068] 记录ID表示操作对象即被操作的具体数据的ID,如“001号销售订单的ID”。记 录分录ID表示操作对象即被操作的具体数据的分录的ID,如“001号销售订单的第1条明 细的ID”;记录分录ID是一个必须的字段,如果该业务数据没有分录的时候,该记录分录ID 的字段内容是空。

[0069] 历史数据日志表所包含的字段如下表所示:

[0070]

Figure CN101436962BD00101

[0071] 同样,历史数据日志表中的ID是历史数据日志表的主键,唯一定位一条历史数据 日志的记录。操作者、操作时间、IP地址、功能ID、方法ID、记录ID、记录分录ID分别与相 应系统日志表中的对应字段所记录的内容相同。历史数据日志表的重点在于变动的字段名 以及用于记录新旧值的“原值”、“修改值”字段,通过该字段名以及原值、修改值字段可以便 方便地查看当前业务数据发生过哪些变动。

[0072] 对于应用系统来说,一个功能名称(被操作的功能点)可能具有多条记录,而每一 条记录也可能具有多个分录,因此,在本发明中,系统日志表和历史数据日志表的记录细化 到每个功能点,每条记录的最小分支单位。

[0073] 下面以销售订单为例,详细说明每个表、每个字段的取值。

[0074] >业务功能列表

[0075]

Figure CN101436962BD00111

[0076] >业务功能方法列表

[0077]

Figure CN101436962BD00112

[0078] >销售订单表(仅做参考用,与实际业务系统可能有差异)

[0079]

Figure CN101436962BD00113
Figure CN101436962BD00121

[0080] >销售订单分录表

[0081]

Figure CN101436962BD00122

[0082] >系统日志表

[0083]

Figure CN101436962BD00123

[0084] >历史数据日志表

[0085]

Figure CN101436962BD00124
Figure CN101436962BD00131

[0086] 6)将业务操作中的具体操作信息与系统日志表和历史数据日志表直接相关联

[0087] 将用户在业务操作过程中所可能涉及的每一个业务功能、业务功能方法以及记录 ID、记录分录ID等业务操作信息都与相应的系统日志表和历史数据日志表的相应字段关 联起来,这些业务操作信息也是与相应的系统日志表和历史数据日志表相关的字段所对应 的操作信息。以便用户在执行业务操作过程中,不必另行调用日志查询界面,在业务操作界 面即能直接根据业务操作对象(业务功能、业务功能方法以及记录ID、记录分录ID、字段 名所具体涉及的内容等)与日志相关字段的关联性,查询与该业务操作对象相关的日志信 肩、ο

[0088] 为了避免混淆,对于上述列表和日志表的主键ID也可以分别表述为业务功能 ID(指业务功能列表中的主键ID)、业务功能方法ID(指业务功能方法列表中的主键ID)、 系统日志ID (指系统日志表中的主键ID)、历史数据日志ID (指历史数据日志表中的主键 ID)。

[0089] 比如,对于销售订单管理界面的001号销售订单,如果用户进入销售订单管理界 面,对001号销售订单进行修改销售订单操作,那么应用系统弹出修改销售订单录入界面, 用户将必要的数据(如业务日期、分录的物料、计量单位、金额等)录入完成后,选择确定, 然后通过应用系统向服务器端发出执行提交的申请。在上述操作过程中,所涉及的业务数 据依次为:业务功能---“销售订单”对应的业务功能ID、业务功能方法---“修改”对应的 业务功能方法ID、记录ID— “001号销售订单”对应的销售订单ID,记录分录ID— "001 号销售订单分录”对应的分录ID,以及其具体涉及的内容(销售订单编号、业务日期、分录 的物料、计量单位、金额等)。那么在应用系统处理层面,就需要预先将如上描述的“业务功 能”与系统日志表和历史数据日志表的“功能ID”字段相关联;将“业务功能方法”与系统日志表和历史数据日志表的“方法ID”字段相关联;将“记录ID”与系统日志表和历史数据 日志表的“记录ID”字段相关联;将“记录分录ID”与系统日志表和历史数据日志表的“记 录分录ID”字段相关联”;对历史数据日志表来说,需要查询具体字段的变动记录,还需要将 “字段名,,与历史数据日志表的“字段名,,对应,譬如“金额”字段。以此能找到具体的日志 fn息ο

[0090] 7)业务操作自动记录日志信息

[0091] 在应用系统端完成系统业务功能功能列表、系统业务功能方法列表的初始化和系 统日志表、历史数据日志表的创建后,当用户在应用系统中进行业务操作时,应用系统就会 根据用户的业务操作过程和内容,按照系统日志表和历史数据日志表的格式要求记录下应 用系统使用的相关信息以及历史数据信息。

[0092] 应用系统根据用户的业务操作记录系统日志或者历史数据日志的过程如图2所 示。用户在客户端执行业务操作后提交服务端处理,服务端接收到客户的执行请求后,除了 进行相应的应用系统业务数据处理外,还需要进行系统日志的处理。基于本发明的描述重 点在于对系统日志的记录处理,因此图2仅示出了应用系统根据用户的业务操作记录日志 信息的过程。

[0093] 以前述对销售订单的管理为例,用户在客户端进入销售订单管理界面,对001号 销售订单进行操作,选择修改销售订单,应用系统弹出修改销售订单录入界面,用户将必要 的数据(如业务日期、分录的物料、计量单位、金额等)录入完成后,选择确定,然后通过应 用系统向服务器端发出执行提交的申请。在用户选择录入的过程中,用户执行操作所涉及 的功能名称、功能方法名、被操作记录的ID(001号销售订单)、记录分录ID、原值以及修改 值等信息就相应被确定下来。

[0094] 服务器端从客户端传递的信息中获取相关参数:功能ID (销售订单对应的功能名 称ID)、功能方法ID (修改对应的功能方法ID)、销售订单对象(即修改之后的销售订单,包 括销售订单ID、订单编号、业务日期)、销售订单分录对象(即修改之后的销售订单分录,包 括分录ID、分录物料信息、分录金额信息等)、销售订单净变动对象(即哪些字段发生值变 化,由客户端生成,一般可由系统框架处理,包含字段名、原值、变动值、类型,其中类型为: 主表字段、明细表字段,对多明细的单据,通过再增加类型值来区分)等,然后根据相关参 数中功能ID、功能方法ID从业务功能方法列表中得到“日志记录方式”,根据日志记录方式 判断应用系统下一步要进行的关于日志记录方面的操作。

[0095] 如果“日志记录方式”是不记录,则不对系统日志表和历史数据日志表作任何改变。

[0096] 如果“日志记录方式”是记录历史数据,则从功能方法列表中取到“方法类型”,如 前所述,分为两类,如果属于“数据变更类”,则将操作者、操作时间IP地址、功能ID、方法 ID、执行结果、记录ID、记录分录ID等系统日志表需要记录的信息插入系统日志表的相应 记录字段,然后,再将操作者、操作时间、IP地址、功能ID、方法ID、记录ID、记录分录ID(根 据字段类型,如果为“主表字段”则此字段为空)、字段名、原值、修改值等历史数据日志表要 记录的信息插入历史数据日志表的相应记录字段。如果属于“状态变更类”,则仅需要对系 统日志表进行修正,将操作者、操作时间IP地址、功能ID、方法ID、执行结果、记录ID、记录 分录ID等系统日志表需要记录的字段信息插入系统日志表中。[0097] 如果“日志记录方式”是记录操作,则仅需要对系统日志表进行修正,将操作者、操 作时间IP地址、功能ID、方法ID、执行结果、记录ID、记录分录ID等系统日志表需要记录的 字段信息插入系统日志表中。

[0098] 经过以上记录日志的过程,应用系统就完成了针对用户一个业务操作的日志记 录,用户可以在客户端的业务操作界面通过选择的操作对象(如:001号销售订单)、借助功 能ID以及功能方法ID与日志表之间的对应关系直接查询相应的系统日志信息或者历史数 据日志信息。

[0099] 8)从系统日志表及历史数据日志表中查找当前ID对应日志或历史记录

[0100] 根据用户在业务操作界面选择的操作数据,如001号销售订单,应用系统取出功 能ID、功能方法ID ( —般在代码中,每个功能点定义一个功能ID及多个方法ID的常量,具 体调用时引用这些常量即可),这里为“销售订单”和“新增”,按照当前操作记录ID(001号 销售订单对应的ID)、记录分录ID(第1条明细)从步骤5)的系统日志表中查找该条记录 对应的系统日志信息。

[0101] 如果用户选择查看历史数据,则根据功能ID、功能方法ID、记录ID、记录分录ID、 字段名与历史数据日志表匹配,取到相应数据,并将相同日期的多条记录合并成一条,形 如:

[0102]

Figure CN101436962BD00151

[0103] 对应于前述对系统日志进行管理的方法,本发明还提供一种相应于前述日志管理 方法的日志管理系统,其逻辑结构如图3所示,该日志管理系统由客户端1和服务器端2组 成,其中客户端1包括用于客户端的业务操作的业务操作单元11 ;服务器端2包括列表初 始化单元21、日志表创建单元22、数据关联单元23、日志记录单元M和业务操作单元25。 其中,列表初始化单元21用于初始化系统业务功能列表和业务功能方法列表;日志表创建 单元22用于创建系统日志表和历史数据日志表;数据关联单元23用于将业务操作中的具 体操作信息与系统日志表和历史数据日志表直接相关联;日志记录单元M用于根据业务 操作自动记录日志信息。

[0104] 业务操作单元11又包括日志记录方式设置单元111,用于根据业务功能方法列表 提供的方式设置日志记录方式。

[0105] 基于与前述日志管理方法的对应性,在此不再对本发明的日志管理系统各逻辑组 成之间的关系及工作流程作详细说明,本领域技术人员从前述对日志管理方法的实施例表 述中,不用付出创造性的劳动即可得出实现上述日志管理系统的更为详细的技术方案。

[0106] 以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。对于 本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的 保护范围内。



推荐阅读
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • 本文详细介绍了SQL日志收缩的方法,包括截断日志和删除不需要的旧日志记录。通过备份日志和使用DBCC SHRINKFILE命令可以实现日志的收缩。同时,还介绍了截断日志的原理和注意事项,包括不能截断事务日志的活动部分和MinLSN的确定方法。通过本文的方法,可以有效减小逻辑日志的大小,提高数据库的性能。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 本文介绍了Java工具类库Hutool,该工具包封装了对文件、流、加密解密、转码、正则、线程、XML等JDK方法的封装,并提供了各种Util工具类。同时,还介绍了Hutool的组件,包括动态代理、布隆过滤、缓存、定时任务等功能。该工具包可以简化Java代码,提高开发效率。 ... [详细]
  • 本文介绍了高校天文共享平台的开发过程中的思考和规划。该平台旨在为高校学生提供天象预报、科普知识、观测活动、图片分享等功能。文章分析了项目的技术栈选择、网站前端布局、业务流程、数据库结构等方面,并总结了项目存在的问题,如前后端未分离、代码混乱等。作者表示希望通过记录和规划,能够理清思路,进一步完善该平台。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • CentOS 7部署KVM虚拟化环境之一架构介绍
    本文介绍了CentOS 7部署KVM虚拟化环境的架构,详细解释了虚拟化技术的概念和原理,包括全虚拟化和半虚拟化。同时介绍了虚拟机的概念和虚拟化软件的作用。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • Tomcat/Jetty为何选择扩展线程池而不是使用JDK原生线程池?
    本文探讨了Tomcat和Jetty选择扩展线程池而不是使用JDK原生线程池的原因。通过比较IO密集型任务和CPU密集型任务的特点,解释了为何Tomcat和Jetty需要扩展线程池来提高并发度和任务处理速度。同时,介绍了JDK原生线程池的工作流程。 ... [详细]
  • 本文介绍了作者在开发过程中遇到的问题,即播放框架内容安全策略设置不起作用的错误。作者通过使用编译时依赖注入的方式解决了这个问题,并分享了解决方案。文章详细描述了问题的出现情况、错误输出内容以及解决方案的具体步骤。如果你也遇到了类似的问题,本文可能对你有一定的参考价值。 ... [详细]
  • Java学习笔记之面向对象编程(OOP)
    本文介绍了Java学习笔记中的面向对象编程(OOP)内容,包括OOP的三大特性(封装、继承、多态)和五大原则(单一职责原则、开放封闭原则、里式替换原则、依赖倒置原则)。通过学习OOP,可以提高代码复用性、拓展性和安全性。 ... [详细]
  • 数字账号安全与数据资产问题的研究及解决方案
    本文研究了数字账号安全与数据资产问题,并提出了解决方案。近期,大量QQ账号被盗事件引起了广泛关注。欺诈者对数字账号的价值认识超过了账号主人,因此他们不断攻击和盗用账号。然而,平台和账号主人对账号安全问题的态度不正确,只有用户自身意识到问题的严重性并采取行动,才能推动平台优先解决这些问题。本文旨在提醒用户关注账号安全,并呼吁平台承担起更多的责任。令牌云团队对此进行了长期深入的研究,并提出了相应的解决方案。 ... [详细]
  • PDF内容编辑的两种小方法,你知道怎么操作吗?
    本文介绍了两种PDF内容编辑的方法:迅捷PDF编辑器和Adobe Acrobat DC。使用迅捷PDF编辑器,用户可以通过选择需要更改的文字内容并设置字体形式、大小和颜色来编辑PDF文件。而使用Adobe Acrobat DC,则可以通过在软件中点击编辑来编辑PDF文件。PDF文件的编辑可以帮助办公人员进行文件内容的修改和定制。 ... [详细]
author-avatar
丹丹2502912601
这个家伙很懒,什么也没留下!
Tags | 热门标签
RankList | 热门文章
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有