Ano ang Framework ng Spring? - Landas Sa Mahusay na Pag-unlad



Ang blog na ito sa kung ano ang Pinagsasabi ng Spring Framework tungkol sa malawak na ginamit na Java Framework - Spring. Sinasabi din nito kung bakit at paano gamitin ang Spring Framework na may mga halimbawa.

Sa mabilis na bilis ng mundo ngayon, kailangan natin ang lahat upang maging mabilis. Hindi namin nais na mapanatili ang aming sarili sa isang trabaho nang masyadong mahaba, hayaan itong maging anumang tulad ng paglalakbay, pamimili, pag-aaral o pagtatrabaho. Pagdating sa pag-coding, nais naming mapaunlad ang aming mga application sa pinakamaikling panahon ngunit nagbibigay ng buong kahusayan. Maaaring nagmamadali tayo, ngunit gayon pa man, hindi tayo maaaring magkompromiso sa aming kalidad o nais naming maglagay ng labis na pagsisikap dito. Kaya ano ang solusyon? Ang mga Framework ay pinakamahusay na gumagana sa sitwasyong ito. Mayroong iba't ibang Mga Framework na magagamit doon sa merkado kabilang sa iilan ang ginagamit tulad ng: Spring, Hibernate, Struts atbp Sa pamamagitan ng blog na ito alamin natin kung ano ang Spring Framework at kung bakit ito sikat sa merkado!

Bago magsimula, tingnan natin ang mga paksang tatalakayin ko sa blog na ito:





Mga Framework ng Java

Bakit kami dapat pumunta para sa Frameworks?Hayaan natinmaunawaan ito sa ating kaibigan, Coddy .

Coddy na may problema - Ano ang Framework ng Spring - Edureka!



Coddy ay binibigyan ng isang gawain upang bumuo ng isang aplikasyon, ngunit ang itinalagang oras ay hindi sapat upang matapos ito. Kailangan niyang isulat ang maraming mga linya ng code (LOC) nang mag-isa. Napakatagal ng oras at nakakapagod. Naguguluhan siya sa dapat niyang gawin! Kung saan siya dapat magsimula!

Coddy nagsimulang mag-isip ng solusyon sa kanyang problema. Kailangan niya ng isang bagay na mabilis at mahusay ay nakakatipid ng oras at pagsisikap, tulad ng isang bagay na handa nang gawin.



Bigla, sinaktan siya ng ideya ng paggamit ng Frameworks. Ang mga Framework ay mabilis, mahusay at magaan ang timbang. Ang mga ito ay malalaking katawan ng mga paunang natukoy na mga code na maaari naming madaling idagdag sa aming sariling code upang malutas ang isang tukoy na problema.

Nag-code siya gamit ang Framework. Nakakagulat na ang code ay madaling nilagyan ng balangkas.

Coddy Ngayon, maaaring mag-code nang mas mabilis at kumpletuhin ang kanyang aplikasyon sa loob ng naibigay na time frame. Bukod dito, siya ay malaya sa pagsusulat ng libu-libong mga linya ng hindi gumagana na code.

Matapos ang pag-deploy ng application na binuo gamit ang Framework, nalaman niya na pinaandar ito nang may mas mataas na bilis at ang throughput nito ay tumaas din kumpara sa ibang mga application na binuo nang hindi ginagamit ang Framework.

Kaya, magsisimula tayo ngayon sa Java Frameworks.

Paano Ang Mga Framework ng Java Ay Naging Umiiral?

