2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Sisällysluettelo
Sisällysluettelo
(1) Tietokannan nimeämiskäytäntö:
(2) Huomautuksia koskevat tiedot:
(4) Käyttöliittymän ja taustan tekniset tiedot:
(2) Luo uusi projekti ja kutsu joukkuetoverisi:
(3) Kirjoitusmääritykset rajapintaasiakirjoille
4. Debug-toiminto (täytyy tuntea tausta)
(Yksi henkilö ei voi hallita maata!!!)
Erityiset ovat:
(1) Entiteettikerros: Entiteettikerros tallentaa tietyt objektien entiteetit, jotka vastaavat tietokannan objekteja.
(2) DAO-kerros: (voidaan jakaa kahteen kerrokseen (daon käyttöliittymäkerros ja daon toteutuskerros)) on kerros, joka on vuorovaikutuksessa tietokannan kanssa ja sisältää joitain tietokannan lisäys-, poisto-, muokkaus- ja kyselytoimintoja.
(3) Palvelukerros (voidaan jakaa kahteen kerrokseen (palvelurajapintakerros ja palvelun toteutuskerros)): vastaavat pääasiassa liiketoimintamoduulien loogista sovellussuunnittelua.
(4) Ohjainkerros: Ohjainkerros vastaa tiettyjen liiketoimintamoduulien prosessien ohjauksesta. Ohjainkerros on vastuussa etu- ja taustavuorovaikutuksesta, etupään pyyntöjen hyväksymisestä, palvelukerroksesta kutsumisesta ja lähettäjien palauttamien tietojen vastaanottamisesta. palvelukerroksen ja lopuksi tiettyjen sivujen ja tietojen palauttaminen asiakkaalle.
(5) Util-taso: Työkalukerrokseen sijoitetaan yleisesti käytetyt työkaluluokat Esimerkiksi jotkut yleiset menetelmät voidaan kirjoittaa util-funktiona ja sitten yleistä koodia yksinkertaistaa.
(6) Poikkeuskerros: Voit kirjoittaa yhtenäisen palautuspoikkeuskerroksen.
(7) Suodatinkerros: Suodatinkerros, kuten tasaisesti suodattava identiteetin todennus Jos suodatin ei läpäise, se on vain vierastilassa.
DTO on käyttöliittymäpyynnön lähettämä tietorakenne.
VO on vastaus, jonka taustaosa palauttaa vastauksena käyttöliittymän lähettämään pyyntöön.
PO on todellinen vastaavuus kohdeentiteetin ja tietokantaobjektitaulukon välillä.
BO on objektientiteetti liiketoiminnan käsittelyprosessissa.
Nimeä se englanniksi, ei kiinan pinyiniksi.
Ole helppo ymmärtää, älä hienoa.
Käytä hump-nimeämistä tavallisten nimien sijaan.
Käytä rivinvaihtoja väliajoin äläkä kirjoita pitkiä kappaleita.
Ole huomautettu, älä individualistinen.
Älä käytä avainsanoja, varattuja sanoja jne., joilla on erityismerkitys itse Javassa! ! !
(1) Taulukon nimi on yksilöllinen, eikä useissa taulukoiden nimissä voi käyttää samaa nimeä.
(2) Taulukon nimen tulee olla pienten kirjainten ja alaviivojen yhdistelmä. Älä käytä isoja kirjaimia tai erikoismerkkejä. Käytä "user_info" tai "tbl_user_info".
(3) Älä ole ristiriidassa avainsanojen kanssa,Jos haluat poistaa käytöstä varatut sanat, kuten like, desc, range, match, delayed jne., katso MySQL:n viralliset varatut sanat.
(4) Tietokantakentän nimi: Se koostuu 26 englanninkielisestä kirjaimesta (isot ja pienet kirjaimet) sekä alaviiva '_', kuten "user_id", "user_name", "user_password", "user_register_time", "user_login_time".
(5) Ensisijaisten ja vieraiden avainten määritykset:
Ensisijainen avain: pk_+taulukon nimi
Esimerkiksi:pk_main
Vieras avain: fk_+orjataulukon nimi+_+päätaulukon nimi
Esimerkiksi:fk_sub_main
(1) Luokan huomautus:
Luokkamerkintöjä (Class) käytetään pääasiassa ilmoittamaan, mihin luokkaa käytetään, sekä joitain tietoja, kuten luoja, luontipäivämäärän versio, paketin nimi jne.:
/**
* @versio: V1.0
* @tekijä: fendo
* @className: käyttäjä
* @packageName: käyttäjä
* @description: Tämä on käyttäjäluokka
* @data: 2024-07-01 12:20
**/
(2) Menetelmän huomautus (konstruktori):
/**
* @tekijä: fendo
* @methodsName: addUser
* @description: Lisää käyttäjä
* @param: xxxx
* @return: merkkijono
* @heitot:
*/
(3) Koodilohkon kommentit: selitä koodisi tietyn osan tarkoitus
/**
* Luo käyttäjä
* xxxxxxx
*/
User user=new User();
(4) Yksilauseiset kommentit: kommentoi omaa koodiasi
User user=new User();
Nimeä se niin, että muut ymmärtävät sen, nimeä se kamelin kirjaimella ja ota kirjainkoko huomioon.
Esimerkiksi: UserController, FileController, BookService
Esimerkiksi: getUserName(), userLogin(), getMessage();
Esimerkki: MAX_STOCK_COUNT / CACHE_EXPIRED_TIME
1) Menetelmään yksittäisen objektin saamiseksi on etuliite get.2) Menetelmät useiden objektien saamiseksi on liitetty luetteloon ja päättyvät monikkoon, kuten: listObjects3) Tilastollisten arvojen saamismenetelmä on etuliitteenä count.4) Lisäystavan edessä on tallenna/lisää.5) Poistomenetelmän eteen on merkitty poista/poista.6) Muokatun menetelmän etuliitteenä on päivitys.
1) Tietoobjekti: xxxDO, xxx on tietotaulukon nimi.2) Tiedonsiirtoobjekti: xxxDTO, xxx on liiketoiminta-alaan liittyvä nimi.3) Näyttöobjekti: xxxVO, xxx on yleensä web-sivun nimi.
Olemassa olevien objektien käyttäminen on suuri sudenkuoppa. On suositeltavaa käyttää yhtäläisyysmenetelmää.
Positiivinen esimerkki:(1) Määritä virhealue Jos kahden liukulukuluvun välinen ero on tällä alueella, niitä pidetään yhtäläisinä.kellua a = 1.0F - 0.9F ;kellua b = 0.9F - 0.8F ;kellua ero = 1e-6F ;jos ( Matematiikka . abs ( a - b ) < ero ) {Järjestelmä . ulos . println ( "totta" );}(2) Määritä arvo BigDecimalilla ja suorita sitten liukulukuoperaatioita.BigDecimal a = Uusi BigDecimal ( "1.0" );BigDecimal b = Uusi BigDecimal ( "0.9" );BigDecimal c = Uusi BigDecimal ( "0.8" );BigDecimal x = a . vähentää ( b );BigDecimal y = b . vähentää ( c );jos ( x . vertaa ( y ) == 0) {Järjestelmä . ulos . println ( "totta" );}
tunnisteen tyyppi | Nimeämissäännöt | esimerkki |
Paketit | Ainutlaatuisen paketin nimen etuliite on aina pieniä ASCII-kirjaimia ja se on ylätason verkkotunnus, yleensä com, edu, gov, mil, net, org tai englanninkielinen kaksimerkkinen koodi, joka tunnistaa vuoden 1981 lain määrittämän maan. ISO 3166 standardi. Paketin nimen myöhemmät osat vaihtelevat eri organisaatioiden sisäisten nimeämiskäytäntöjen mukaan. Tällaiset nimeämiskäytännöt voivat käyttää tiettyjen hakemistonimien koostumusta osastojen, projektien, koneiden tai kirjautumisnimien erottamiseen. | com.sun.eng com.apple.quicktime.v2 edu.cmu.cs.bovik.cheese |
Luokat | Nimeämissäännöt: Luokan nimi on substantiivi, jossa käytetään isoja ja pieniä kirjaimia ja jokaisen sanan ensimmäinen kirjain isolla. Yritä pitää luokkasi nimet tiiviinä ja kuvaavina. Käytä kokonaisia sanoja, vältä lyhenteitä (ellei lyhennettä ole käytetty laajemmin, kuten URL, HTML) | luokka Raster; luokka ImageSprite; |
Liitännät | Nimeämissäännöt: Kirjainkokosäännöt ovat samanlaisia kuin luokkien nimet | käyttöliittymä RasterDelegate; käyttöliittymä Varastointi; |
menetelmät | Metodin nimi on verbi, sekoitettuna, jossa ensimmäisen sanan ensimmäinen kirjain on pieni ja seuraavien sanojen ensimmäinen kirjain iso.Kamelitapauksen nimeäminen | juosta(); juokse nopeasti(); getBackground(); |
Muuttujat | Muuttujien nimiä lukuun ottamatta kaikki esiintymät, mukaan lukien luokat ja luokkavakiot, ovat sekoitettuina kirjaimissa, jolloin ensimmäisen sanan ensimmäinen kirjain on pieni ja seuraavien sanojen ensimmäinen kirjain iso. Muuttujien nimet eivät saa alkaa alaviivalla tai dollarimerkillä, vaikka tämä on syntaktisesti sallittua. Muuttujien nimien tulee olla lyhyitä ja kuvaavia. Muuttujien nimet tulee valita helposti muistettaviksi eli osoittamaan niiden tarkoitusta. | Lista<User> userList; merkkijono käyttäjänimi; |
Vakiot | Luokkavakioiden ja ANSI-vakioiden ilmoitukset tulee kirjoittaa isoilla kirjaimilla, ja sanat on erotettava alaviivalla. (Yritä välttää ANSI-vakioita, jotka voivat aiheuttaa helposti virheitä) | staattinen lopullinen int MIN_WIDTH = 4; staattinen lopullinen int MAX_WIDTH = 999; staattinen lopullinen int GET_THE_CPU = 1; |
a) GET: Hanki resurssit palvelimelta. (voidaan katsoa valittuna toimintona)b) POST: Luo uusi resurssi palvelimelle. (voidaan pitää lisäysoperaationa)c) PUT: Päivitä palvelimen resurssit. (voidaan katsoa päivitysoperaationa)d) DELETE: Poista resurssit palvelimelta. (voidaan pitää poistotoiminnona)
code
: http tilakoodi message
: Vastaavat tekstikuvaustiedot data
list
dict
- {
- "code": 200,
- "message": "new user has created",
- "data": {
- "id": "user-4d51faba-97ff-4adf-b256-40d7c9c68103",
- "firstName": "crifan",
- "lastName": "Li",
- "password": "654321",
- "phone": "13511112222",
- "createdAt": "2016-10-24T20:39:46",
- "updatedAt": "2016-10-24T20:39:46"
- ......
- }
- }
(3) Vastauksen tilakoodi
Virhe:
2XX menestys
200 ok (pyyntö onnistui)
204 ei sisältöä (pyyntö onnistui, mutta tulosta ei palautettu)
206 osittainen sisältö (asiakas pyytää osaa resurssista, palvelin vastaa onnistuneesti ja palauttaa joukon resursseja)
3XX uudelleenohjaus
301 siirtää pysyvästi (pysyvä uudelleenohjaus)
302 löytyi (väliaikainen uudelleenohjaus)
303 katso muu (osoittaa, että koska pyyntöä vastaavalla resurssilla on toinen URI, tulee käyttää GET:tä
Menetelmä pyydetyn resurssin hankkimiseen)
304 ei muokattu (osoittaa, että kun asiakas käyttää ehdollista pääsyä resurssiin, palvelin löytää resurssin, mutta pyynnön ehdot eivät täytä ehtoja. Sillä ei ole mitään tekemistä uudelleenohjauksen kanssa)
307 väliaikainen uudelleenohjaus (sama merkitys kuin 302)
4XX asiakasvirhe
400 virheellinen pyyntö (pyyntöviestissä on syntaksivirhe)
401 luvaton (vaatii todennuksen (ensimmäinen paluu) tai todennus epäonnistui (toinen paluu))
403 kielletty (palvelin hylkäsi pyynnön)
404 ei löydy (pyydetty resurssi ei löydy palvelimelta)
5XX palvelinvirhe
500 sisäinen palvelinvirhe (tapahtui virhe, kun palvelin suoritti pyynnön)
503-palvelu ei ole käytettävissä (palvelin on ylikuormitettu tai se ei toimi ylläpidon vuoksi eikä pysty käsittelemään pyyntöä)
havainnollistaa: Nginxin oletusraja on 1 Mt ja tomcatin oletusraja on 2 Mt Kun liiketoiminnassa on tarvetta siirtää suurempaa sisältöä, voit suurentaa palvelinpuolen rajaa.
havainnollistaa: Kun try-lohkon return-käsky on suoritettu onnistuneesti, se ei palauta heti, vaan jatkaa lauseen suorittamista lopullisessa lohkossa yritä estää.
Linkki: Lataa apifox suoraan napsauttamalla linkkiä (lataa vain uusin versio). Apifox – integroitu yhteistyöalusta API-dokumentaatioon, virheenkorjaukseen, pilkkaamiseen ja testaukseen. Siinä on toimintoja, kuten käyttöliittymän dokumenttien hallinta, käyttöliittymän virheenkorjaus, mock ja automatisoitu testaus, ja käyttöliittymän kehittämisen, testauksen ja yhteisen virheenkorjauksen tehokkuus kasvaa 10-kertaiseksi. Paras käyttöliittymän dokumenttien hallintatyökalu ja käyttöliittymän automaation testaustyökalu.https://apifox.com/
1. Luo tiimisi ja luo uusi projekti:
Kutsu joukkuetoverisi
2. Luo uusi käyttöliittymä ja luo uusi tietomalli:
(1) Määritä, mikä pyyntö on (POST, GET, PUT, DELETE):
(2) Testiympäristön on oltava yhtenäinen, ja URL-osoitteet eri ympäristöissä ovat erilaisia:
(3) Pyyntöparametrit on määritetty:
Mitä parametreja on määritetty. Anna parametrien esimerkkejä, kiinalaisia nimiä ja parametrien kuvauksia.
(4) Vastaus on määritettävä:
On esimerkiksi määriteltävä, millaista tietoa eri tiloissa palautetaan, ja on oltava menestys- ja poikkeusesimerkkejä (käyttöliittymän mukavuuden vuoksi).
- {
- "code": 200,
- "message": "登入成功",
- "data": {
- "user_id": 27,
- "user_name": "孟霞",
- "user_password": "123456",
- "user_age": "15",
- "user_photo": "http://dummyimage.com/400x400",
- "user_last_time": "1996-12-11 09:03:49",
- "user_indentity": "messager",
- "user_birthday": "2024-02-23"
- }
- }
(5) Tietomalli voidaan luoda:
Voit luoda useita tietomalleja, mikä on erittäin kätevä vastauskenttien palauttamiseen ja myös käyttöliittymän kätevää tarkastella tietokenttiäsi.
Apifoxin kirjoitustiedot ja erityiset yksityiskohdat.
Apifox Quick Start |. Apifox-ohjedokumentaatiohttps://apifox.com/help/
(1) API-rajapinnan asiakirjan alussa pitäisi olla johdanto. Tämä osio voi sisältää seuraavat:
Tämän osan tarkoituksena on antaa lukijoille ymmärtää API-rajapinnan perustilanne ja taustatiedot.
(2) Liitäntäluettelo
Seuraavaksi API-rajapinta-asiakirjassa meidän on lueteltava kaikki rajapinnat. Jokaisen käyttöliittymän tulee sisältää seuraavat tiedot:
Tämän osion tarkoituksena on, että lukijat ymmärtävät nopeasti kunkin käyttöliittymän perustiedot ja voivat käyttää liitäntöjä oikein dokumentin esimerkkien perusteella.
(3) Pyyntöparametrien ja vastausparametrien kuvaus
Liitäntäluettelon jälkeen meidän on täsmennettävä kunkin liitännän pyyntöparametrit ja vastausparametrit. Tämän osan tulee sisältää seuraavat tiedot:
Parametrityypeissä ja -muodoissa voit käyttää vakiotietotyyppejä ja -muotoja tai voit määrittää omia tietotyyppejä ja -muotoja erityisten olosuhteiden mukaan. Tarvitaanko ja oletusarvot määritellä todellisen tilanteen perusteella.
(4) Virhekoodin kuvaus
API-rajapintaa käytettäessä tapahtuu joskus virhe. Tässä tapauksessa on palautettava virhekoodi, joka selittää virheen tyypin ja syyn. Siksi API-rajapinnan dokumentaatiossa meidän on määritettävä kaikki mahdolliset virhekoodit. Tämän osan tulee sisältää seuraavat tiedot:
Tämän osan tarkoituksena on, että lukija ymmärtää kaikki mahdolliset virhetyypit ja syyt sekä osaa käsitellä virheitä oikein dokumentaation esimerkkien perusteella.
(1) Erityistoiminnot:
Määrittele testiluokka
ehdotus:
Testiluokan nimi: Testatun luokan nimi Test CalculatorTest
Paketin nimi: xx.xx.xx.test cn.itcast.test
Määritä testimenetelmät: voidaan suorittaa itsenäisesti
ehdotus:
Menetelmän nimi: testimenetelmän nimi testAdd()
Palautusarvo: mitätön
Parametriluettelo: tyhjät parametrit
Lisää @Test menetelmään
Tuo Junit-riippuvuusympäristö
tuomion tulos:
Punainen: epäonnistui
vihreä: menestys
Käytämme yleensä Assert-luokan alla staattista menetelmää assertEquals (odotettu, todellinen) odotettujen tulosten ja tulostemme käsittelyyn.
Assert.assertEquals(3, tulos);
Kaksi parametria ovat: odotusarvo ohjelman tulosarvo
Miksi käyttää Assert.assertEquals(odotettu, todellinen) testitulosten käsittelyyn?
Koska edellytämme, että punainen edustaa epäonnistumista ja vihreä edustaa oikeellisuutta. Kun käytämme testimenetelmää tietokoneen lisäysmenetelmän testaamiseen, tulostamme vain tämän tuloksen (olettaen, että poikkeusta ei tapahdu). Jos syötämme 1 ja 3, odotamme saavamme tuloksen 4, mutta tulos on 2 ja odotamme saavamme 4. Tällä hetkellä saatu tulos ei vastaa odotuksiamme, mutta juoksutulos on silti vihreä (esittää oikein), eikö se ole oikein. Tällä hetkellä voimme käyttää Assertin assertEquals-menetelmää vertaillaksemme ohjelman tulosarvoa, jos ne ovat yhtä suuret, ja jos ne eivät ole samanarvoisia, se on punainen. Täyttääkö tämä aika vihreän ja punaisen määritelmämme?
- package cn.itcast.test;
-
- import cn.itcast.junit.Calculator;
- import org.junit.Assert;
- import org.junit.Test;
-
- public class CalculatorTest {
- /**
- * 测试add方法
- */
- @Test
- public void testAdd(){
- Calculator c = new Calculator();
- int a = 1, b = 2;
- int result = c.add(1, 2);
- Assert.assertEquals(3, result);
- }
-
- /**
- * 测试sub方法
- */
- @Test
- public void testSub(){
- Calculator c = new Calculator();
- int a = 1, b = 2;
- int result = c.sub(1, 2);
- Assert.assertEquals(-1, 2);
- }
- }
-
@Ennen
Lisää @Before ennen testimenetelmää ja siitä tulee alustusmenetelmä. Tämä menetelmä suoritetaan automaattisesti ennen kuin kaikki testimenetelmät suoritetaan. Sitä käytetään yleensä resurssisovelluksessa.
@Jälkeen
Lisää @After ennen testimenetelmää ja siitä tulee resurssien vapautusmenetelmä, joka suoritetaan automaattisesti, kun kaikki testimenetelmät on suoritettu.
@Before-kirjaimella koristeltu menetelmä suoritetaan ennen testimenetelmän suorittamista.
@Afterilla koristeltu menetelmä suoritetaan testimenetelmän suorittamisen jälkeen.
@Ennen tai @Jälkeen muokatut menetelmät suoritetaan riippumatta siitä, esiintyykö testimenetelmä.
(2) Luo automaattisesti testiluokan laajennuksia
(1) Kun kirjoitat käyttöliittymäasiakirjan takaosaan, se on kirjoitettava selkeästi, jotta käyttöliittymäsi ymmärtää sen. Älä kirjoita sitä niin, että ymmärrät sen itse Uudelleenkirjoitetun nimen ja oletusarvon käyttöliittymän vastaus tulee kirjoittaa hyvin.
(2) Opetetun lisäksi voit oppia itse joitakin muita asioita, kuten sähköpostivahvistusrekisteröinnin, varmistuskoodin kirjautumisen, c3p0:n, MD5-salauksen, lokilokit, tulostyylin jne.
(3) Koodin kirjoittamisen on myös oltava standardoitua ja logiikan on oltava tiukat (eväste, istunto), joissa tarvitaan tyhjää harkintaa, ja jos turvallisuutta voidaan lisätä, voit oppia siitä.
(4) Käyttöliittymän ja taustaosan on toimittava hyvin yhteistyössä. Käyttöliittymän ja taustan vuorovaikutteinen vastaus on myös osa arviointia, ja se muodostaa suuren osan kirjoittamastasi käyttöliittymästä, jota ei voi ajaa vain apifox-sivulla Onko olemassa loogisia ongelmia jne. Saattaa olla tarpeen harkita.
(5) Määritä kysyntäanalyysin aikana haluamasi toiminnot ja käyttöliittymät käyttöliittymät/data , jos et kirjoittanut, harkitse huolellisesti ja kommunikoi enemmän.
Voit vertailla projekteja, jotka todella toimivat tai jotain vastaavaa, kuten ostossivustoa. Tämän jälkeen sinun tulee vertailla Taobaoa, mitä taustaliittymiä tällä verkkosivustolla voi olla, mitä toiminnallisia moduuleja sillä voi olla, ja erityisiä yksityiskohtia.
(6) Älä tavoittele sokeasti enemmän, ole looginen ja järkevä ja opi yksinkertaistamaan niitä osia, jotka voidaan yksinkertaistaa. Mutta myös rajapintojen perusmäärä ja koodimäärä on taattava. (Alun perin kirjoittamamme käyttöliittymät olivat periaatteessa yli 40)