本人于3年前写的博文,如何在面试中介绍自己的项目经验,经过大家的捧场,陆续得到了将近7万个点击量,也得到了众多网站公众号的转载,不过自己感觉,这篇文章更多的是偏重于方法,没有具体给到Java方面相关的说辞。

三年过去了,随着本人面试官经验的积累,也随着技术的进步,本人就用适合当下2021年Java初级开发的面试场景,改写本文。请注意,这篇文章并不是简单的技术升级,也没有机械地教大家在介绍项目经验时背诵若干说辞,而是教大家如何结合项目经验更好地展示自己的技术亮点,这样就能最大程度地提升面试通过的可能性。

1  用简历争取到更多的面试机会

本不想写这段,但最近我在帮一些同学准备简历时,发现他们虽然在当前公司里能胜任Java开发的工作,但凭简历恐怕无法得到面试机会,或者无法得到和自己相匹配的工资。而且准备简历的过程,也是准备项目说辞的过程,所以这里就一并把写简历的注意要点写上。

    注意点1:阅读职位介绍上的技能要求年限,在简历上的醒目位置标明你有足量的相关技术项目经验。

比如某职位需要有Spring boot 3年经验,又如某职位需要有2年大数据开发经验,而你恰好有了,就在简历第一页个人信息介绍下直接写明。

万一假设你缺乏一些,比如要求是有2年大数据,而你就只有一年,你就回想下,你在读书阶段,有没有在外面做过兼职,有没有帮老师一起做过项目,有的话别客气,把这部分的技术年限也加上。

   注意点2:再仔细阅读职位介绍上要求的技术,也列在第一页的醒目位置。

比如某职位需要有jave核心开发,多线程开发经验,分布式组件开发经验。其实对做开发的人来说,这些技术多少在项目里也用过,但如果你不写上,甚至你的简历没法过筛选,甚至你没有面试机会。

   注意点3:再多少写些你的亮点,怎么写看下面的范例。

也就是说,在简历第一页,你写好姓名性别年龄和手机邮箱等基本信息后,一般可以用如下概要的形式,向面试官展示你和职位的匹配度,如下是范例。

1 具有3年Java开发经验,2年Spring Boot开发经验,2年数据库开发经验。(这里的年限需要大于等于职位介绍上的要求,如果达不到,很多公司就不给面试机会)

如下再根据职位介绍上要求的技术,总纲性列出你掌握的技术,以此证明你很匹配

2 有Oracle,MySQL等数据库开发经验。

3 有多线程,集合等方面的开发经验

4 有大数据方面的xx技术和xx技术的开发经验。

这里你可以尽可能多地列出你掌握的JD上的技能,然后,你可以照着如下的范例列些你的亮点。

5 具有用索引,执行计划进行数据库调优的经验。(当前不会就自己查,这块资料太多)

6 熟悉Java JVM虚拟机结构,熟悉垃圾回收流程,有JVM性能调优的经验。(当前不会也自己查)

7 有在linux分析日志和排查问题的经验。(如果不会就去看些linux文件打开和搜索的相关命令)

8 熟悉面向对象思想,在项目里用过设计模式。(自己去看个单例或工厂模式,然后套到项目需求里)

9 有分布式组件的开发经验。(如果没有就别写,但对初级开发来说,这绝对是加分项)

10 熟悉Java集合等方面的底层代码。(自己去看HashMap,ConcurrrentHashMap,快速失效,ArrayList增删改查的底层代码,不难)

11 工作责任心强,具有一定的承压能力,肯加班。(写上去总不会错)

其实对大多数初级开发而言,应该都具备上述技能,哪怕当下不具备,用个把月绝对也能学会,所以大家完全可以写在简历上。

但我收到的很多Java开发的简历,只是简单地列出会的技术,没有任何润色性的文字,这样的简历或许就无法完全地展示候选人的能力,对应地,得到的面试机会可能就大大降低了。

相反,姑且先不论候选人是培训班出身还是科班出身,但就凭在简历第一页醒目地展示和该职位的匹配度,至少面试官就肯继续往下看项目经验了,这样得到面试的机会,乃至通过面试的机会,就大大增加了。

