Otu esi akwụsị ime otu ihe ahụ

Ọ na-amasị gị ịmegharị ọrụ oge niile ugboro ugboro? Ya mere, anaghị m. Mana oge ọ bụla na onye ahịa SQL mgbe ị na-arụ ọrụ na nchekwa Rostelecom, aghaghị m iji aka debanye aha njikọ niile n'etiti tebụl. Na nke a n'agbanyeghị na na 90% nke ikpe ubi na ọnọdụ maka ịbanye na tebụl kwekọrọ na arịrịọ ịrịọ arịrịọ! Ọ ga-adị ka onye ahịa SQL ọ bụla nwere ọrụ mmecha akpaaka, mana maka nchekwa ọ naghị arụ ọrụ mgbe niile: ha anaghị adịkarị na-agụnye mmachi pụrụ iche na igodo mba ọzọ iji meziwanye arụmọrụ, na-enweghị nke a, mmemme ahụ agaghị ama ka ụlọ ọrụ si metụta nke ọ bụla. ọzọ na ihe ọ nwere ike imere gị na-enye.

Otu esi akwụsị ime otu ihe ahụ

N'ịbụ onye gafeworo ngọnarị, iwe, ịzụ ahịa, ịda mbà n'obi na ịbịaru nso nnabata, ekpebiri m - gịnị ma ị nwaa itinye onwe m iji mejuputa autofill na blackjack ma mee ya n'ụzọ ziri ezi? Ana m eji onye ahịa dbeaver, nke edere na java, nwere ụdị obodo mepere emepe. Atụmatụ dị mfe etoola:

  1. Chọta klaasị na koodu isi mmalite nke na-ahụ maka mmecha akpaaka
  2. Tụgharịa ha ka ha rụọ ọrụ na metadata dị na mpụga wee wepụta ozi gbasara njikọta n'ebe ahụ
  3. ?????
  4. uru

Achọpụtara m isi ihe nke mbụ ngwa ngwa - achọtara m arịrịọ na njikwa ahụhụ iji dozie autofill na ihe ndị metụtara ya. eme choputara klas SQLCCompletionAnalyzer. Ahụrụ m koodu ahụ ma ọ bụ ihe m chọrọ. Naanị ihe fọdụrụ bụ idegharị ya ka ihe niile wee rụọ ọrụ. M chere maka mgbede n'efu wee malite iche echiche site na mmejuputa ya. Ekpebiri m ide iwu njikọ tebụl (metadata) na json. Enweghị m ahụmahụ bara uru na-arụ ọrụ na usoro a na ọrụ dị ugbu a a na-ahụta dị ka ohere iji dozie nkwụsị a.

Iji soro json rụkọọ ọrụ, ekpebiri m iji ọbá akwụkwọ ahụ json-mfe sitere na Google. Nke a bụ ebe ihe ịtụnanya malitere. Dịka ọ siri pụta, dbeaver, dịka ngwa n'ezie, ka edere n'elu ikpo okwu Eclipse site na iji usoro OSGi. Maka ndị mmepe nwere ahụmahụ, ihe a na-eme ka ọ dị mfe ijikwa ịdabere na ya, mana maka m ọ dị ka anwansi gbara ọchịchịrị, nke doro anya na adịghị m njikere: dị ka ọ dị na mbụ, m na-ebubata klaasị m chọrọ n'ọbá akwụkwọ json-dị mfe na nkụnye eji isi mee nke. Klas edeziri, kọwapụta ya na pom xml, mgbe nke ahụ gasịrị, ọrụ a jụrụ ịgbakọta nke ọma wee daa na njehie.

N'ikpeazụ, m jisiri ike dozie njehie ụlọ: M debanyere ọbá akwụkwọ ahụ ọ bụghị na pom.xml, kama na manifest.mf, dị ka OSGI chọrọ, mgbe m na-akọwa ya dị ka mbubata-ngwugwu. Ọ bụghị ngwọta kachasị mma, mana ọ na-arụ ọrụ. Mgbe ahụ ihe ijuanya na-esote pụtara. Ọ bụrụ na ị na-emepe emepe na Intellij Idea, ị nweghị ike ịga na-amalite debugging gị oru ngo dabere na n'elu ikpo okwu eklips: onye mmepụta na-enweghị ahụmahụ kwesịrị ịta ahụhụ na-erughị onye nyocha na-enweghị ajụjụ emecha. Ndị na-emepụta beaver n'onwe ha bịara napụta, na-egosi na wiki niile na-agba egwú na ịgbà nke kwesịrị ime. Ihe kacha ewe iwe bụ na ọbụlagodi mgbe squats ndị a niile gasịrị, ọrụ ahụ achọghị ka ewepụtara ya na debug na ọba akwụkwọ json jikọtara site na mbubata-ngwugwu (n'agbanyeghị na ọ ka na-agbakọta nke ọma na ngwaahịa emechara).