Huling bahagi ng 1990's ang mga aplikasyon ay malawak na binuo gamit ang mga pamantayan ng JEE. Ang saligan ng J2EE ay multi-platform / multi-vendor, kung maaari kang mag-code alinsunod sa mga pamantayan ng J2EE maaari mong i-deploy ang iyong aplikasyon sa anumang J2EE server ng aplikasyon anuman ang platform. Ang pagpapatakbo ng iyong code sa anumang server ng application ay nagbibigay sa iyo ng maraming mga benepisyo tulad ng - pamamahala ng transaksyon, pagmemensahe, pag-mail, interface ng direktoryo atbp. Ngunit dahil walang madali sa mundong ito, ang pagtatrabaho sa J2EE ay mayroon ding ilang mga paghihirap.

  • NapakaKomplikado : Ang Enterprise Java Bean ay binuo para sa pagbawas ng pagiging kumplikado sa mga aplikasyon ng J2EE. Ngunit hindi ito nagtagumpay sa layunin nito sa pagpapatupad. Dahilan sa likod nito ay, habang sumusulat ng isang sangkap kinakailangan upang magsulat ng isang hanay ng mga XML file, mga interface ng bahay, remote / lokal na mga interface, atbp.
  • Problema sa 'pagtingin': Kailan man ang isang sangkap ay nakasalalay sa isa pang bahagi, kailangan itong maghanap para sa mga sangkap na umaasa sa pamamagitan nito ng kanyang sarili. Ang sangkap na 'pagtingin-up' ay nangyayari lamang sa pangalan, kaya't ang pangalan ng pagpapakandili ay hard-code sa bahagi.
  • Mabigat na timbang: Bilang isangAng mga tampok tulad ng clustering, remoting, atbp ay suportado, kailangan mong i-configure ang mga ito, hindi alintana ang katotohanang kailangan mo sila o hindi. Gagawin nitong pamamaga ang iyong mga application.

Ganito nagsimula ang Java Frameworks. Ang Java Frameworks ay walang iba kundi ang mga malalaking katawan ng paunang natukoy na code na maaari mong mailapat sa iyong sariling code upang malutas ang iyong problema sa isang tukoy na domain. Maaari kang gumamit ng isang balangkas sa pamamagitan ng pagtawag sa mga pamamaraan nito, pamana, sa pamamagitan ng pagbibigay ng 'mga callback', tagapakinig, o iba pang pagpapatupad ng Tagamasid pattern

Unawain natin ito sa pamamagitan ng isang nakalarawan na larawan:

Ngunit paano eksaktong binabawasan nila ang aming trabaho at ginagawang mabisa ang aming mga code? Upang maunawaan ito dumaan sa mga sumusunod kalamanganatdehadong mga balangkas na ito. Magsimula tayo sa kalamangan .

Kahusayan:

ipaliwanag ang pagkakaiba sa pagitan ng mga bagay na nababago at hindi nababago.

Ang mga gawaing sa pangkalahatan ay magdadala sa iyo ng mga oras at daan-daang mga linya ng code upang makabuo, maaari na ngayong gawin sa ilang minuto na may paunang built na mga pag-andar. Ang pag-unlad ay naging mas madali, kaya kung mas madali ito, mas mabilis ito, at pagkatapos ay mas epektibo.

Seguridad:

Ang isang malawakang ginamit na balangkas sa pangkalahatan ay magkakaroon ng malakiseguridadmga aplikasyon. Ang malaking pakinabang ay angkapitbahayansa likod ng balangkas na iyon, kung saan ang mga gumagamit ay karaniwang nagtatapos sa pagiging pangmatagalang mga tester. Kung nakakita ka ng isang kahinaan o isang butas sa seguridad, maaari kang pumunta sa web site ng balangkas at ipaalam sa kanila upang maayos ito.

Gastos:

Karamihan sa mga tanyag na istraktura ay komplimentaryo at sa gayon ay nakakatulong sa developer na mag-code nang mas mabilis. Kung ang pag-coding ay ginagawang mas mabilis ang gastos para sa pangwakas na kliyente ay tiyak na mas maliit sa bawat aspeto, oras o pagsusumikap man. Bukod dito ang gastos sa pagpapanatili ay mababa din.

Suporta:

Tulad ng anumang iba pang ipinamamahagi na tool, isang balangkas sa pangkalahatan ay may kasamang mga dokumento, isang pangkat ng suporta o mga forum ng online na malalaking komunidad kung saan maaari kang makakuha ng mabilis na mga tugon.

Sa kabila ng pagkakaroon ng lahat ng mga pakinabang na ito Java Frameworks mayroon ilang dehado , katulad:


Mga Paghihigpit:

Ang pangunahing pag-uugali ng balangkas ay hindi maaaring mabago, na nagpapahiwatig na kapag gumamit ka ng isang balangkas, kinakailangan mong igalang ang mga limitasyon nito at gumana sa paraang kinakailangan ito. Kaya, dapat mong tiyakin na pumili ka ng isang balangkas na umaangkop sa iyong mga pangangailangan.