2  自我介绍时,立即全面抛出技术栈和亮点

在面试的开始阶段,面试官大概率会让候选人自我介绍,这部分别的不用说,就直接根据上文给出的简历上列出的总纲性要点介绍自己,如下给出范例说辞。

    先说技能和jd的匹配度。

我叫张三,今年25岁,18年从交大大学毕业,计算机系,目前有3年Java开发经验(这个是jd上的要求),有Oracle,MySQL的开发经验,有xx等技术经验(这些经验也是jd上的要求)

再说自己的亮点。

在项目里,我用过用索引和执行计划等进行数据库调优经验,有JVM方面排查OOM的经验,大数据方面,用过Spark等框架,分布式组件方面,用过Redis和Dubbo等,有在linux上看日志然后排查线上问题的经验。

其实天地良心,上述提到的亮点,除了大数据spark以外,其它技能亮点初级开发应该都会,哪怕不会也能轻易学会。但就这样,很多候选人不会说,不过反过来,你说了就比别人强。然后立即引申出最近的项目,因为大多数公司会衡量jd技术是否在最近项目里用过。

在最近的项目里,我用到了Spring Boot框架,具体用到了JPA组件,数据库用Oracle,最近的项目是xx系统,用到了敏捷开发模式,在这个项目里,我除了做coding外,还做过单元测试,讨论需求和详细设计等工作,并且最近的项目进度比较紧,我自己感觉还能主动加班,一起和同事们保质保量地完成项目。

在自我介绍阶段甚至也不必展开项目,因为后面你有机会详细说明,但你第一要以此进一步突出你最近的技能经验和职位介绍很匹配,第二还要以此说明你肯加班等特性(毕竟通过项目举例说明自己肯加班,比单纯说肯加班要可信得多)。

再强调下,在自我介绍阶段,只需要说明自己能胜任当前工作的要点,这些要点不需要展开,比如不必展开说明自己如何排查OOM异常的。而其它没和找工作没关系的,比如兴趣爱好,家庭成员,个人性格等一概不需要说。

大家在面试前,可以根据上述范例练习下说辞,不紧不慢地说这些话,估计也就需要2分钟,哪怕再腼腆再内向口才再不好的人,多练几遍也能说好,但如果因为没说好被面试官认为沟通能力差,就太冤枉了。

3  先介绍项目背景,打消面试官疑问

由于你在自我介绍阶段已经涉及到最近项目了,所以面试官一定就会再问下去。不过不管怎么样,面试官总会问及你最近的项目,所以你总是有机会通过介绍项目经验来验证自己能胜任这份工作。

当面试官让你介绍下最近的项目时,你可以先大致先说下项目背景。因为有些候选人在简历上的项目经验看上去就像学习项目(其实我知道不少项目经验还真是),但你可以通过如下的说辞,证明这个项目是商业项目经验。

我最近是在xx公司(以此突出商业项目)里做了xx项目,这个项目的客户方是xx,已经上线(但如果是web项目面试官大概率会去核对)。这个项目用到了敏捷开发模式(提一下别展开,算抛出个提问点), 这个项目组人员是xx人,做了n个月,我在里面做了xx和xx模块。

    你这样一说,能通过项目所在公司和客户方等要素,说明这个项目不是你编的。有人会问了,如果项目真的是编的,该怎么说?这块我不管,你自己想办法说。

但你这样说之前,事先需要做好如下的功课。

1 了解敏捷开发模式,比如站会每个人该说什么,用jira管理进度,一年定好若干个发布日期,一个月发布一次等,因为你提到了,面试官大概率后继会问到。

2 如果你说的是xx财务系统xx图书馆系统等,一些资深的面试官可能会问,这块有现成的项目,为什么你们公司还要自己开发?所以说你在准备项目描述时,不能夸张,比如把一个数据收集模块的维护项目夸张成xx财务系统。不过我也遇到过一些候选人,他们就说这是公司接的项目,为什么人家还要下订单做此项目他们管不着。