N'oge ahụ, achọpụtala m na ọ naghị adị m mma iji json maka ọrụ m - ka emechara, ekwesịrị iji aka dezie metadata, usoro xml dịkwa mma maka nke a. Arụmụka nke abụọ kwadoro xml bụ ọnụnọ nke klaasị niile dị mkpa na JDK, nke mere ka o kwe omume ịkwụsị ọgụ na ọbá akwụkwọ dị n'èzí. N'obi ụtọ dị ukwuu, m bufere metadata niile site na json gaa na xml wee malite dezie mgbagha autocomplete.

Ọmụmaatụ metadata

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<tableRelations>
    <tableRelation>
        <leftTable>dim_account</leftTable>
        <rightTable>dim_partner</rightTable>
        <joinColumnPair leftColumn="partner_key" rightColumn="partner_key"/>
        <joinColumnPair leftColumn="src_id" rightColumn="src_id"/>
    </tableRelation>
    <tableRelation>
        <leftTable>dim_account</leftTable>
        <rightTable>dim_branch</rightTable>
        <joinColumnPair leftColumn="src_id" rightColumn="src_id"/>
        <joinColumnPair leftColumn="branch_key" rightColumn="branch_key"/>
    </tableRelation>
</tableRelations>

N'ihi ya, m mere mgbanwe banye na klaasị SQLUtils na SQLCompletionAnalyzer. Echiche a bụ nke a: ọ bụrụ na mmemme ahụ enweghị ike ịchọta ntụnye akpaaka zuru oke kwesịrị ekwesị site na iji mgbagha bụ isi, mgbe ahụ ọ na-enyocha ọnụnọ nke enwere ike ijikọ na-eji faịlụ xml mpụga. Faịlụ ahụ n'onwe ya na-echekwa tebụl abụọ na-egosi mpaghara nke achọrọ ijikọ tebụl ndị a. Edebere mmachi na ụbọchị nkwado teknụzụ nke ndekọ eff_dttm na exp_dttm yana ọkọlọtọ nhichapụ ezi uche dị na ya deleted_ind ka edobere na ndabara.

Mgbe e mere mgbanwe na koodu ahụ, ajụjụ ahụ bilitere - onye ga-ejupụta faịlụ na metadata? Enwere ọtụtụ ụlọ ọrụ na ebe nchekwa, ọ dị oke ọnụ ịdebanye aha njikọ niile n'onwe gị. N’ihi ya, ekpebiri m ikenye ndị nyocha ibe m ọrụ a. Etinyere m faịlụ metadata na svn, site na ebe a na-eme ndenye ego na ndekọ mpaghara nwere mmemme ahụ. Ụkpụrụ bụ nke a: ụlọ ọrụ ọhụrụ apụtala na ebe nchekwa? Otu onye nyocha na-abanye kwere omume ịbanye na faịlụ ahụ, na-eme mgbanwe, ndị ọzọ na-elele onwe ha ma nwee obi ụtọ na-arụ ọrụ akpaaka-emecha: obodo, nchịkọta ihe ọmụma na ihe niile. Na-eduzi ogbako na iji mmemme maka ndị ọrụ ibe, dere otu isiokwu na Confluence - ugbu a ụlọ ọrụ ahụ nwere otu ngwaọrụ dị mfe karị.

Na-arụ ọrụ na nke a mma nyere m nghọta na ọ dịghị mkpa na-atụ egwu tinker na-emeghe isi oru ngo - dị ka a na-achị, ha nwere doro anya architecture, na ọbụna isi ihe ọmụma nke asụsụ ga-ezuru nnwale. Na na a ụfọdụ ego nke nnọgidesi ike, ị ga-ọbụna-enwe ike tufuo ịkpọasị na-eme ihe omume, na-azọpụta onwe gị oge maka ọhụrụ nnwale.

isi: www.habr.com

Tinye a comment