Pampubliko ang code:

Dahil ang balangkas ay madaling magagamit sa lahat, it inaalok din sa mga taong may masamang hangarin. Maaari itong pag-aralan upang malaman kung paano gumagana ang mga bagay at upang matuklasan ang mga bahid na maaaring magamit laban sa iyo.

Pasadya Mga Tampok:

Kapag gumagamit ka ng isang balangkas, kakaunti ang alam mo tungkol sa wika sa likuran nito dahil ang mga tampok dito ay pasadyang binuo.Kapag gumamit ka ng mga pasadyang built na tampok, malamang na kailangan mong gamitin ang mga ito alinsunod sa mga pamantayan ng balangkas na maaaring magkakaiba sa orihinal na konsepto.

Ngayonyanalam mo ang mga pakinabang at dehadong mga balangkas,piliin ang iyong balangkas alinsunod sa iyong pangangailangan. Mayroong iba't ibang mga uri ng mga balangkas na magagamit sa merkado. Ipinapakita ng diagram sa ibaba ang ilan sa mga ito:

Kaya, sa blog na ito magtutuon kami sa Spring Framework.

Ano ang Framework ng Spring?

Narito ang tanong na 'Ano ang Framework ng Spring'?

Ang Spring Framework ay isang malakas na balangkas ng pagpapaunlad ng aplikasyon na ginagamit para sa Enterprise Java (JEE).

ano pojo class sa java

Ang pangunahing mga tampok ng Spring Framework ay maaaring magamit sa pagbuo ng anumang aplikasyon ng Java.Maaari itong mailarawan bilangkumpleto at modular na balangkas. Ang Spring Framework ay maaaring magamit para sa lahat ng pagpapatupad ng layer ng isang real time application. Maaari din itong magamit para sa pagbuo ng partikular na layer ng isang real time application hindi katulad ng Struts at Hibernate, ngunit sa Spring maaari naming mabuo ang lahat ng mga layer.

Ito ay tungkol sa kung ano ang Spring Framework, ngunit paano ito binuo? Sa gayon, mayroong isang nakawiwiling kasaysayan sa likod nito. Hayaan mong tingnan ang kasaysayan at pinagmulan ng Spring Framework.

Noong Oktubre 2002, Rod Johnson , isang dalubhasa sa computer sa Australia, sumulat ng isang libro na pinamagatang Eksperto Isa-sa-Isang J2EE Disenyo at Pag-unlad. Sa aklat na ito, iminungkahi niya ang isang mas simpleng solusyon batay sa ordinaryong mga klase sa Java (POJO) at dependency injection. Sumulat siya ng higit sa 30,000 mga linya ng code ng imprastraktura na kasama ang isang bilang ng magagamit muli na mga interface ng java at mga klase para sa pagbuo ng aplikasyon. Noong Pebrero 2003, nagsimulang magtulungan sina Rod, Juergen at Yann sa proyekto ng Spring. Ang pangalang 'Spring' ay ibinigay dahil nangangahulugang isang sariwang pagsisimula pagkatapos ng 'Winter' ng tradisyunal na J2EE.

Ang sumusunod ay ang timeline na ipinakita tungkol sa mga pangunahing paglabas sa kasaysayan ng Spring:

Pinangalanan ito ng Interface 21, bilang isang sanggunian sa ika-21 siglo at inilabas sa ilalim ng lisensya ng Apache 2.0.
Ito ang kauna-unahang milyahe na inilabas. Mabilis na nagbago ang balangkas ng tagsibol mula nang mailabas ito. Sinuportahan ng Interface21 ang AspectJ parallely sa Spring Framework.
Ang mga Bagong Tampok ay idinagdag - extensible XML configs, suporta para sa Java 5 at mga pabagu-bagong wika, mga punto ng extension ng IoC at mga pagpapahusay ng AOP.
Ang mga bagong tampok ay idinagdag - suporta para sa Java 6 / JEE5, mga config ng anotasyon, bahagi ng auto-detection sa classpath at mga sumusunod na OSGi na bundle.
Ang mga bagong tampok ay idinagdag - suporta para sa reorganisadong sistema ng module, SpEL, JavaConfig, naka-embed na mga database, suporta sa REST at suporta para sa Java EE 6.
Ang Spring Data Commons Project ay pinakawalan. Mamaya sa 2012, iniwan ni Rod Johnson ang koponan ng Spring.
Ang lahat ng mga proyekto sa Spring ay inilipat sa Pivotal. Ang mga bagong tampok ay idinagdag - buong suporta para sa Java 8, websockets, mas mataas na mga dependency ng library ng third party, groovy DSL para sa mga kahulugan ng bean.
Ito ay katugma sa Java 6, 7 at 8, na may pagtuon sa mga pangunahing pagpipino at modernong kakayahan sa web.
Ito ang magiging panghuling henerasyonsa loob ng pangkalahatang mga kinakailangan sa system ng Spring 4. 4.3.8 ang kasalukuyang bersyon.