3 你一旦说了这个项目,那么面试官就会认为你真实做过,所以其中每个业务需求,比如数据从哪里收集,客户从哪个前端发请求,客户请求处理的流程,以及数据表的规模等信息,你得知道并且事先准备好回答预案,我就经常用此来确认候选人的项目是真实项目还是编的项目。

4 通过说项目管理工具,说明你不仅会写代码

在介绍项目背景之后,你更可以说些项目管理的工具,以此证明你在项目里还做过其它事情,不仅是仅会写代码,具体的说辞范例如下。

在这个项目里,我们用到了maven,用git来管理代码,用jira来管理任务和bug,用jenkins工具来发布。我还用过junit编写过单元测试,我们还用sonar来统计代码的测试覆盖度,我们项目经理要求,只有当“行覆盖率高于80%”,代码才能提交。

上文提到maven,Git和junit这块不难,jira管理bug和task这个也没什么可问,但你要事先了解下sonar管理代码质量的基础知识以及行覆盖率等要点,至于jenkins发布脚本,这个无需一般开发操心,你说下就行了。在上文里你仅仅提到的是工具,但你更要通过这些工具,来进行自我表扬。

我在使用junit时,不会敷衍地编写案例,而会根据真实的业务数据来编写案例,并且我还会着重考虑各种边界情况(这些哪怕初级开发也有本事做到),而且在编写代码时,我会非常注意编码规范,比如定义变量时会让人一看就理解 ,在关键代码地方多写注释,在if等条件里不会写太复杂,一个方法不会写太长,或者你可以再说些其它好的编码规范。而且,一旦遇到我的bug,我会第一时间跟进,并会和相关对应的人一起解决掉。

上述文字,虽然说是自卖自夸,但由于你结合到了项目,所以面试官不会有违和感。而且你这样一说,面试官就会认为你除了写代码外,其它开发项目的综合能力也很强。

不过千万注意,介绍项目经验的目的主要是证明技能的匹配度,所以上文提到的“介绍项目背景”和“说明项目用到的工具”以及“自卖自夸”的说辞,你别说太多,可以通过练习把它们控制在1分钟以内。

5  用Spring Boot项目举例,说明你的技术基本面

然后就需要介绍项目里用到的技术,哪怕你的亮点说辞再说,你也得保证技术的基本面说辞,这里就用当前Java项目的主流框架Spring Boot为例,告诉大家如何以此展示Java开发的基本功。

我们这个项目用到了Spring Boot框架,其中用JPA连接Oracle(或MySQL等)数据库,在控制层里用到了@RequestMapping注解来编写业务处理方法。在业务代码里,是用@Autowired注解来以IOC的方式引入类,还用到了@Service和@Component注解。当我们从数据库里拿到数据后,会用包含@Entity和@Table注解的模型类来映射数据。在这个项目里,我们还用到了@Transactional注解来定义事务,这个注解是作用在Service层上的,在这个项目里,我们还用到多个Java集合类和异常处理类。

通过上文的范例,大家应该可以很好地展示Spring Boot的基本技术面,其实对大多数Java初级开发而言,日常工作也就是用Spring Boot写一些增删改查的工作,所谓根据现有的业务再编写新的业务,所以上述说辞足够了。但是由于你提到了Spring Boot,所以在提问阶段,面试官大概率会问及如下的问题。

1 @Service和@Component注解的差别?

2 各种Restful请求格式以及各种http请求返回码。

3 @Transactional事务里的事务隔离级别和事务传播机制概念。

4 Spring依赖注入概念和@Autowired的用法。

5  Spring Bean的生命周期。

6  甚至可能还会问Spring Boot启动流程以及底层源码。

对Java 0到3年的初级开发而言,其实能按本范例给出的说辞,并结合网上题目说好前4个问题,应该就足以应对大多数的面试了。

6  用实例说明你在内存调优方面的经验

当你介绍好基于Spring Boot的技术基本面以后,你还可以进一步说明诸多亮点,这里就先给出结合项目展示内存调优方面说辞的范例。

(之前是介绍项目技术基本面,比如Spring Boot)在本项目里,我会非常注意内存的使用性能,并在项目里有过排查分析OOM的项目经验,我在编码的时候,也会非常注意内存性能,同时我也了解过JVM内存结构以及GC算法。

