`

SQL效率之索引

 
阅读更多

一、关于索引的知识
要写出运行效率高的sql,需要对索引的机制有一定了解,下面对索引的基本知识做一介绍。
1、索引的优点和局限
索引可以提高查询的效率,但会降低dml操作的效率。
所以建立索引时需要权衡。对于dml操作比较频繁的表,索引的个数不宜太多。
2、什么样的列需要建索引?
经常用于查询、排序和分组的列(即经常在where、order或group by子句中出现的列)。
3、主键索引和复合索引
对于一张表的主键,系统会自动为其建立索引。
如果一张表的几列经常同时作为查询条件,可为其建立复合索引。
4、建立索引的语句
create  index  i_staff  on  staff  (empno);
create  index  i_agent  on  agent  (empno, start_date);
5、删除索引的语句
drop  index  I_staff;
drop  index  I_agent;

6、查询索引的语句
法一:利用数据字典
表一:all_indexes  查看一张表有哪些索引以及索引状态是否有效
主要字段: index_name,  table_name,  status
例如:select   index_name,  status  
from  all_indexes
        where  table_name=’STAFF_INFO’;
      INDEX_NAME        STATUS
      ---------------------       -----------
      I_STAFF             VALID  
            表二:all_ind_columns  查看一张表在哪些字段上建了索引
              主要字段: table_name,  index_name,  column_name,  column_position
例如: select  index_name,  column_name,  column_position
from  all_ind_columns
         where  table_name=’AGENT’
      INDEX_NAME        COLUMN_NAME     COLUMN_POSITON
      ---------------------       -----------------------      --------------------------
     I_AGENT             EMPNO              1
     I_AGENT             START_DATE         2
由此可见,agent表中有一个复合索引(empno, start_date )
法二:利用toad工具
toad用户界面比sql*plus友好,并且功能强大。你可以在toad编辑器中键入表名,按F4,便可见到这张表的表结构以及所有索引列等基本信息。
7、索引的一些特点
1): 不同值较多的列上可建立检索,不同值少的列上则不要建。比如在雇员表的“性别”列上只有“男”与“女”两个不同值,因此就没必要建立索引。如果建立索引不但不会提高查询效率,反而会严重降低更新速度。
2): 如果在索引列上加表达式,则索引不能正常使用
   例如:b1,c1分别是表b,c的索引列
   select  *  from  b  where  b1/30< 1000 ;
   select  *  from  c  where  to_char(c1,’YYYYMMDD HH24:MI:SS’) = ‘200203 14:01:01’;
以上都是不正确的写法
3): where子句中如果使用in、or、like、!=,均会导致索引不能正常使用
   例如:select  *  from  b  where  b1=30  or  b1=40;
4):使用复合索引进行查询时必须使用前置列
   例如表a上有一个复合索引(c1,c2,c3),则c1为其前置列
   如果用c1或c1+c2或c1+c2+c3为条件进行查询,则该复合索引可以发挥作用,反之,用c2或c3或c2+c3进行查询,则该索引不能起作用。


二. 书写sql注意事项:
1、避免给sql语句中引用的索引列添加表达式:
典型实例:
b1,c1分别是表b,c的索引列:
1)select  *  from  b  where  b1/30< 1000 ;
2)select  *  from  c  where to_char(c1,’YYYYMMDD HH24:MI:SS’) = ‘200203 14:01:01’;
替代方案:
1) select  *  from  b where  b1 < 30000;
2) select * from c  where c1 = to_date(‘20020301 14:01:01’, ‘YYYYMMDD HH24:MI:SS’);
注:在lbs中有两个重要字段,pol_info中的undwrt_date和prem_info中的payment_date,这两个日期是带时分秒的,所以经常有同事用to_char 来查询某一时间段的数据。
例如:select  count(*)  from  pol_info  where  to_char(undwrt_date,’YYYYMMDD’)=’20020416’;
      select  count(*)  from  prem_info  where  to_char(undwrt_date,’YYYYMM’)=’200203’;
替代方案:
select  count(*)  from  pol_info  
where  undwrt_date>=to_date(’20020416’,’YYYYMMDD’)  and
       undwrt_date<to_date(’20020417’,’YYYYMMDD’);
select  count(*)  from  prem_info  
where  payment_date>=to_date(’20020301’,’YYYYMMDD’)  and
       payment_date<to_date(’20020401’,’YYYYMMDD’);

2、避免在where子句中使用in、or、like、!=
典型实例:
a1是a表上的索引列:
1) select  *  from  a
   where  ( a1 = ‘0’ and ...)  or  (a1 = ‘1’ and ...);
2) select  count(*)  from  a  where  a1  in  (‘0’,’1’) ;
替代方案:
1)select  *  from  a  where  a1 = ‘0’  and ...
union
select  *  from  a  where  a1 = ‘1’  and ...
2) select  count(*)  from  a  where  a1 = ‘0’;
  select  count(*)  from  a  where a1 = ‘1’;
   然后做一次加法运算;或者直接用存储过程来实现;
小结:
对字段使用了 ‘in,or,like’ 做条件、对字段使用了不等号 ‘!=’,均会使索引失效;如果不产生大量重复值,可以考虑把子句拆开;拆开的子句中应该包含索引,或者使用union连结符代替。另一种方式是使用存储过程,它使SQL变得更加灵活和高效。
3、建立适当的索引
曾经接过开发的一个统计sql, select …  from  tablea  where  cola=…  and  …
运行效率非常慢,经查tablea数据量巨大,再查all_ind_columns,发现cola是tablea的一个复合索引中的一列,但不是前置列。象这种情况,就需要与开发商量,是否针对cola建一个索引。
4、like和substr
对于‘like’和‘substr’,其效率并没有多大分别。但是,当所搜索的值不存在时,使用‘like’的速度明显大于‘substr’。
所以:select  *  from  a  where  substr(a1,1,4) = '5378'  可以用like替代
select  *  from  a  where  a1  like  ‘5378%’;
5、写where条件时,有索引字段的判断在前,其它字段的判断在后;如果where条件中用到复合索引,按照索引列在复合索引中出现的顺序来依次写where条件;
6、使用多表连接时,在from子句中,将记录数少的表放在后面,可提高执行效率;
7、避免使用not in
not  in 是效率极低的写法,尽量使用minus或外连接加以替代
典型实例:
1) select col1 from tab1 where col1 not in (select col1 from tab2);
2) select sum(col2) from tab1 where col1 not in (select col1 from tab2);
替代方案
select col1 from tab1 minus  select col1 from tab2;
 select  sum(a.col2)  from  tab1 a, tab2  b
where a.col1=b.col2(+) and b.col1 is null;
8、表查询时,如果其中一个表的记录数量明显大于其他表,则可以先对此表进行查询后,再与其他小表进行表连接。
典型实例:
select  a.plan_code,  b.dno,  c,tno,  sum(a.tot_modal_prem),
from  prem_info a,  dept_ref b,  plan_type c
where  substr(a.deptno,1,7) = substr(b.deptno,1,7)
and a.plan_code = c.plan_code
group by b.dno,  c.tno,  a.plan_code;
替代方案:
select  b.dno,  c.tno,  a.plan_code,  a.tot_amount
from  (select  plan_code,  deptno,  sum(tot_modal_prem)  tot_amount
from  prem_info
group  by  deptno,  plan_code) a
dept_ref  b,
plan_type  c
  where  substr(a.deptno,1,7) = substr(b.deptno,1,7)
       and  a.plan_code = c.plan_code
group  by  b.dno,  c.tno,  a.plan_code;
小结:
由于prem_info表的记录数远远大于dept_ref表和plan_type表中的记录数,所以首先从prem_info表中查询需要的记录,此时记录数已经被大量缩小,然后再和其他两个表连接,速度会得到很大改善!
9、查询数量较大时,使用表连接代替IN,EXISTS,NOT IN,NOT EXISTS等。
典型实例:
a、使用IN:
select sum(col2) from tab1 where col1 in (select col1 from tab2);
使用EXISTS::
select sum(col2) from tab1 a
where exists ( select * from tab2 where col1=a.col1);
b、使用NOT IN:
select sum(col2) from tab1 where col1 not in (select col1 from tab2);
使用NOT EXISTS:
select sum(col2) from tab1 a
where not exists ( select * from tab2 where col1=a.col1);
          替代方案:
a、使用连接:
select sum(a.col2) from tab1 a,tab2 b where a.col1=b.col2;
b、使用外连接:
select sum(a.col2) from tab1 a,tab2 b
where a.col1=b.col2(+) and b.col1 is null;

补充:

UNION和UNION ALL的区别

UNION在进行表链接后会筛选掉重复的记录,所以在表链接后会对所产生的结果集进行排序运算,删除重复的记录再返回结果。实际大部分应用中是不会产生重复的记录;而UNION ALL只是简单的将两个结果合并后就返回。这样,如果返回的两个结果集中有重复的数据,那么返回的结果集就会包含重复的数据了。但是UNION ALL比UNION效率高,执行快。

分享到:
评论

相关推荐

    ### 【Linux系统管理】基于内核转储的故障排查与性能优化:系统稳定性保障机制详解Linux内核转

    内容概要:本文详细介绍了Linux内核转储的概念、原理、配置与使用方法及其应用场景。内核转储是系统在异常时将内存状态和关键信息保存到文件中的机制,有助于故障排查、性能分析和程序异常处理。文章阐述了内核转储的重要性,包括在系统崩溃时提供“真相还原”,在程序异常时帮助“症结查找”,以及在性能瓶颈分析中作为“有力助手”。文中还深入剖析了内核转储的实现方式,如Kexec和Kdump机制,并详细讲解了配置相关工具(如kexec-tools、kdump、crash)的方法和步骤。最后,通过一个实际案例展示了内核转储在故障排查中的应用,以及未来的发展方向和技术趋势。 适合人群:具备一定Linux基础知识,从事Linux系统开发、运维的技术人员。 使用场景及目标:①在系统崩溃时,通过内核转储文件还原崩溃前的状态,找到问题根源;②在程序异常时,通过转储文件分析程序执行流程,定位异常原因;③在性能瓶颈分析中,通过转储文件了解系统资源使用情况,优化系统性能。 阅读建议:本文内容详尽,涵盖理论与实践操作,建议读者结合实际工作场景,逐步理解和掌握内核转储的配置与使用方法,并通过实际案例加深理解。

    aws-java-sdk-s3-1.12.267.jar中文-英文对照文档.zip

    # 压缩文件中包含: 中文-英文对照文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文-英文对照文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;

    人工智能_多智能体系统_深度学习_计算机视觉_语音识别_语音合成_人脸识别_自然语言处理_基于Python的跨平台开发_Web界面设计_实时数据处理_分布式系统架构_面向人机交互的.zip

    人工智能_多智能体系统_深度学习_计算机视觉_语音识别_语音合成_人脸识别_自然语言处理_基于Python的跨平台开发_Web界面设计_实时数据处理_分布式系统架构_面向人机交互的

    基于储能电站服务的冷热电多微网系统:双层优化配置的MATLAB代码实现

    内容概要:本文详细介绍了如何使用MATLAB和CPLEX进行冷热电多微网系统的双层优化配置。上层优化关注储能电站的容量配置,采用混合整数规划方法,考虑初始投资和运营成本;下层优化则处理各微网的能量调度,确保冷热电负荷平衡,并通过需求响应机制提高灵活性。文中还探讨了冷热电耦合、储能充放电管理以及跨层数据传递等关键技术点。通过仿真验证,共享储能模式相比独立储能可以显著降低综合成本,提升资源利用效率。 适用人群:适用于从事能源系统优化、智能电网研究的专业人士,尤其是熟悉MATLAB和CPLEX工具的研究人员和技术人员。 使用场景及目标:①帮助研究人员理解和掌握冷热电多微网系统的双层优化配置方法;②提供具体的代码实现案例,便于实际项目中的应用;③探索储能站在多微网系统中的最佳配置策略,以达到节能减排的目的。 其他说明:文章不仅提供了详细的理论推导和公式解释,还包括了丰富的代码片段,有助于读者更好地理解和实践相关技术。同时,针对可能出现的问题如求解时间过长、数据尺度不一致等给出了实用的解决方案。

    汇川is620n、is620p、is620伺服驱动电机及高性能小功率交流伺服驱动器源码原理图

    内容概要:本文详细探讨了汇川IS620系列伺服驱动器的关键特性和源码原理,涵盖IS620N、IS620P等型号。文章介绍了多种通讯接口(RS-232、RS485、CAN)的应用实例,展示了刚性表设置、惯量识别及振动抑制等功能的具体实现方法。通过Python和C语言代码示例,解释了这些功能背后的复杂算法和控制逻辑,如惯量识别算法、振动抑制算法等。此外,还讨论了一些实用的调试技巧和注意事项,旨在帮助工程师更好地理解和应用这些高性能小功率交流伺服驱动器。 适合人群:从事自动化控制领域的工程师和技术人员,尤其是对伺服驱动器有兴趣的研究者。 使用场景及目标:适用于需要深入了解伺服驱动器内部工作机制的场合,如产品研发、系统集成、故障排查等。目标是提高工程师对IS620系列的理解,以便在其项目中充分利用这些驱动器的优势。 其他说明:文中提供了丰富的代码示例和实践经验分享,有助于读者快速掌握相关技术和解决实际问题。同时提醒读者注意一些潜在的技术陷阱,如通讯接口配置中的细节问题。

    chromedriver-win32-138.0.7153.0.zip

    chromedriver-win32-138.0.7153.0.zip

    helpcode_chat-room_12888_1745869959312.zip

    helpcode_chat-room_12888_1745869959312

    aws-java-sdk-s3-1.12.262.jar中文文档.zip

    # 压缩文件中包含: 中文文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;

    Matlab的PMSM直接转矩 文档及程序

    内容概要:本文深入探讨了在Matlab中实现永磁同步电机(PMSM)直接转矩控制(DTC)的方法和技术细节。首先介绍了PMSM的基本模型搭建,包括关键参数设置和状态空间方程的构建。接下来详细解析了DTC的核心原理及其具体实现步骤,如转矩和磁链的滞环控制机制、电压矢量的选择策略等。此外,文中还分享了许多实用的经验和技巧,例如如何调整滞环宽度、优化磁链观测器以及解决常见的仿真问题。同时强调了Matlab官方文档的重要性和持续跟进最新版本的价值。 适合人群:从事电机控制系统研究与开发的技术人员,尤其是有一定Matlab基础并希望深入了解PMSM DTC实现的人群。 使用场景及目标:适用于需要快速响应、高精度控制的场合,如工业自动化设备、电动汽车等领域。通过掌握本文提供的技术和方法,能够提高系统的稳定性和效率,降低开发难度。 其他说明:文中提供了大量详细的代码片段和参数配置建议,有助于读者更好地理解和应用所介绍的内容。同时也提醒读者注意实际操作过程中可能出现的问题及解决方案。

    thymeleaf-1.0.0-beta2.jar中文文档.zip

    # 压缩文件中包含: 中文文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;

    MATLAB环境下能源集线器参与电热综合能源市场双层优化模型:解析双层模型构建及市场出清策略

    内容概要:本文详细介绍了基于MATLAB实现的电热综合能源市场双层出清模型,重点探讨了能源集线器在电热市场中的角色及其优化策略。模型分为上下两层,上层旨在最大化能源集线器的收益,涉及电价和热价的决策变量;下层则分别构建了电力市场最小发电成本模型和热力市场最小出力模型,确保市场出清。文中不仅展示了具体的MATLAB代码实现,还讨论了模型的创新点和技术细节,如MPEC方法的应用、CPLEX求解器的使用以及KKT条件的转化。此外,文章还提供了详细的调试经验和优化技巧,帮助读者更好地理解和应用该模型。 适合人群:从事综合能源系统研究的技术人员、研究生及以上学历的研究者。 使用场景及目标:适用于需要深入了解电热综合能源市场运作机制的研究人员,尤其是关注能源集线器在市场中的优化策略和市场均衡的人群。目标是通过该模型的学习,掌握双层优化模型的构建方法及其在实际能源市场中的应用。 其他说明:文章提供了丰富的代码片段和调试建议,有助于读者在实践中逐步掌握模型的构建和优化过程。同时,文章还指出了未来可能的改进方向,如引入更多能源种类和考虑网络阻塞等问题。

    MATLAB微电网调度优化:机组组合与运行案例学习,利用cplex求解实现成本最优化

    内容概要:本文介绍了如何使用MATLAB结合CPLEX求解器进行微电网调度优化的两个经典案例。案例一关注于常规发电机组的启停和出力优化,旨在满足系统负荷需求的同时实现成本最优。案例二则涉及燃气轮机、风力发电、光伏发电以及蓄电池等多种设备的协同优化,目标是最小化总费用。文中提供了详细的代码实现步骤,包括参数定义、模型初始化、决策变量定义、目标函数设定、约束条件构建以及最终的求解与结果输出。此外,还分享了一些实用技巧和避坑指南。 适合人群:对微电网调度优化感兴趣的科研人员、工程师和技术爱好者,尤其是有一定MATLAB基础的新手。 使用场景及目标:适用于希望深入了解微电网调度优化原理及其实际应用的人群。通过学习这两个案例,读者可以掌握如何利用MATLAB和CPLEX快速搭建优化模型,并应用于实际工程项目中,提高能源利用效率,降低运营成本。 其他说明:文中提供的代码均为简化版本,便于理解和修改。实际应用时可根据具体情况调整参数和增加更多复杂的约束条件。

    MATLAB代码:增强型鲸鱼优化算法的改进与应用

    内容概要:本文详细介绍了基于MATLAB实现的增强型鲸鱼优化算法(EWOA),主要改进之处在于引入了非线性时变自适应权重、差分变异微扰因子以及改进的对数螺旋搜索方式。这些改进显著提高了算法在全球探索和局部寻优方面的性能。文章不仅解释了每个改进部分的工作原理,还提供了相应的MATLAB代码示例,帮助读者理解和应用这些创新点。具体来说,非线性时变自适应权重使得算法能够在不同的搜索阶段灵活调整搜索策略;差分变异微扰因子避免了算法过早收敛到局部最优解;改进的对数螺旋搜索方式增强了算法的遍历能力。 适合人群:对优化算法感兴趣的科研人员、研究生以及从事相关领域的工程师。 使用场景及目标:适用于解决复杂的多维优化问题,如电力系统调度、无人机路径规划等。目标是提高优化算法的效率和准确性,特别是在高维复杂问题中寻找全局最优解。 其他说明:文中提供的MATLAB代码可以直接运行,并且可以根据具体应用场景调整参数。需要注意的是,种群规模不宜过大,以免增加计算负担。此外,文中提到的一些改进措施,如拉丁超立方采样初始化、变异因子的自适应调整等,对于提高算法性能至关重要。

    算法竞赛基于宽度优先搜索BFS的数字交换游戏实现:寻找K次交换后的最大整数

    内容概要:本文介绍了使用宽度优先搜索(BFS)解决一个名为“数字交换游戏”的编程问题。游戏规则为:给定一个M位的整数,通过最多K次任意两位数字的交换,在不产生前导零的情况下,求出能获得的最大整数。文中提供了具体的算法实现,包括输入输出示例以及对特殊情况的处理,如无法通过交换获得更大数值时输出-1。此外,还展示了部分代码片段,用于演示如何利用字符串操作实现数字字符之间的比较与交换,从而完成整个搜索过程。; 适合人群:对算法设计有兴趣的初学者,特别是正在学习或复习BFS算法及其应用的学生或程序员。; 使用场景及目标:①理解宽度优先搜索算法的应用场景和实现方式;②掌握基于字符串处理的数字交换逻辑;③学会处理边界条件,如避免产生前导零等特殊情况。; 阅读建议:读者可以先尝试自己解决这个问题,再对照文中的代码和思路进行对比学习,注意关注代码中对于边界情况的处理方法,这对于提高编程能力非常有帮助。同时,也可以将此题作为练习BFS算法的一个实例,深入理解其工作原理。

    scratch少儿编程逻辑思维游戏源码-还未开发完的游戏.zip

    scratch少儿编程逻辑思维游戏源码-还未开发完的游戏.zip

    【网络安全领域】Linux ALG网关的应用层协议解析与网络安全防护:解决多通道协议传输难题及提升网络兼容性

    内容概要:本文详细介绍了Linux ALG网关的功能及其在网络中的重要性。文章首先描述了网络不给力的常见场景,如视频卡顿、文件传输失败等,引出了NAT和防火墙对多通道协议的限制问题。接着,文章重点阐述了Linux ALG网关作为应用层网关,如何通过解析和处理应用层协议(如FTP、SIP等)中的地址和端口信息,动态创建“pinhole”来解决这些问题,确保数据传输顺畅。Linux ALG网关不仅能增强网络安全性,防范SQL注入、XSS攻击等,还能提升网络兼容性,支持多通道协议的正常通信。最后,文章探讨了ALG网关在企业网络、数据中心和家庭网络中的应用场景,并展望了其在物联网、5G网络和人工智能领域的未来发展潜力。 适合人群:对网络安全有一定了解,希望深入了解Linux ALG网关工作原理及应用场景的IT从业人员和技术爱好者。 使用场景及目标:①了解Linux ALG网关如何解决多通道协议在网络传输中的问题;②掌握ALG网关在企业网络边界防护、数据中心安全保障和家庭网络安全守护中的具体应用;③探索ALG网关在物联网、5G网络和人工智能等新兴技术领域的发展前景。 其他说明:配置Linux ALG网关需要一定的Linux系统操作基础,建议读者在实践中逐步熟悉iptables或firewalld等工具的使用,并注意规则顺序、性能优化和安全策略的制定,以确保网络的高效、安全运行。

    机器人感知与导航_ROS点云数据处理_Livox雷达CustomMsg转PointCloud2格式转换工具_用于将大疆览沃Livox雷达驱动程序发布的CustomMsg格式点云数据.zip

    机器人感知与导航_ROS点云数据处理_Livox雷达CustomMsg转PointCloud2格式转换工具_用于将大疆览沃Livox雷达驱动程序发布的CustomMsg格式点云数据

    thymeleaf-2.0.16.jar中文-英文对照文档.zip

    # 压缩文件中包含: 中文-英文对照文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文-英文对照文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;

    aws-java-sdk-s3-1.12.252.jar中文-英文对照文档.zip

    # 压缩文件中包含: 中文-英文对照文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文-英文对照文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;

    javassist-3.28.0-GA.jar中文文档.zip

    # 压缩文件中包含: 中文文档 jar包下载地址 Maven依赖 Gradle依赖 源代码下载地址 # 本文件关键字: jar中文文档.zip,java,jar包,Maven,第三方jar包,组件,开源组件,第三方组件,Gradle,中文API文档,手册,开发手册,使用手册,参考手册 # 使用方法: 解压最外层zip,再解压其中的zip包,双击 【index.html】 文件,即可用浏览器打开、进行查看。 # 特殊说明: ·本文档为人性化翻译,精心制作,请放心使用。 ·只翻译了该翻译的内容,如:注释、说明、描述、用法讲解 等; ·不该翻译的内容保持原样,如:类名、方法名、包名、类型、关键字、代码 等。 # 温馨提示: (1)为了防止解压后路径太长导致浏览器无法打开,推荐在解压时选择“解压到当前文件夹”(放心,自带文件夹,文件不会散落一地); (2)有时,一套Java组件会有多个jar,所以在下载前,请仔细阅读本篇描述,以确保这就是你需要的文件;

Global site tag (gtag.js) - Google Analytics