Bakit Spring Framework?

Nasa ibaba ang isang tsart na ibinigay na nagpapakita ng paghahambing sa pagitan ng Spring at iba't ibang mga Frameworks.

Nasa ibaba ang isang graph batay sa isang survey,hanggang Mayo 2016. Tulad ng makikita mo mula sa grap na ang Spring Framework ay napakapopular sa domain nito at patuloy na hinawakan ang posisyon nito sa tmula pa noong 2014.

Mga dahilan para sa Spring Framekatanyagan ng mga gawa

Sa pangkalahatan mayroong tatlong pangunahing mga kadahilanan para sa katanyagan ng Spring Framework.

  1. Pagiging simple
  2. Testablity
  3. Loose Coupling

Talakayin natin ang mga paksang ito sa mga detalye.

Pagiging simple: Ang Spring Framework ay simple sapagkat hindi nagsasalakay habang gumagamit ito ng mga modelo ng POJO at POJI.

  • POJO (Plain Old Java Objects): AAng klase ng Java na hindi kaisa ng anumang teknolohiya o anumang balangkas ay tinawag ' POJO ' .
  • POJI (Plain Old Java Interfaces): Ang isang interface ng Java na hindi isinama sa anumang teknolohiya o anumang gawa sa frame ay tinawag ' POJI ' .

Testablity : Para sa pagsusulat ng Skawayanapplication, ang server ay hindi sapilitan. Ngunit para sa mga struts at EJB application, kailangan mo ng isang server, kung nais mong subukan ang application. Maaaring mangailangan ito ng maraming mga pagbabago sa pinagmulan at upang matingnan ang mga pagbabagong iyon, sa bawat oras na kailangan mong i-restart ang server. Ito ay nagiging nakakapagod at umuubos ng oras. Kung sakaliSpring Framework, mayroon itong sariling lalagyan upang patakbuhin ang applimga cation

Loose Coupling: Ang Framework ng Spring ay maluwag na isinama dahil mayroon itong mga konsepto tulad ng Dependency Injection, AOP atbp. Ang mga tampok na ito ay makakatulong sa pagbabawas ng pagiging maaasahan at pagdaragdag ng modularity sa loob ng code. Hinahayaan itong maunawaan sa isang halimbawa.

Narito mayroon akong isang interface ng Bike na may isang pagsisimula () na pamamaraan. Ito ay karagdagang ipinatupad ng tatlong mga klase, lalo: Yamaha, Honda at Bajaj.

pampublikong interface Bike {public void start ()}

Dito lumilikha ang isang klase ng Rider ng isang bagay ng anumang klase na nagpapatupad ng interface ng Bike.

class Rider {Bike b public void setBike (Bike b) {this.b = b} void ride () {b.start ()}}

Ngayon ang lalagyan ng Spring Framework ay maaaring mag-iniksyon ng isang bagay ng anumang klase na nagpapatupad ng interface ng Bike, ayon sa kinakailangan. Ganito gumagana ang maluwag na pagkabit.

Arkitektura ng Spring Framework

Tulad ng nakikita mo mula sa nasa itaas na diagram na ang Spring ay may isang layered na arkitektura na binubuo ng iba't ibang mga module na mayroong kanilang sariling pag-andar. Ang mga modyul na ito ay pangkalahatan sa mga sumusunod na layer:

  • Core Container
  • Pag-access sa Data / Pagsasama
  • Web
  • AOP (Aspect oriented Programming)
  • Instrumentasyon
  • Pagsusulit.