不管怎么组织语言,这方面你需要突出四点:第一强调你有内存调优意识,第二说明你有排查OOM的经验,第三说明你写代码的时候也会注意内存性能,第四说明你还了解JVM结构和GC流程的知识。但这里依然要强调,你尚在项目介绍阶段,你说明要点即可,别展开,如果这里你展开说明内存调优的做法,面试官会认为你思路不清晰,不过既然你提到了,面试官可能立即就打断你介绍让你详细说明,或者你介绍完项目后会继续问,总之你是有机会详细展示内存调优亮点技能了。

这里不仅给出项目介绍阶段怎么说,还会给出你后继如何详细回答。

如果面试官事后详细问你排查OOM经验细节时,你可以这样回答。

在测试环境,我们经常会收到内存使用率高于70%的告警,(至于怎么告警的相关设置,你可以看下new relic,如果你是初级开发,甚至不需要掌握相关经验),收到告警后,我第一通过dump命令观察当前内存镜像(你得熟悉下dump命令以及dump文件的打开方式和dump文件的内容),第二通过日志观察是哪个方法抛出的,最后发现是因为在订单模块(或其它模块)一个JDBC连接对象没关闭(或一个大的Hashmap对象用好没clear),所以导致了内存无法回收,发现问题后对应回收掉即可。

这里你结合的业务(比如订单模块)来说明,然后面试官再问dump细节时,你再说下dump文件的结构,这就行了。

    如果面试官再问你如何在代码里注意内存性能,你可以这样说:

在写代码时,我会非常注意,在try...catch...finally从句里关闭或释放Connection和大的集合,一些大的对象用好以后,我会及时把它们设置成null,以此提升它们的回收时间,在for等循环里,我不会频繁地操作String对象,因为会产生大量内存碎片。同时,我会非常谨慎地使用finalize方法(事先看下),因为这可能会导致对象无法回收。

其实说上这四点就够了, 如果你自己感觉有本事,可以在了解强引用、弱引用和软引用的前提下在说如下的点,这很值钱。

    在数据同步的业务场景里,我用到了弱引用(或软引用),以此提升数据对象的回收时间。

如果面试官问你JVM内存结构及GC(垃圾回收)流程,这其实是理论问题,网上资料太多,靠背就行了,所以这里就不再详细说了。但话说回来,GC流程以及JVM体系结构这方面的理论知识,这属于面试常用考点,你准备下不吃亏。

7  展示你在数据库调优方面的经验

很多候选人其实不会在面试中展示内存调优方面的经验,而你如果按照上述说辞,一方面在介绍项目经验时引出要点,另一方面在后继交流中很好地说明细节,那么可以这样说,你就超越了很多竞争者,甚至说句不该说的话,一些初级开发甚至还能以此充实自己的项目经验。

在介绍项目经验时,如果单纯展示内存调优方面的经验,可能说服力不强,这里再给出用实际说明数据库调优技能的范例。首先你可以在介绍项目时,适当地通过如下的说辞来引入要点。

在本项目里,我参与过数据表设计,所以会考虑用反范式来避免因大表关联而导致的性能损耗,同时我们会合理地设置索引以提升数据库的访问性能,并且我还有过用执行计划优化语句的经验,同时在使用事务的时候,我会非常注意配置事务隔离级别和事务传播机制,以免造成锁表。

同样,在项目介绍阶段,数据库调优方面的说辞不需要展开,给出点即可,由于你提到了,所以面试官在后面大概率会问到。

不过你在面试前,需要准备如下的技能(其实这些技能属于数据库基本点,你不准备反而会有问题)。

1 你去看下索引的数据结构(比如B+树),建索引的语句,索引的种类,尤其是复合索引以及对应的回表和最左匹配原则。

2 事先看下索引的正确用法,以及哪些情况下用不到索引,比如where a != 'xx'可能就用不到。
    3 索引的代价(会占硬盘,以及大批量读写时会重建索引,所以性能慢),以及在小表里,无需建索引。

