áá¯á¶ááŸááºáá¯ááºáááºážáá±á¬ááºáá¬áá»á¬ážááᯠáááºáá«áááºáá« ááŒááºáá¯ááºááá¯áá«ááá¬ážá áá«ááŒá±á¬áá·áº áá«ááá¯ááºáá°ážá ááá¯á·áá±á¬áº Rostelecom ááá¯ááŸá±á¬ááºááŸá¯ááŸáá·áºá¡áá°á¡áá¯ááºáá¯ááºáá±á¬á¡áá« SQL client ááœááºá¡áá»áááºááá¯ááºážá áá»áœááºá¯ááºááẠtables áá»á¬ážááŒá¬ážááœáẠjoin á¡á¬ážáá¯á¶ážááá¯ááá¯ááºááá¯ááºá á¬áááºážááœááºážáááºááá¯á¡ááºáááºá á€á¡áá¬ááẠá¡ááŸá¯á¡áááºážáá»á¬ážá 90% ááœáẠááá¬ážáá»á¬ážáá«áááºááŒááºážá¡ááœáẠáááºáááºáá»á¬ážááŸáá·áº á¡ááŒá±á¡áá±áá»á¬ážááẠáá±á¬ááºážááá¯ááŸá¯á០áá±á¬ááºážááá¯áá»ááºá០ááá¯ááºááá¯ááºáá±áá±á¬áºáááºáž áááºážáááº! áááºááá·áº SQL áááá¯ááºážááá·áºááœááºáááᯠá¡ááá¯á¡áá»á±á¬áẠááŒáá·áºááœááºážááá·áº áá¯ááºáá±á¬ááºáá»ááºáá»á¬áž ááŸááá¯á¶ááá±á¬áºáááºáž ááá¯ááŸá±á¬ááºááŸá¯áá»á¬ážá¡ááœáẠáááºážááẠá¡ááŒá²áááºáž á¡áá¯ááºáááŒá áºáá«- áááºážááá¯á·ááœáẠá áœááºážáá±á¬ááºááẠááŒáŸáá·áºáááºáááºá¡ááœáẠáá°ážááŒá¬ážáá±á¬ ááá·áºáááºáá»ááºááŸáá·áº ááá¯ááºáá¶ááŒá¬ážáá®ážáá»á¬áž áá«áááºáá²ááŒá®ážá áááºážááá«áá² áááá¯ááááºááẠáá áºáá¯áá»ááºážá á®ááŸáá·áº áááºááá¯á·áááºá ááºáá±áááºááᯠáááááá¯ááºáá«á á¡ááŒá¬áž ááŸáá·áº áááºážááẠááá·áºá¡ááœáẠáááºáá²á·ááá¯á· áá¯ááºáá±á¬ááºááá¯ááºááááºážá
ááŒááºážááá¯ááŒááºážá áá±á«áááŒá
áºááŒááºážá á¡áá»áŸá±á¬á·á¡áááºážáá¯ááºááŒááºážá á
áááºáá¬ááºáá»ááŒááºážááŸáá·áº áááºáá¶ááŒááºážááá¯á·ááᯠáá»ááºážáááºááŒááºážááá¯á·ááᯠááŒááºáááºážááŒá®ážáá±á¬ááºá áá»áœááºá¯áẠáá¯á¶ážááŒááºáá²á·áááº- áá»áœááºá¯ááºááẠááááºáá»ááºááŒáá·áº á¡ááá¯á¡áá»á±á¬ááºááŒáá·áºááœááºážááẠáááŒáá¯ážá
á¬ážáá² áááºážááᯠáááºážáááºážááŸááºá¡ááá¯ááºáž áá¯ááºáá±á¬ááºááẠá¡áááºááŒá±á¬áá·áº áááŒáá¯ážá
á¬ážááááºážá áá»áœááºá¯ááºááẠjava ááœááºáá±ážáá¬ážáá¬ážáá±á¬ dbeaver client ááá¯á¡áá¯á¶ážááŒá¯áááºá áááºážááœáẠopen source á¡ááá¯ááºážá¡ááá¯ááºážáá¬ážááŸááºážáá
áºáá¯ááŸááááºá ááá¯ážááŸááºážáá±á¬á¡á
á®á¡á
á¥áºáá
áºáᯠááŒáá·áºá
á¯á¶áá¬áá«ááŒá®-
- á¡ááá¯á¡áá»á±á¬ááºááŒáá·áºáá±ážááŸá¯á¡ááœáẠáá¬áááºááŸááá±á¬ á¡áááºážá¡ááŒá áºáá¯ááºááŸá á¡áááºážáá»á¬ážááᯠááŸá¬áá«á
- áááºážááá¯á·ááᯠááŒááºá áááºáá¬áá±áá¬ááŒáá·áº áá¯ááºáá±á¬ááºááẠáááºážááá¯á·ááᯠááŒááºááœáŸááºážááŒá®áž ááá¯áá±áá¬á០áá»áááºáááºááŸá¯áá»á¬ážá¡ááŒá±á¬ááºáž á¡áá»ááºá¡áááºááᯠááœá²áá¯ááºáá«á
- ??????
- á¡ááŒááºá¡á áœááºáž
áááá¡áá»ááºááᯠá¡áá±á¬áºáá±áž ááŒááºááŒááºáááºááẠááœá±ážááŒáá·áºááááẠ- á¡á±á¬áºááá¯ááŒáá·áºááŒááºážááŸáá·áº áááºá
ááºááŸá¯á¡á¬áž áá»áááºááŸáááẠbug tracker ááœáẠáá±á¬ááºážááá¯áá»ááºáá
áºáá¯ááᯠááœá±á·ááŸááá²á·áááºá
json áá²á·á¡áá¯ááºáá¯ááºááá¯á·á¡ááœáẠlibrary ááá¯áá¯á¶ážááá¯á·áá¯á¶ážááŒááºááá¯ááºáááºá
á¡áá¯á¶ážááœááºá áá»áœááºá¯ááºááẠáááºáá±á¬ááºááŸá¯á¡ááŸá¬ážáá»á¬ážááᯠááŒááºáááºááá¯ááºáá«áááº- áá»áœááºá¯ááºááẠá á¬ááŒáá·áºááá¯ááºááᯠpom.xml ááœááºááá±á¬áºááŒáá¬ážáá² OSGI á ááá¯á¡ááºáá»ááºá¡á áááºáá®ážáááºá áº.mf áááºáá®ážáááºá áºááœááºá áááºážááᯠááœááºážáá¯ááº-áááºáá±á·áá»áºá¡ááŒá ẠáááºááŸááºáá±á ááºá á¡ááŸááá¯á¶ážááŒá±ááŸááºážáá»ááºááá¯ááºáá±á¬áºáááºážá áááºážáááºá¡áá¯ááºáá¯ááºáááºá áá±á¬ááºáá±á¬á· á¡á¶á·á¡á¬ážááá·áºá áᬠáá±á«áºáá¬áááºá á¡áááºá áááºááẠIntellij Idea ááœáẠáá®ááœááºáá±áá«áá áááºááẠáá±ááŒááºááŒááºážááááºáá±á¬ááºážááᯠá¡ááŒá±áá¶á ááá·áºááá±á¬áá»ááºááᯠá¡ááŸá¬ážááŸá¬á áááºá ááááá¯ááºáá«- á¡ááœá±á·á¡ááŒá¯á¶áááŸááá±á¬ áá±á¬á·ááºáá²áá±ážáá¬ážáá°ááẠá á¯á¶á ááºážáá±ážááŒááºážááŸá¯ áááŒá®ážááŒááºáá² ááœá²ááŒááºážá áááºááŒá¬áá°ááẠááááºážáá±á¬á·áá«á beaver developer áá»á¬ážááá¯ááºááá¯ááºá áááºáááºááẠáá±á¬ááºáá¬ááŒá®áž áá¯ááºáá±á¬ááºááẠááá¯á¡ááºááá·áº áááºáá¬ááŸáá·áº á¡ááá»á¬ážá¡á¬ážáá¯á¶ážááᯠwiki ááœáẠááœáŸááºááŒáááºá á áááºá¡ááŸá±á¬ááºá¡ááŸááºááŒá áºá áá¬á¡áá±á¬ááºážáá¯á¶ážá¡áá»ááºááŸá¬ squats á¡á¬ážáá¯á¶ážááŒá®ážáá±á¬ááºááœááºáááºá ááá±á¬áá»ááºááẠimport-package ááŸáá áºááá·áºáá»áááºáááºáá¬ážáá±á¬ json library ááŸáá·áº debug ááœááºáááœáá·áºááá¯áá² (áááºážááᯠáá¯ááºáá»á±á¬ááœááºá¡á±á¬ááºááŒááºá áœá¬á á¯á ááºážáá¬ážáá²ááŒá áºáááºáá°áá±á¬á¡áá»ááºáááº)á
ááá¯á¡áá»áááºááœááºá áá»áœááºá¯ááºááá¯ááºáááºážáá¬áááºá¡ááœáẠjson ááá¯á¡áá¯á¶ážááŒá¯ááẠá¡áááºáááŒá±ááŒá±á¬ááºáž áá¬ážáááºáá¬ážááŒá®ážááŒá áºááẠ- áá±á¬ááºáá¯á¶ážááœááºá áááºáá¬áá±áá¬ááᯠááá¯ááºááá¯ááºáááºážááŒááºááááºáᯠáá°ááááŒá®áž xml áá±á¬áºáááºááẠáááºážá¡ááœáẠááá¯ááá·áºáá»á±á¬áºáá«áááºá xml ááá»ááºááŸá¬áá¬áá±ážááá·áºáá¯áááá¡ááŒááºážá¡áá¯á¶ááŸá¬ JDK ááœááºááá¯á¡ááºáá±á¬á¡áááºážáá»á¬ážá¡á¬ážáá¯á¶ážááŸááá±ááŒááºážááŒá áºááŒá®ážá ááŒááºáá á¬ááŒáá·áºááá¯ááºááŸáá·áºááá¯ááºááá¯ááºááŒááºážááá¯áááºááá·áºááá¯ááºá á±áá²á·áááºá áá»á±á¬áºááœáŸááºá áœá¬ááŒáá·áºá json á០xml ááá¯á· metadata á¡á¬ážáá¯á¶ážááᯠááœáŸá²ááŒá±á¬ááºážááŒá®áž autocomplete logic ááᯠá áááºááŒááºáááºáá²á·áá«áááºá
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>
ááááºá¡áá±áá²á· áá«
áá¯ááºááᯠá¡ááŒá±á¬ááºážá¡áá²áá¯ááºáá±á¬á¡áá«ááœáẠáá±ážááœááºážáá±á«áºáá¬ááẠ- ááá¯ááºááᯠáááºáá¬áá±áá¬ááŒáá·áº áááºáá°ááŒáá·áºáá±ážáááºáááºážá repository ááœáẠentities áá»á¬ážá áœá¬ááŸááááºá áá»áááºáááºááŸá¯á¡á¬ážáá¯á¶ážááᯠááá¯ááºááá¯ááºááŸááºáá¯á¶áááºááẠá á»á±ážááŒá®ážáááºá ááá¯á·ááŒá±á¬áá·áº áá»áœááºá¯ááºááẠá€áá¬áááºááᯠáá»áœááºá¯ááºááá¯ááºáá±á¬áºááá¯ááºááẠá¡áá²áááºáá»á¬ážáᶠáá±ážá¡ááºááẠáá¯á¶ážááŒááºáá²á·áááºá áá»áœááºá¯ááºááẠáááá¯ááááºááŒáá·áº ááœá±áá±ážáá»á±ááŸá¯ááŒá¯áá¯ááºááá·áºáá±áá¬á០áááºáá¬áá±áá¬ááá¯ááºááᯠsvn ááœáẠáááºáá²á·áááºá áááá¬áááẠá€á¡áá¬ááŒá áºáááº- repository ááœáẠentity á¡áá áºáá áºáá¯áá±á«áºáá¬áá«ááá¬ážá á¡áá²áááºáá°áá áºáŠážááẠááá¯ááºáá²ááá¯á· ááŒá áºááá¯ááºáá»á±ááŸááá±á¬ áá»áááºáááºááŸá¯áá»á¬ážááᯠááá·áºááœááºážáᬠá¡ááŒá±á¬ááºážá¡áá²áá»á¬ážááᯠáá»á°ážááœááºáááºá áá»ááºáá°áá»á¬ážááẠáááºážááá¯á·ááᯠá á áºáá±ážááŒá®áž á¡áá¯ááºáá¯ááºáá±á¬ á¡ááá¯á¡áá»á±á¬áẠááŒá®ážáá¯á¶ážááŒááºáž- á¡ááá¯ááºážá¡ááá¯ááºážá á¡ááááᬠá á¯áá±á¬ááºážááŒááºážááŸáá·áº á¡áá¬á¡á¬ážáá¯á¶ážááᯠáá¶á á¬ážááá¯ááºáá«á áá¯ááºáá±á¬áºááá¯ááºáááºáá»á¬ážá¡ááœáẠáááá¯ááááºááᯠá¡áá¯á¶ážááŒá¯ááŒááºážááá¯ááºáᬠá¡áá¯ááºáá¯á¶ááœá±ážááœá±ážááœá²áá áºáᯠááŒá¯áá¯ááºáá²á·ááŒá®áž ááŒá áºáá¯á¶ááœáẠáá±á¬ááºážáá«ážáá áºáá¯áẠáá±ážáá¬ážáá²á·ááẠ- ááá¯á¡áá« áá¯áá¹ááá®ááœáẠááá¯ááá¯á¡áááºááŒá±ááá·áº áááááá¬áá áºáᯠááŸááá¬ááŒá®ááŒá áºáááºá
á€á¡ááºá¹áá«áááºááá¯áá¯ááºáá±á¬ááºááŒááºážááŒáá·áº open source ááá±á¬áá»ááºáá»á¬ážááŸáá·áº ááœá²áá¯ááºááẠááŒá±á¬ááºááœá¶á·áá±ááẠáááá¯á¡ááºááŒá±á¬ááºáž áá¬ážáááºá
á±ááẠ- á
ááºážáááºážá¡áá±ááŒáá·áº áááºážááá¯á·ááœáẠááŸááºážáááºážáá±á¬áááá¯áá¬ááá¬ááŸáááŒá®áž áá¬áá¬á
áá¬ážáá¡ááŒá±áá¶á¡ááááá¬ááẠá
ááºážáááºááŸá¯áá»á¬ážá¡ááœáẠáá¯á¶áá±á¬ááºáááºááŒá
áºáááºá á¡ááá¯ááºážá¡áá¬áá
áºáá¯á¡áá á
áœá²ááŒá²á
áœá¬áá¯ááºáá±á¬ááºááŒááºážááŒáá·áº áááºááẠá¡áá¯ááºážááœá¬ážá
á±áá±á¬ áá¯á¶ááŸááºáá¯ááºáááºážáá±á¬ááºáá¬áá»á¬ážááᯠáááºááŸá¬ážáá
áºááá¯ááºááŒá®áž á
ááºážáááºááŸá¯á¡áá
áºáá»á¬ážá¡ááœáẠááá·áºááá¯ááºááẠá¡áá»áááºáá¯ááºáááºáá¬á
á±áááºááŒá
áºáááºá
source: www.habr.com