Maaaring nagtataka ka, ano ang kalamangan ng Spring Framework na magkaroon ng layered na arkitektura? Alamin natin sa pamamagitan ng mga sumusunod na puntos:

  • Epektibong inaayos ng Spring Framework ang iyong mga bagay sa gitna ng baitang.
  • Hindi alintana ang kapaligiran sa runtime, maaaring magamit ang mga serbisyo sa pamamahala ng pagsasaayos ng Spring Framework sa anumang layer ng arkitektura.
  • Hawak ng Spring Framework ang pagsasaayos sa isang pare-pareho na paraan sa buong application. Tinatanggal nito ang pangangailangan na gumamit ng iba't ibang mga format ng file na pasadyang-pag-aari.
  • Ang Framework ng Spring ay dinisenyo sa isang paraan na ang mga application na binuo kasama nito ay depende sa ilang mga API nito hangga't maaari.
  • Dahil sa paggamit ng mga interface,Pinapabilis ng Spring Framework ang mahusay na kasanayan sa pagprogram.

Upang lubos na maunawaan kung ano ang Spring Framework, tingnan natin ang isang simpleng Application ng Spring Framework. Sundin ang limang simpleng mga hakbang:

Hakbang I: Paglikha ng klase ng Bean

package org.edureka.firstSpring public class StudentBean {String name public String getName () {return name} public void setName (String name) {this.name = name} public void displayInfo () {System.out.println ('Hello: '+ pangalan)}}

Hakbang II: Lumikha ng isang XML file

 

Hakbang III: Lumikha ng pangunahing klase

package org.edureka.firstSpring import org.springframework.context.ApplicationContext import org.springframework.context.support.ClassPathXmlApplicationContext public class StudentDemo {public static void main (String [] args) {ApplicationContext appCon = bagong ClassPathXmlApplicationContig.xxplicationContect.xxplicationContext.ContectContext.ContectContext.xxplicationContectContext. ) StudentBean factory = (StudentBean) appCon.getBean ('studentbean') factory.displayInfo ()}}

Hakbang IV: I-load ang mga file ng garapon

I-load ang sumusunod na mga file ng garapon.

  • commons-logging-1.2.jar
  • javax.servlet-api-3.1.0.jar
  • jstl-1.2.jar
  • spring-aop-4.2.2.RELEASE.jar
  • spring-beans-4.2.2.RELEASE.jar
  • spring-konteksto-4.2.2.RELEASE.jar
  • spring-core-4.2.2.RELEASE.jar
  • spring-expression-4.2.2.RELEASE.jar
  • spring-web-4.2.2.RELEASE.jar
  • spring-webmvc-4.2.2.RELEASE.jar

TANDAAN: Kung sakaling kailanganin mo ang mga file ng garapon, magkomento sa ibaba.

Hakbang V: Patakbuhin ang programa

Patakbuhin ang programa sa iyong server upang subukan ang application.

Inaasahan kong naipaliwanag ko nang malinaw, ano ang Framework ng Spring, kung paano ito eksaktong gumagana at para saan ito ginagamit. Sumangguni ka rin sa video sa 'What Is Spring Framework', kung saan inilalarawan ng magtutudlo ang mga paksang tinalakay sa blog na ito kasama ang praktikal na pagpapakita.

Ano ang Framework ng Spring sa Java | Tutorial sa Spring Framework | Edureka

Kung interesado kang matuto nang higit pa tungkol sa Spring Framework, pagkatapos ay manatiling nakasubaybay sa aking serye sa blog na ito dahil may darating akong ibang blog sa na magsasalita tungkol sa mas advanced na mga konsepto sa Spring.

Kung nais mong malaman ang Spring at nais na gamitin ito habang bumubuo ng mga aplikasyon ng Java, pagkatapos suriin ang ni Edureka, isang pinagkakatiwalaang kumpanya sa pag-aaral sa online na may isang network na higit sa 250,000 nasiyahan na mga nag-aaral na kumalat sa buong mundo.

May tanong ba sa amin? Mangyaring banggitin ito sa seksyon ng mga komento at babalikan ka namin.