4执行计划的概念,以及通过执行计划排查慢sql时该注意的点(避免全表扫描,设置合理的关联表方式等)。

5 三范式和反范式相关概念,因为你提到了。

6 事务隔离级别里的脏读等概念,以及事务传播机制,尤其地,你要具体说出你项目里用的是哪个。

其实上述点属于面试常考点,但根据我面试下来的结果,一些有3年java开发经验的候选人也未必能说好,不过再一次天地良心,这些技能点不难学,大多靠背就行,所以哪怕你刚毕业,或者只具备少量的开发经验,只要靠用功背下这些要点,一方面在介绍项目时就能很好地亮出要点,另一方面还能很好地应付后继的数据库问题,这样你的表现就足以超出大多数你的竞争者。

8 总结前文说辞

这里根据上文给出的要点,整理下介绍项目经验的说辞。

(介绍项目背景)我最近的项目是在xx公司做的xx社区爱心超市项目(项目别说太大),客户方是xx公司,项目组里是6个人,开发了八个月,最近还在开发,在其中我做了删除和更新订单模块的业务 (如果是在校阶段做的项目需要再加上如下的话),这个项目是我从大三开始,外面找xx公司做的兼职项目,做项目的时候我每月还能拿到钱。

(介绍项目技术,JD上列的尽量说全)这个项目用到了Spring Boot框架,数据库是Oracle,用JPA连接Oracle(或MySQL等)数据库,在控制层里用到了@RequestMapping注解来编写业务处理方法。在业务代码里,是用@Autowired注解来以IOC的方式引入类,还用到了@Service和@Component注解。当我们从数据库里拿到数据后,会用包含@Entity和@Table注解的模型类来映射数据。在这个项目里,我们还用到了@Transactional注解来定义事务,这个注解是作用在Service层上的,在这个项目里,我们还用到多个Java集合类和异常处理类。

(介绍项目管理工具)这个项目用到了敏捷开发模式,用Maven框架,用sonar管理质量,用git管理项目版本,用jenkins发布,用logback打日志, 我在这个项目里,除了写代码外,还有用Junit进行单元测试的经验。我们还用sonar来统计代码的测试覆盖度,我们项目经理要求,只有当“行覆盖率高于80%”,代码才能提交。

(最后抛出亮点)在这个项目里,我用到了单例和工厂设计模式,在这个项目里,我做过JVM调优和数据库调优的的事情,在做项目时为了加深理解,我还看了ArrayList快速失效的底层代码,也看过HashMap关于HashCode以及put和get部分的底层源码。这个项目后期进度比较紧,我也能通过加班等手段保证项目能正常上线,而且一旦遇到线上问题,我也会尽量参与并解决。

大家在面试前,可以根据上述范例合理地准备说辞,次序和内容上可以做调整,但包含的几个要素尽量都说全。如果可以,事先要多练习几遍,确保能足量地抛出你的相关技能和亮点。

不过千万注意,在介绍项目时,对具体的点,比如内存调优,你点到为止,别展开,否则的话,面试官一定会认为里思路不清晰。总之在介绍项目时,需要遵循的要点是:第一要尽可能全面地说明你用过JD上的技能,第二要抛出亮点话题,等待面试官提问。

9 准备项目说辞时,更可以准备后继面试官的问题

其实大多数面试官在面试前,有可能还在调试代码,或者还在开会,也就是他们事先是不会准备面试问题的。所以当你在自我介绍和介绍项目经验时抛出亮点后,他们往往会随口接着这个话题问下去,也就是说,只要实现准备好,你是知道面试官会问什么的。

根据上文给出的项目介绍说辞,你提到了敏捷开发,Spring Boot框架,数据库调优,内存调优,设计模式,junit以及项目管理软件,java集合以及底层源码等话题,在前文里也给出了一些面试官可能问到的问题以及对应的准备要点,除此之外,大家还可以做如下的准备。

1 理解单例模式,尤其是双重检查的单例模式,要会写代码,并给出一个项目使用场景,比如某工具类需要用单例的方式创建。同样地,对于工厂模式也准备一个使用场景,这更好办,比如xml解析器类,是用Factory模式创建的。

2 在理解的基础上,背诵并会默写ArrayList快速失效的底层代码,面试时,当面试官顺着你给出的言辞继续提问时,你可以边写边说,同时也可以准备HashMap以及Hashcode的底层源码。

3 去看下JVM内存调优和垃圾回收相关理论,最好再看下强引用,弱引用和软引用理论。

这里请注意,你在自我介绍和项目介绍时,可以通过抛出亮点来引导面试官提问,但同时,你更需要准备其它常见问题,因为有些面试官依然会问其它问题。对此大家可以在Spring Boot框架,数据库和Java核心开发这三个方面多刷些面试题,甚至可以多准备些笔试题。那么这样一说,你抛出亮点有什么好处呢?

第一,真有些面试官在顺着你言辞提问后,发现你回答很好(因为你事先准备过,想不好回答都难),然后他们就不再提问了。

第二,面试官多少会问及些你提到的亮点,这样你就能最大程度避免面试官问及你不熟悉的点。

第三,其实大多数初级开发在项目中只是做增删改查,但一方面你根据上文描述准备了若干常稳点,另一方面你能很好证明你熟悉设计模式,有JVM和数据库调优经验,那么你就有可能在面试中表现比其它人强。

总之,你在准备项目经验的前提下准备些基础和亮点技术点,准不会吃亏。

10 总结:本文所含的说辞和方法足以应对初级面试官

本人最近在帮上海一家知名培训学校的学员做面试辅导,在教他们用上述方法和说辞准备简历和准备项目介绍说辞后,他们均成功地找到工作。而且有好几位同学,有2到3年开发经验,本来期望工资是11到13k一个月(毕竟是培训班出身不敢要高)。我全程辅导让他们通过技术面试后,在谈薪资时,我好说歹说让他们至少要15k, 当他们硬着头皮咬着牙说出口后,均成功拿到这个价,而且一位胆子比较大的同学,还要到了16.5k。现在他们已经开始担心入职后怎么过试用期了,不过这是后话,如果我有时间还会写文章介绍此类经验。

这才是我敢在这篇博文里介绍相关方法和说辞的底气。除此之外,我敢写这篇博文的底气还在于我的多年技术面试官经验,以及我还出的两本面试书。对培训班毕业生尚且如此,如果大家最近还在软件公司里真刀真枪地干项目,那么我敢说这篇文章对大家的帮助更大。

也就是说,通过本文给出的技巧,大家足以能应对一些面试经验不足2年的初级面试官,当然,如果要去支应一些资深面试官(比如我),光凭此应该还不够,更需要在面试中展示多线程、分布式组件,微服务框架以及高并发等方面的技能,对此本人将在后继的文章里继续给出相关的技巧。

请大家关注我的公众号:一起进步,一起挣钱,在本公众号里,会有更多精彩文章。

如何在面试中介绍自己的项目经验(面向java改进版)的更多相关文章

  1. 从面试官甄别项目经验的角度,说说如何在简历中写项目经验(java后端方向)

    在大多的JD(职位介绍)里,会写明该职位需要xx时间的相关经验,换句话说就是需要在简历中看到一定年限的相关商业项目经验,否则估计连面试的机会都没. 在本文里,不讨论这种门槛是否合理,而会以Java相关 ...

  2. 面试中常用的六种排序算法及其Java实现

    常见排序算法的时间复杂度以及稳定性: 1 public class Sort { public static void main(String[] args){ int[] nums=new int[ ...

  3. 项目经验分享——Java常用工具类集合 转

    http://blog.csdn.net/xyw591238/article/details/51678525 写在前面     本文涉及的工具类部分是自己编写,另一部分是在项目里收集的.工具类涉及数 ...

  4. Android面试优雅地介绍自己的项目

    本文转载:m.blog.csdn.net/iamsamzhang/article/details/51916584 先说句题外话,很多公司16年秋招的内推已经开始啦,我目前知道的在北京有网易.百度和微 ...

  5. OSG项目经验2<在场景中添加文字面版>

    添加文字版需要用到osg的三个名字空间:                         osgText::Text,这个类用来添加文字和设置文字的一些属性:                     ...

  6. 面试中AOP这样说,面试官只有一个字:服!

  7. 【java面试宝典】一年工作经验者适用

    时光转瞬即逝,一年时间已经过去,自己准备跳槽了,请了几天假,面试了几家公司之后,拿到了一份offer,有了一点儿小小的心得,记录下来分享给搞Java的朋友,面试主要是几个部分内容. 很多公司会要求笔试 ...

  8. 利刃 MVVMLight 1:MVVMLight介绍以及在项目中的使用

    一.MVVM 和 MVVMLight介绍 MVVM是Model-View-ViewModel的简写.类似于目前比较流行的MVC.MVP设计模式,主要目的是为了分离视图(View)和模型(Model)的 ...

  9. MVVMLight 1:MVVMLight介绍以及在项目中的使用

    一.MVVM 和 MVVMLight介绍 MVVM是Model-View-ViewModel的简写.类似于目前比较流行的MVC.MVP设计模式,主要目的是为了分离视图(View)和模型(Model)的 ...

随机推荐

  1. PHP代码审计分段讲解(13)

    代码审计分段讲解之29题,代码如下: <?php require("config.php"); $table = $_GET['table']?$_GET['table']: ...

  2. 在Centos7下docker配置自动化环境镜像(python3.7+selenium 3.11+firefox 62+geckodriver 0.21)

    最近在学习Docker,准备做自动化测试代码集成的功能.如下文章的前提是已经安装好linux系统,且成功安装好Docker. 接下来我会按步骤一步一步的对自动化需要的一些环境进行安装,如果没有特别说明 ...

  3. Win10激活失败并提示错误代码0xC004C003的解决方法

    亲测,可用. 步骤如下: 进入cmd,管理员权限登录 slmgr.vbs /upk slmgr /ipk W269N-WFGWX-YVC9B-4J6C9-T83GX slmgr /skms zh.us ...

  4. 写了一个类似与豆瓣的电影的flask小demo

    先展示页面 基本的功能是都已经实现了,更多那个地方是可以点的.只不过视频上面还用的宏,哎呀,感觉麻烦.有多麻烦呢,需要先定义一个宏,然后进行引用.我们才能是用,以我的观点,还不如直接是一个循环完事.. ...

  5. 用python讲解数据结构之树的遍历

    树的结构 树(tree)是一种抽象数据类型或是实现这种抽象数据类型的数据结构,用来模拟具有树状结构性质的数据集合 它具有以下的特点: ①每个节点有零个或多个子节点: ②没有父节点的节点称为根节点: ③ ...

  6. Java安全之Unsafe类

    Java安全之Unsafe类 0x00 前言 前面使用到的一些JNI编程和Javaagent等技术,其实在安全里面的运用非常的有趣和微妙,这个已经说过很多次.后面还会发现一些比较有意思的技术,比如AS ...

  7. 对网页接口的追踪探索(以b站通过bv号查询av号为例

    对网页接口的追踪探索(以b站通过bv号查询av号为例 序言 本文只提供一种探索网页加载时后端访问接口情况的思路,所举例子没有太大实际用处. 一 自2020年3月23日起,AV号将全面升级到BV号.但是 ...

  8. 【题解】P3631 [APIO2011]方格染色

    很有意思的一道题,所以单独拿出来了. 完整分享看 这里 题目链接 luogu 题意 有一个包含 \(n \times m\) 个方格的表格.要将其中的每个方格都染成红色或蓝色.表格中每个 \(2 \t ...

  9. IO 的五种模型是什么

    目录 前言 用户空间和内核空间 IO 五种模型 阻塞型 IO 非阻塞 IO IO 多路复用 信号驱动 IO 异步 IO 总结 阻塞和非阻塞 同步与异步 前言 我们经常看到阻塞/非阻塞,同步/异步这两组 ...

  10. Springboot 使用logback直接将日志写入Elasticsearch

    正常情况下,一般组合为elk 即日志会通过logstash写入es,但本文主要为轻量级项目直接利用appender写入es 首先需要引入包 <dependency> <groupId ...