1.ä¸å¡å端åå端çåºå«ï¼
2.后端工作是配源什么意思啊?
3.djangoå端ç¨ä»ä¹åï¼
4.javaå端主è¦åä»ä¹(javaå端工ä½)
ä¸å¡å端åå端çåºå«ï¼
å端å端ä»ä¹åºå«
ä¸ãå端å³ç½ç«åå°é¨åï¼æ¢å å«äºé¡µé¢è®¾è®¡ï¼åå å«äºé¡µé¢å®ç°ï¼ä¸»è¦æ¯æè¿è¡å¨PC端ï¼ç§»å¨ç«¯çæµè§å¨ä¸å±ç°ç»ç¨æ·æµè§çç½é¡µã
âå端âæ¯ç½ç«ä¸ç¨æ·ç´æ¥äº¤äºçé¨åï¼ä»åä½å°å¸å±åå°å¾ç大å°ï¼ä»¥åä¸æèåãå±ç¤ºæ åå¨æææççï¼è¿äºè§è§ä¸å¯è§çææå 容ï¼é½æ¯ç±æµè§å¨è§£æãå¤çã渲æç¸å ³HTMLãCSSãJavaScriptååç°åºæ¥çç»æã
ç®åæ¥è¯´ï¼ä½ å¨ä½¿ç¨ç½ç»è¿ç¨ä¸çå°çææç½ç«ä¸çå±ç¤ºé¡µé¢åä¾ä½ æä½ç使ç¨é¡µé¢é½å¯ä»¥ç§°ä¹ä¸ºå端ã
äºãITè¡ä¸ä¸çå端æ´å¤çæ¯ä¸æ°æ®åºè¿è¡äº¤äºä»¥å¤çç¸åºçä¸å¡é»è¾ãéè¦èèçæ¯å¦ä½å®ç°ç¸å ³åè½åä¿¡æ¯æ°æ®çååãå¹³å°ç稳å®ä¸æ§è½ççï¼ç®å说就æ¯ä¸ºå端å±ç¤ºçä¸å¡é»è¾åè½åå¤çã
å端æ¯ç¨æ·çä¸è§çä¸è¥¿ï¼æ¶åå°çé»è¾ä»£ç ä¹æ¯å端人åè¦å¤å¾å¤ã
å端å¼ååå端å¼åæä»ä¹åºå«?
å±ç¤ºæ¹å¼ä¸åï¼æç¨ææ¯ä¸åãå端å¼åç¨å°çææ¯å æ¬ä½ä¸éäºhtmlãcssãjavascriptãjqueryãBootstrapãNode.jsãAngularJsçææ¯ãå端å¼å以java为ä¾ä¸»è¦ç¨å°çæ¯å æ¬ä½ä¸éäºStrutsspringspringmvcHibernateHttpåè®®ServletTomcatæå¡å¨çææ¯ã
å端å¼åæ¯å建Web页é¢æappçå端çé¢åç°ç»ç¨æ·çè¿ç¨ãå端å¼åéè¿HTMLï¼CSSåJavaScript以åè¡çåºæ¥çåç§ææ¯ãæ¡æ¶ã解å³æ¹æ¡ï¼æ¥å®ç°äºèç½äº§åçç¨æ·çé¢äº¤äºã
å¨äºèç½çæ¼åè¿ç¨ä¸ï¼ç½é¡µå¶ä½æ¯Web1.0æ¶ä»£ç产ç©ï¼æ©æç½ç«ä¸»è¦å 容é½æ¯éæï¼ä»¥å¾çåæå为主ï¼ç¨æ·ä½¿ç¨ç½ç«çè¡ä¸ºä¹ä»¥æµè§ä¸ºä¸»ã
éçäºèç½ææ¯çåå±åHTMLãCSS3çåºç¨ï¼ç°ä»£ç½é¡µæ´å ç¾è§ï¼äº¤äºæææ¾èï¼åè½æ´å 强大ã
å端å¼ååå端å¼åçåºå«ï¼å±ç¤ºæ¹å¼ï¼Webå端å¼å主è¦åçæ¯ååç¨æ·çå¾è§çé¨åãå端å¼å主è¦åçæ¯é»è¾åè½ç模åï¼æ¯ç¨æ·ä¸å¯è§çã
ç¥è¯ç»æï¼Webå端å¼åæ¶åå°çç¥è¯ä¸»è¦æHtmlãCSSãavaScriptãAndroidå¼åãiOSå¼åãåç§å°ç¨åºå¼åææ¯çãWebå端代ç 主è¦å¨å®¢æ·ç«¯è¿è¡ï¼å端å¼å以Java为ä¾ï¼ä¸»è¦ç¨å°çæ¯StrutssprispringmvcHibernateHttpåè®®ServletTomcatæå¡å¨çææ¯ï¼é常éè¦æ ¹æ®ä¸å¡åºæ¯è¿è¡ä¸åè¯è¨çéæ©ãWebå端代ç 主è¦å¨æå¡ç«¯ï¼æå°æºæ¿æå¡å¨çï¼è¿è¡ã
å·¥ä½èè´£ï¼Webå端工ç¨å¸çå·¥ä½è责主è¦æ以ä¸ä¸å¤§é¨åï¼ãWebå端å¼åãï¼PC端å¼åä»»å¡ãã移å¨ç«¯å¼åãï¼å æ¬Androidå¼åãiOSå¼åååç§å°ç¨åºå¼åãã大æ°æ®åç°ç«¯å¼åãï¼ä¸»è¦æ¯åºäºå·²æçå¹³å°å®ææç»åæç»æçåç°ï¼åç°æ¹å¼é常ä¹æå¤ç§éæ©ï¼æ¯å¦å¤§å±å±ç¤ºçã
å端工ç¨å¸ç主è¦èè´£ä¹éä¸å¨ä¸å¤§é¨åï¼ãå¹³å°è®¾è®¡ãï¼ä¸»è¦æ¯æ建å端çæ¯ææå¡å®¹å¨ããæ¥å£è®¾è®¡ãï¼ä¸»è¦é对äºä¸åè¡ä¸è¿è¡ç¸åºçåè½æ¥å£è®¾è®¡ï¼é常ä¸ä¸ªå¹³å°æå¤å¥æ¥å£ï¼å°±åå«æ导èªå¹³å°è®¾ææ°ç¨ååç¨ä¸¤å¥æ¥å£ä¸æ ·ããåè½å®ç°ãï¼å®æå ·ä½çä¸å¡é»è¾å®ç°ã
å端å¼ååå端å¼åæä»ä¹åºå«å端å¼åä¸å端å¼åçåºå«ï¼
1ãå端å¼å主è¦åçæ¯ç¨æ·æè½çå°çå端å±ç¤ºçé¢ï¼å端å¼å主è¦åçæ¯é»è¾åè½ç模åï¼æ¯ç¨æ·ä¸å¯è§çã
2ãå端å¼å人åéè¦ç²¾éJSï¼è½çç»åºç¨JQueryï¼æCSSï¼è½çç»è¿ç¨è¿äºç¥è¯ï¼è¿è¡äº¤äºææçå¼åã
1ãWebå端:å端ææ¯å æ¬4个é¨å:å端ç¾å·¥ãæµè§å¨å ¼å®¹ãCSSãHTML"ä¼ ç»"ææ¯ä¸AdobeAIRãGoogleGears,以åæ¦å¿µæ§è¾å¼ºç交äºå¼è®¾è®¡,èºæ¯æ§è¾å¼ºçè§è§è®¾è®¡çã
2ãWebå端ï¼å端æ´å¤çæ¯ä¸æ°æ®åºè¿è¡äº¤äºä»¥å¤çç¸åºçä¸å¡é»è¾ãéè¦èèçæ¯å¦ä½å®ç°åè½ãæ°æ®çååãå¹³å°ç稳å®æ§ä¸æ§è½çã
ç½é¡µè®¾è®¡å端åå端çåºå«ï¼è¶è¯¦ç»è¶å¥½ã详ç»ç解éä¸ä¸webåå端çåºå«
1ã
åå°ï¼åç°ç»ç¨æ·çè§è§ååºæ¬çæä½ã
åå°ï¼ç¨æ·æµè§ç½é¡µæ¶ï¼æ们çä¸è§çåå°æ°æ®è·å¨ãåå°å æ¬å端ãå端ã
å端ï¼å¯¹åºæ们åçhtmlãcssãjavascriptçç½é¡µè¯è¨ä½ç¨å¨å端ç½é¡µã
å端ï¼å¯¹åºjspãjavaBeanãdaoå±ãactionå±åserviceå±çä¸å¡é»è¾ä»£ç ãï¼å æ¬æ°æ®åºï¼
为ä»ä¹jspæ¯å端å¢ï¼ä¸»è¦æ¯jspçè¿è¡åçæ¯å¨tomcatæå¡å¨è¿è¡çã
2ã
(1)javawebæ¯javaå¼åä¸çä¸ä¸ªæ¹åjavaææå®åçï¼æwebçï¼æåµå ¥å¼ççãjavawebå°±æ¯ææwebæ¹åçï¼javawebå两åï¼ä¸åæ¯æå¡å¨ç«¯å«å端ï¼å¦ä¸åå«å端ï¼ä¹å°±æ¯webå端ãå端就æ¯ç¨æ·è½çå°çé¨åï¼æ¯å¦æ·å®ç½ï¼qq空é´ï¼ç½é¡µä¸ä½ è½çå°çé½æ¯webå端åçãå端åçå°±æ¯ä¸ºå端çå±ç¤ºä¸å¡é»è¾åè½åå¤çã
(2)javawebå æ¬äºjspï¼servelt以åä¸äºæ¡æ¶æ¯å¦springï¼structs以åä¸æ°æ®åºäº¤äºçç¥è¯ï¼å½ç¶ä¹æ¶åå°äºhtmlï¼cssçå端ææ¯ï¼ä½æ¯æ´ä¾§éäºå端çå¼åãwebå端主è¦æ¯htmlï¼cssï¼javascriptä¹ç±»çææ¯ã
jawebæ¯javaeeçä¸ä¸ªæ¹åï¼Javawebï¼ç±å端ãJava代ç ãåæ°æ®åºä¸ä¸ªå¤§æ¹é¢ç»æï¼å端åªæ¯å ¶ä¸ä¹ä¸ã
(3)å¨æ们çæºåä¸çå°ççé¢ï¼å®è£ çç¨åºï¼ç»ç¨æ·ççï¼æä½çå°±æ¯å端ï¼èä½ çä¸å°çï¼å¸®ä½ ä¿åç½ç»æ¸¸ææ°æ®ï¼ä¿ååºç¨æ°æ®ï¼å¤çæ°æ®çå°±æ¯å端ï¼æå¡å¨ï¼ãæ¯å¦è¯´ï¼æ们å¨ç¨çç¥ä¹å°±æ¯å端ï¼èä¿åè¿ä¸ªé®é¢ï¼è¿ææè¿ä¸ªé®é¢æ¨éç»ä½ çå°±æ¯å端ã
äºãå®ä¹ä¸å
ä¸è¬æ¥è¯´ï¼æ们å°ç½ç«å为å端åå端ãå端主è¦è´è´£é¡µé¢çå±ç¤ºï¼å端åæ¯ä¸å¡é»è¾çå®ç°ã
1ãWebå端:
顾åæä¹æ¯æ¥åWebçå端çãè¿éæ说çå端æ³æWebå端ï¼ä¹å°±æ¯å¨Webåºç¨ä¸ç¨æ·å¯ä»¥çå¾è§ç¢°å¾ççä¸è¥¿ãå æ¬Web页é¢çç»æãWebçå¤è§è§è§è¡¨ç°ä»¥åWebå±é¢ç交äºå®ç°ã
2ãWebå端ï¼
å端æ´å¤çæ¯ä¸æ°æ®åºè¿è¡äº¤äºä»¥å¤çç¸åºçä¸å¡é»è¾ãéè¦èèçæ¯å¦ä½å®ç°åè½ãæ°æ®çååãå¹³å°ç稳å®æ§ä¸æ§è½çã
ä¸ãéè¦ææ¡çææ¯ä¸å
1ãWebå端ï¼
ç²¾éJSï¼è½çç»åºç¨JQueryï¼æCSSï¼è½çç»è¿ç¨è¿äºç¥è¯ï¼è¿è¡äº¤äºææçå¼åã
(1)ç²¾éHTMLï¼è½å¤ä¹¦åè¯ä¹åçï¼ç»ææ¸ æ°ï¼æç»´æ¤çHTMLç»æï¼
(2)ç²¾éCSSï¼è½å¤è¿åè§è§è®¾è®¡ï¼å¹¶å ¼å®¹ä¸çæ¿è®¤ç主æµæµè§å¨ï¼
(3)çæJavaScriptï¼äºè§£ECMAScriptåºç¡å 容ï¼ææ¡1-2ç§jsæ¡æ¶ï¼å¦JQueryï¼
(4)对常è§çæµè§å¨å ¼å®¹é®é¢ææ¸ æ°çç解ï¼å¹¶æå¯é ç解å³æ¹æ¡ï¼
(5)对æ§è½æä¸å®çè¦æ±ï¼äºè§£yahooçæ§è½ä¼å建议ï¼å¹¶å¯ä»¥å¨é¡¹ç®ä¸ææå®æ½ã
2ãWebå端ï¼
å端å¼å人åï¼ä¼åJava代ç ï¼ä¼åSQLè¯å¥ï¼è½åç®åçæ°æ®åºè®¾è®¡ï¼ä¼SpringåiBatisï¼æä¸äºè®¾è®¡æ¨¡å¼çã
(1)ç²¾éjspï¼servletï¼javabeanï¼JMSï¼EJBï¼Jdbcï¼Flexå¼åï¼æè 对ç¸å ³çå·¥å ·ãç±»åºä»¥åæ¡æ¶é常çæï¼å¦Velocityï¼Springï¼Hibernateï¼iBatisï¼OSGIçï¼å¯¹Webå¼åç模å¼æè¾æ·±çç解ï¼
(2)ç»ä½¿ç¨oracleãsqlserverãmysqlç常ç¨çæ°æ®åºç³»ç»ï¼å¯¹æ°æ®åºæè¾å¼ºç设计è½åï¼
(3)çæmaven项ç®é 置管çå·¥å ·ï¼çætomcatãjbossçåºç¨æå¡å¨ï¼åæ¶å¯¹å¨é«å¹¶åå¤çæ åµä¸çè´è½½è°ä¼æç¸å ³ç»éªè ä¼å èèï¼
(4)ç²¾éé¢å对象åæå设计ææ¯ï¼å æ¬è®¾è®¡æ¨¡å¼ãUML建模çï¼
(5)çæç½ç»ç¼ç¨ï¼å ·æ设计åå¼å对å¤APIæ¥å£ç»éªåè½åï¼åæ¶å ·å¤è·¨å¹³å°çAPIè§è设计以åAPIé«æè°ç¨è®¾è®¡è½åã
åãwebå端åå端æ¯æä¹è¿æ¥çï¼
1ãwebæå¡å¨ï¼apacheãtomcatçï¼ï¼ç½ç»åè®®ï¼æè phpçé½å¯è½ï¼ä½javawebå¯ä»¥ç¡®å®å端就æ¯javaï¼webåç«¯å ¶å®é½ä¸æ ·ã
å端åJavawebçåºå«æ´å¤çå¨äºä¸ä¸ªä¸»è¦è´è´£å端ç设计åææï¼èJavawebæ´ä¸æ³¨äºå端çå 容ã
3ãåå¼å§ä»äºwebå¼åæ¶ï¼é¦å è¦éåå¦ä¹ æ¹åï¼çæ¯æ³ä»äºå端é¨åè¿æ¯å端ç¨åºé¨åãå½ç¶å¨å·¥ä½çåæï¼å°±ä¸ä¼åçé£ä¹ç»è´äºãåå端å°åæä¹ä¼æä¸äºå端çææ¯ï¼åä¹ï¼å端ä¹æ¯ã
å ãå¦ä¹ Webå端å¼åé½éè¦ææ¡åªäºæè½ï¼
1ãå¦ä¹ htmlãè¿ä¸ªæ¯æç®åç,ä¹æ¯æåºç¡ç.è¦çç»ææ¡divãformtableãulliãpãspanãfontè¿äºæ ç¾,è¿äºé½æ¯æ常ç¨ç,ç¹å«æ¯divåtable,divç¨äºå¸å±ãtableä¹å¯ä»¥ç¨äºå¸å±,ä½æ¯ä¸çµæ´»,åºæ¬tableæ¯ç¨æ¥åæ°æ®æ交éã
2ãå¦ä¹ cssãè¿é说çcssä¸å æ¬css3,ä¸è¬æ们çå°webå端å¼åå·¥ç¨å¸çè¦æ±éé¢,æä¸ä¸ªä¼ä½¿ç¨css+htmlæè css+divæ¥è¿è¡çé¢å¸å±,æ以cssæ¯ç¨äºè¾ å©htmlæ¥å¸å±åå±ç¤ºç,æ们称ä¹ä¸ºâcssæ ·å¼â,为ä»ä¹ä¼è¯´css+divå¢?å 为æä¸é¢è¯´äºdivå°±æ¯html主è¦ç¨äºå¸å±çä¸è¥¿,æ以divå°±æ¯æ ¸å¿ææ¡çä¸è¥¿!é£ä¹cssè¯å®å¿ é¡»è¦é ådivæ¥ä½¿ç¨æ好.cssè¦çç»ææ¡floatãpositionãwidthãheightï¼ä»¥å对äºçæ大æå°ãä¼ä½¿ç¨ç¾åç¾ãoverflowãmarginãpaddingçç,è¿äºé½æ¯è·å¸å±æå ³ç³»çæ ·å¼,ä¸ç¹è¦ææ¡ã
3ãå¦ä¹ jsãå¯è½å两个大家è§å¾è¿è¿çå»,çå°jså°±å»ç¼äº,å ¶å®å§,jså ¥é¨å¾ç®åç,ä¸éè¦ä¼å¾å¤ä¸è¥¿ç,åªè¦ä¼æ ¹æ®æ个idãæè nameæ¿å°ç½é¡µdomæè æ ·å¼ãæè å¼,ç¶åä¼ç»æ个idæè nameçå ç´ æ ç¾èµå¼ãæè 追å æ°æ®ã追html,è¿ä¸ªæ¯è·æ°æ®æå ³ç³»çæä½,ç¶åæ°æ®é»è¾å¤æ,æææ¹é¢ç,æ éå°±æ¯è·³è½¬ãå¼¹æ¡ãéèä»ä¹ç,æè¿äºå ¨é¨ç»åå ¶ä»å°±æ¯å®é ç¨éäº,代ç ä¸ç¹é½ä¸é¾,ä¼äºè¿äºåºç¡js,å ¶ä»çç´æ¥ç¾åº¦å°±å¥½äº.ç¶åçå¤äº,ç¨å¤äº,å°±ä»ä¹é½ä¸æ¯é®é¢äºã
4ãå¦ä¹ jqueryãjqueryæ¯ç¸å½äºæjså°è£ äºä¸å¥çä¸ä¸ªjsæ件,ç®çå°±æ¯æä½èµ·æ¥æ´æ¹ä¾¿,代ç åçæ´å°,jqueryå ¥é¨ä¹å¾ç®å,é£äºæ¯å ¥é¨éè¦å¦çåjsä¸æ ·,åªæ¯æ¢æäºjqç代ç .å ¶ä»çä¸æ ·ç¾åº¦å°±å¤äºã
5ãæ好ä¼ç¹åå°è¯è¨,æ¯å¦javaãphp,为ä»ä¹å¢?å 为åå°çé¢çæ°æ®é½æ¯ä»åå°æ¥ç,å¦æä¼ç¹åå°ä»£ç ,å°±ç¥éæä¹è·åå°äº¤äºæ°æ®æ¯æ好ç,è¿æ ·è约æ¶é´,ä¹å¯ä»¥è®©å端代ç æ´è§è.ä¸ç¶å¯è½å ä¸ºä½ çåæ³åå端ç»æ¥çæ°æ®ä¸è½ç»åä¸,é£ä¹å端代ç åå¾éæ°å,é£å°±æ´å 麻ç¦äºã
6ãå¦ä¹ css3+html5,å¯è½è¿ä¸ªå¯¹äºæ´æ¥æçæ°äººæ¥è¯´æç¹å°é¾ï¼éè¦è¾å¼ºç代ç ç¥è¯ä¸ç»éªï¼ä½æ¯å¦æä½ ä»¬æ¯åå¤ä¸é¨æå端,é£ä¹æ好è¿æ¯å¦ä¸ä¸ï¼è¿æ ·å¯¹äºå°æ¥çå·¥ä½ä¼ææ´å¤§ç帮å©ã
ä¸ãä»äºJavaå端å¼åé½éè¦ææ¡åªäºæè½ï¼
对äºåå¦Java并ä¸æå¿äºå端å¼åçåå¦æ¥è¯´ï¼éè¦éç¹å ³æ³¨ä»¥ä¸å 个é¨åï¼
1ãåºç¡ï¼æ¯å¦è®¡ç®æºç³»ç»ãç®æ³ãç¼è¯åççç
2ãWebå¼åï¼ä¸»è¦æ¯Webå¼åç¸å ³çå 容ï¼å æ¬HTML/CSS/jsï¼å端页é¢ï¼ãServlet/JSPï¼J2EEï¼ä»¥åMySQLï¼æ°æ®åºï¼ç¸å ³çç¥è¯ãå®ä»¬çå¦ä¹ 顺åºåºè¯¥æ¯ä»åå°åï¼å æ¤æå å¦ä¹ çåºè¯¥æ¯HTML/CSS/JSï¼å端页é¢ï¼ãè¿æä¸äºå段æ¡æ¶æ¯å¦easyui,è¿æjs,jqueryçææ¯ã
3ãJ2EEï¼ä½ éè¦å¦ä¹ çæ¯Servlet/JSPï¼J2EEï¼é¨åï¼è¿é¨åæ¯Javaå端å¼åå¿ é¡»é常精éçé¨åï¼å æ¤è¿é¨åæ¯è¿ä¸é¨åä¸æéè¦è±ç²¾åçãå ³äºServlet/Jspé¨åè§é¢çéæ©ï¼ä¸çæ¯è¾è®¤å¯é©¬å£«å µçè§é¢ã4ãæ°æ®åºï¼ä½ éè¦å¦ä¼ä½¿ç¨æ°æ®åºï¼mysqlæ¯ä¸ªä¸éçå ¥é¨éæ©ï¼èä¸Javaé¢åé主æµçå ³ç³»åæ°æ®åºå°±æ¯mysqlãè¿é¨åä¸è¬å¨ä½ å¦ä¹ Servlet/Jspçæ¶åï¼å°±ä¼æ¥è§¦å°çï¼å ¶ä¸çJDBCé¨åå°±æ¯æ°æ®åºç¸å ³çé¨åãä½ ä¸ä» è¦å¦ä¼ä½¿ç¨JDBCæä½æ°æ®åºï¼è¿è¦å¦ä¼ä½¿ç¨æ°æ®åºå®¢æ·ç«¯å·¥å ·ï¼æ¯å¦navicatï¼sqlyogï¼äºéä¸å³å¯ã
5ãå¼åæ¡æ¶ï¼ç®åæ¯è¾ä¸»æµçæ¯SSMæ¡æ¶ï¼å³springãspringmvcãmybatisãä½ éè¦å¦ä¼è¿ä¸ä¸ªæ¡æ¶çæ建ï¼å¹¶ç¨å®ä»¬ååºä¸ä¸ªç®åçå¢å æ¹æ¥çWeb项ç®ãä½ å¯ä»¥ä¸ç解é£äºé ç½®é½æ¯ä»ä¹å«ä¹ï¼ä»¥å为ä»ä¹è¦è¿ä¹åï¼è¿äºççåé¢ä½ å»äºè§£ãä½ä½ ä¸å®è¦å¯ä»¥å¿«éçå©ç¨å®ä»¬ä¸ä¸ªæ建åºä¸ä¸ªWebæ¡æ¶ï¼ä½ å¨æ建SSMçè¿ç¨ä¸ï¼å¯è½ä¼ç»å¸¸æ¥è§¦å°ä¸ä¸ªå«mavençå·¥å ·ãè¿ä¸ªå·¥å ·ä¹æ¯ä½ 以åå·¥ä½å½ä¸å ä¹æ¯å¿ é¡»è¦ä½¿ç¨çå·¥å ·ï¼æä»¥ä½ å¨æ建SSMçè¿ç¨ä¸ï¼ä¹å¯ä»¥é¡ºä¾¿äºè§£ä¸ä¸mavençç¥è¯ãå¨ä½ ç®åè¿ä¸ªé¶æ®µï¼ä½ åªéè¦å¨ç½ç»ä¸äºè§£ä¸ä¸mavenåºæ¬ç使ç¨æ¹æ³å³å¯ï¼ä¸äºé«ç«¯çç¨æ³éçä½ å·¥ä½ç»éªçå¢å ï¼ä¼éæ¸æ¥è§¦å°çã
6ãä½ éè¦å»çä¸äºJDKä¸çç±»çæºç ï¼ä¹å æ¬ä½ æ使ç¨çæ¡æ¶çæºç ãè¿äºæºç è½çæçåææ¯ï¼ä½ å¿ é¡»å¯¹è®¾è®¡æ¨¡å¼é常äºè§£ãå¦åçè¯ï¼ä½ çæºç çè¿ç¨ä¸ï¼æ°¸è¿ä¼æè¿æ ·é£æ ·ççé®ï¼è¿æ®µä»£ç 为ä»ä¹è¦è¿ä¹åï¼ä¸ºä»ä¹è¦å®ä¹è¿ä¸ªæ¥å£ï¼å®çèµ·æ¥å¥½åå¾å¤ä½ï¼ç±æ¤ä¹å¯ä»¥çåºï¼è¿äºå¦ä¹ çè¿ç¨æ¯ç¯ç¯ç¸æ£çï¼å¦æä½ ä»»ä½ä¸ä¸ªé¶æ®µæä¸æ¥äºï¼é£ä¹ä½ å°±ççè·ä¸ä¸äºï¼æè 说æ¯ä¸æ¥æ ¢æ¥æ¥æ ¢ãæ»èè¨ä¹ï¼è¿ä¸ªé¶æ®µï¼ä½ éè¦åçæ¯æ·±å ¥äºè§£Javaåºå±åJavaç±»åºï¼æ¯å¦å¹¶åé£æ¬ä¹¦å°±æ¯Java并åå java.concurrentçå 容ï¼ï¼ä¹å°±æ¯JVMåJDKçç¸å ³å 容ãèä¸è¿è¦æ´æ·±å ¥çå»äºè§£ä½ æ使ç¨çæ¡æ¶ï¼æ¹å¼æ¯è¾æ¨èçæºç æè çå®æ¹ææ¡£ã
å¸æ对æ¨ææ帮å©ï¼~
后端工作是什么意思啊?
后端工作指开发人员的工作重心是在应用程序运行的服务器端,负责处理客户端(包括网页、码笔移动端等)发送的记后请求,并进行相关处理后返回结果。端业歪歪踢人源码如处理数据库读写、配源业务逻辑实现、码笔接口开发等。记后后端工作需要掌握多种编程语言和技术,端业如Java、配源Python、码笔SQL、记后土拨鼠代理源码NoSQL数据库等。端业 独立完成一个完整的配源后端项目需要深入理解整套应用的结构,考虑到性能、码笔可扩展性等因素,记后且与前端和其他开发人员进行有效的网站灯笼源码协作。
后端工作充满了挑战,任何小的过失都可能导致系统崩溃;但是,后端工作也是任何应用程序成功运行的关键。设计和开发一个稳定、可扩展的grpc库源码后端结构将会改善用户体验、安全性和稳健性。另外,后端工作也要紧密关注开发流程,考虑到代码管理、版本控制、macdkdj组合源码自动发布等,以便让代码的重复利用和扩展更加容易。总之,后端工作的重要性不言而喻。
成为一个合格的后端开发人员并非易事,需要具备扎实的编程能力、沉稳的心态、敏锐的思维能力。初学者应该尽可能地了解底层数据结构与算法,掌握至少一门编程语言和数据库系统。另外,加入开放源码社区是一个在成长过程中积累重要经验的好办法。作为后端工作的开发人员,你不仅需要对现有技术有扎实而建立的基础知识,还要随时跟进最新技术,并提供和维护优质的服务。
djangoå端ç¨ä»ä¹åï¼
导读ï¼ä»å¤©é¦å¸CTOç¬è®°æ¥ç»åä½åäº«å ³äºdjangoå端ç¨ä»ä¹åçç¸å ³å 容ï¼å¦æè½ç¢°å·§è§£å³ä½ ç°å¨é¢ä¸´çé®é¢ï¼å«å¿äºå ³æ³¨æ¬ç«ï¼ç°å¨å¼å§å§ï¼ç¨Djangoå¼åwebå端,ççæ¯SpringBootè¦çäºå?ç¨Djangoå¼åwebå端并ä¸æ¯SpringBootè¦çäºã
spring好å¤å°±æ¯å½ä½ éè¦æ¶æ¯éåï¼æè æå¡æ³¨ååç°ï¼é ç½®ä¸å¿çççæ¶åé ç½®æ¯è¾æ¹ä¾¿ï¼å¦æä¸èèå¾®æå¡ï¼springbootä¹åªæ¯æ¯javaä¸çéé¢å ¶ä»çæ¹ä¾¿èå·²ã
èpythonä¸çæ³è¦éæä¸è¿°å 个åè½å¹¶ä¸è¾¾å°ä¸å®çç产级å«æ¯è¦æ¯spring麻ç¦çå¤ã
ä»æ§è½ä¸è®²ï¼çè¿ä¸äºæµè¯ï¼springå 为æ¿ç¨æ·åäºå¾å¤ç±»åæ¨æçäºæ ï¼çº¯æ§è½å¨javaä¸çä¹å°±æ¯ç¨çã
pythonå¦æä¸æ¯ä¸å¼å§å°±ä¸pypyï¼é£å°±æ¯ä¸ä¸ªjitçæ§è½å·®è·ï¼å¤§æ¦å°±æ¯ååå§ã
æå讨论ä¸é对软件å¼åã
javaå®å°±æ¯æ¶è代ç ï¼å®æåæ ·åè½è°éè¦åç代ç æ´å¤å°±æ´èæ¶ï¼æ¾ç¶goæ¯è¦å°äºä¸å°ä»£ç ã
èæçç解ä¸ï¼pythonéè¦1å®æçä¸è¥¿goå¾1.5以ä¸javaå°2以ä¸ï¼æ¾ç¶èè´¹çæ¶é´ä¹å°±æ¯åºäºè¿ä¸ªæ¯ä¾ã
对äºä¸ªäººå¿æºè´æ èå´å ç项ç®ï¼ææ¯æ²¡ä»ä¹çç±éæ©javaçï¼å 为代ç è¡æ°å°±æ¯æ¶é´ï¼æ¶é´å°±æ¯éé±ã
è对äºä¸åæµè¯è®¾è®¡ç¨çç项ç®ï¼è¿é javaä¹èä¸ä½ãæ以å§ï¼å¦æä¸æ¯ä¸ªå¤§é¡¹ç®ï¼æè§å¹¶ä¸å¤ªéè¦javaåºé©¬ä»¥åï¼é¤éæ¯æäºå¿ ç¶è¦éæ©çåå ã
è³äºå¤§é¡¹ç®ï¼è¿äºæè¿æ²¡ç没å¥æ¦å¿µï¼å¤§è´ç»è®¡äºä¸ä»¥å项ç®çææ代ç ï¼ä¸ç®æ³¨é第ä¸æ¹åºï¼ç°å¨å ¬å¸ä¸¤ä¸å¹´ç项ç®å¤ç«¯ååå°å èµ·æ¥ä¹å°±æ¯æ¥ä¸è¡ãè¿ä¹å°±ç®æ¯æ碰å°ç°å¨è§æ¨¡æ大çäºã
å©ä¸çæ¾ç»æ个åä¸é¡¹ç®åäºä¸ä¸ªæå·®ä¸å¤ååå°ä¹å°±æ¯ä¸ä¸å¤è¡ã
æå说ç»è®ºå§ï¼é¡¹ç®å°ï¼å¨æçï¼æå ¥å°ï¼è¿æ¯å°±djangoå§ã
djangoæ¡æ¶ä»ç»
Djangoæ¯é«æ°´åçPythonç¼ç¨è¯è¨é©±å¨çä¸ä¸ªå¼æºæ¨¡åï¼è§å¾ï¼æ§å¶å¨é£æ ¼çWebåºç¨ç¨åºæ¡æ¶ï¼å®èµ·æºäºå¼æºç¤¾åºã使ç¨è¿ç§æ¶æï¼ç¨åºåå¯ä»¥æ¹ä¾¿ãå¿«æ·å°å建é«åè´¨ãæç»´æ¤ãæ°æ®åºé©±å¨çåºç¨ç¨åºãè¿ä¹æ£æ¯OpenStackçHorizonç»ä»¶éç¨è¿ç§æ¶æè¿è¡è®¾è®¡ç主è¦åå ã
å¦å¤ï¼å¨Djangoæ¡æ¶ä¸ï¼è¿å å«è®¸å¤åè½å¼ºå¤§ç第ä¸æ¹æ件ï¼ä½¿å¾Djangoå ·æè¾å¼ºçå¯æ©å±æ§ãDjango项ç®æºèªä¸ä¸ªå¨çº¿æ°é»Webç«ç¹ï¼äºå¹´ä»¥å¼æºçå½¢å¼è¢«éæ¾åºæ¥ã
Djangoæ¡æ¶çæ ¸å¿ç»ä»¶æï¼
1ãç¨äºå建模åçå¯¹è±¡å ³ç³»æ å°ã
2ã为æç»ç¨æ·è®¾è®¡è¾å¥½ç管ççé¢ã
3ãURL设计ã
4ã设计è å好ç模æ¿è¯è¨ã
5ãç¼åç³»ç»ã
Django(åé³ï¼[`dÉ¡?])æ¯ç¨pythonè¯è¨åçå¼æºwebå¼åæ¡æ¶(opensourcewebframework)ï¼å®é¼å±å¿«éå¼å,并éµå¾ªMVC设计ãDjangoéµå®BSDçæï¼å次åå¸äºå¹´7æ,并äºå¹´9æåå¸äºç¬¬ä¸ä¸ªæ£å¼çæ¬1.0ã
Djangoæ ¹æ®æ¯å©æ¶ççµå£«é³ä¹å®¶DjangoReinhardtå½åï¼ä»æ¯ä¸ä¸ªåæ®èµäººï¼ä¸»è¦ä»¥æ¼å¥åå®ä¸ºä¸»ï¼è¿æ¼å¥è¿å°æç´çã
ç±äºDjangoå¨è¿å¹´æ¥çè¿ éåå±ï¼åºç¨è¶æ¥è¶å¹¿æ³ï¼è¢«èåITå¼åæå¿SDTimesè¯é为SDTimesï¼ä½åâAPIãåºåæ¡æ¶âå类第6ä½ï¼è¢«è®¤ä¸ºæ¯è¯¥é¢åç佼佼è ã
django+vueåå端å离项ç®é¨ç½²
å端ç¨çdrfï¼ä½¿ç¨çæ¯uwsgi+nginx
è¿å ¥æå¡å¨é¡¹ç®æ件ç®å½ä¸ï¼æçdjango项ç®æ¾å¨äºâ/usr/myProjects/âç®å½ä¸äºãå¨manage.pyå级ç®å½ä¸å建uwsgi.iniæ件ï¼é ç½®å¦ä¸ï¼
æµè¯ææå½ä»¤ï¼
å¦æ访é®ï¼xxx.xxx.xxx.xx:æåï¼åuwsgi.inié ç½®æå
æçnginx.confæå¨ä½ç½®æ¯â/etc/nginx/nginx.confâ
é ç½®æ件å¦ä¸ï¼
1ã第ä¸è¡
主è¦å°±æ¯ç»nginxå æéï¼vueé¨ç½²å使ç¨historyè·¯ç±æ¶ä¼å»æå°ååé¢çâ#âå·ï¼æå é¨ç½²åä¸å æéä¼æbugã
2ãå¦é ç½®æ示ï¼æ两个Serverï¼åå«é¨ç½²äºå端æå¡ï¼åå端æå¡ï¼å¼å¾æ³¨æçæ¯ä¸¤ä¸ªServerç¨çæ¯åä¸ä¸ªæå¡å¨ï¼çå¬ç端å£ä¸åã
3ãvueé¨ç½²éè¦æ³¨æçæ¯åå代çå°åï¼
以ååé¢ç端å£é®é¢
4ãå端çServeréè¦æ³¨ælocationä¸çuwsgi_passåé¢ç端å£å·è¦åuwsgi.iniä¸é çç¸åï¼å¦åçå¬ä¸å°
5ãå端跨åé®é¢ãå¦æéå°è·¨åéè¦èªå·±ç½ä¸æ¾é ç½®ï¼æç没éå°ï¼å¯è½æ¯å 为æå¨djangoçsettingsä¸é ç½®äºè·¨åã
6ãdjango-suitåå°ç®¡çæ ·å¼å´©äºï¼éè¦æ¹ï¼ä½æ¯apiå¯ä»¥æ£å¸¸è®¿é®ï¼è¿ä¸ªæ空å说
7ãæå¼å§åå°çå¬çæ¯ç«¯å£ï¼vueå端çå¬çæ¯ç«¯å£ï¼è¿æ ·å端æ¾ç¤ºå¥½çãç¶èé®é¢åºç°äºï¼è½ç¶åå°apiå¯ä»¥æ£å¸¸è®¿é®ï¼vueçæ¬å°å¼åç¯å¢ä¹è½æ£å¸¸è¿è¡ä¸æåãå¾çèµæºåæ¾ç¤ºæ£å¸¸ï¼ä½æ¯å端vueæå 线ä¸é¨ç½²åï¼æåä¿¡æ¯æ¾ç¤ºæ£å¸¸ï¼å¾çä¿¡æ¯ç¼ºå¤±ç«¯å£ï¼å¯¼è´æ¾ç¤ºä¸åºæ¥ã为å¾æ¹ä¾¿æéæ©äºå端çå¬ç«¯å£ï¼å端çå¬ï¼é¨ç½²åæ¾ç¤ºæ£å¸¸ãåå ä¸å¤ªæ¸ æ¥///////æ空å说å§ã
8ãä¸è¦é®æ为å¥é½åå端å离äºè¿é¨ç½²å°ä¸ä¸ªæå¡å¨ä¸ï¼ç©·ï¼èä¸åªæ¯æµè¯ï¼æ²¡å¿ è¦
9ãæ¤æä» éåå ¥é¨
å ³äºdjangoåå°adminï¼suitï¼ç¼ºå¤±çä¿®æ¹ï¼åèï¼djangoä¸æç½ï¼ï¼
å¨ç¯å¢ä¸è¿å ¥é¡¹ç®ç®å½ï¼éè¦æ¶écssæ ·å¼ï¼å¨ç»ç«¯è¾å ¥å½ä»¤ï¼
æ¥ä¸æ¥ä½ å°±ååç°staticæ件ä¸å å«äºcssæ件ï¼æ¤æ¶åæå¼ç½ç«ï¼æ ·å¼æ¾ç¤ºæ£å¸¸
uWSGIéè¿xxx.iniå¯å¨åä¼å¨ç¸åç®å½ä¸çæä¸ä¸ªxxx.pidçæ件ï¼éé¢åªæä¸è¡å 容æ¯uWSGIç主è¿ç¨çè¿ç¨å·ã
å ³äºuwsgi,è¿å ¥åå±ç®å½ä¸
æè®
è·åä¸å°ç¯å¢ï¼é£å°±æå®ç¯å¢
å¦å¤ï¼è®°å¾éå¯uwsgiï¼éå¯Nginxï¼å®å¨ä¸è¡å°±å æçå¬ç端å£killæåéå¯
æ´åå 端å£ï¼fuser-k/tcp
netstat-aptnå½ä»¤è¡ï¼æ¥çææå¼å¯ç端å£å·
netstat-ntlp|grepæ¥çå ·ä½ç端å£æ¯å¦ä½¿ç¨
ps-ef|grepuwsgiæ¥çæ¯å¦æuwsgi端å£åå¨
Djangoæ¯ä¸æ¯ä¸ç¨ååå°çï¼ç¨èªå¸¦çadmin管çæ°æ®åºå°±è¡äºæéå离æ¯è¾éº»ç¦ï¼é»è®¤ä¸åå¨åªè¯»ç®¡çåå¸å·ãèªå·±å®ç°åªè¯»å¸å·æ¯è¾tricky
æç´¢åè½ä¸å¼ºå¤§ï¼èªå·±å®ç°é«çº§æç´¢å¾tricky
人家ç模æ¿å°±æ²¡èèè¿è®©ä½ éç¨ï¼çæ¬å级åä½ èªå®ä¹è¿ç模æ¿å¯è½éè¦æåæ´mergeå°æ°ç模æ¿é
å端ç¨äºDjangoè¿éè¦åç¬çå端æ¡æ¶åå ³äºå端ç¨åºååå端ç¨ä»¥ä¸æ¡æ¶ï¼
1ãç¨Dreamweaveræè ç½é¡µæ¥çæºä»£ç ã
2ãbootstrap对ååºå¼çæ¯æ以åè¯å¥½çä½éª
3ãmetronic/adminLTEè¿ä¸ªæ¡æ¶ç代ç æ´å¤çæ¯å±äºç²ååï¼å°åç§ä¸åç第ä¸æ¹åºçå端代ç ç²åèµ·æ¥ã
4ãextjsç³»åãè¿ä¸ªæ¯å端é¢åçåºç¶å¤§ç©å°è£ 度å¾é«ï¼å ·æèªç§°ä½ç³»çå ç´ éæ©å¼æåæµè§å¨å ¼å®¹æ¹æ¡ï¼JSåæ³ä¹æèªå·±çæ¹å¼ï¼ç»ä»¶å¾å¤ã
5ãvaadin/GWTæ¯ä½¿ç¨åå°è¯è¨åå端ãä¸è¿ä¸æ¯å¾å»ºè®®ä½¿ç¨è¿ç§æ¹æ¡ã
ç¨djangoå端å¼åè¦å¦ä»ä¹ç¬¬ä¸é¶æ®µï¼Pythonè¯è¨åºç¡
主è¦å¦ä¹ Pythonæåºç¡ç¥è¯ï¼å¦Python3ãæ°æ®ç±»åãå符串ãå½æ°ãç±»ãæ件æä½çãé¶æ®µè¯¾ç¨ç»æåï¼å¦åéè¦å®æPygameå®æé£æºå¤§æãç项ç®ã
第äºé¶æ®µï¼Pythonè¯è¨é«çº§
主è¦å¦ä¹ Pythonåºãæ£å表达å¼ãè¿ç¨çº¿ç¨ãç¬è«ãéå以åMySQLæ°æ®åºã
第ä¸é¶æ®µï¼Pythonwebå¼å
主è¦å¦ä¹ HTMLãCSSãJavaScriptãjQueryçå端ç¥è¯ï¼ææ¡pythonä¸å¤§å端æ¡æ¶(DjangoãFlask以åTornado)ãéè¦å®æç½é¡µçé¢è®¾è®¡å®æ;è½ç¬ç«å¼åç½ç«ã
第åé¶æ®µï¼Linuxåºç¡
主è¦å¦ä¹ Linuxç¸å ³çåç§å½ä»¤ï¼å¦æ件å¤çå½ä»¤ãå缩解åå½ä»¤ãæé管ç以åLinuxShellå¼åçã
第äºé¶æ®µï¼Linuxè¿ç»´èªå¨åå¼å
主è¦å¦ä¹ Pythonå¼åLinuxè¿ç»´ãLinuxè¿ç»´æ¥è¦å·¥å ·å¼åãLinuxè¿ç»´æ¥è¦å®å ¨å®¡è®¡å¼åãLinuxä¸å¡è´¨éæ¥è¡¨å·¥å ·å¼åãKaliå®å ¨æ£æµå·¥å ·æ£æµä»¥åKaliå¯ç ç ´è§£å®æã
第å é¶æ®µï¼Pythonç¬è«
主è¦å¦ä¹ pythonç¬è«ææ¯ï¼ææ¡å¤çº¿ç¨ç¬è«ææ¯ï¼åå¸å¼ç¬è«ææ¯ã
第ä¸é¶æ®µï¼Pythonæ°æ®åæå大æ°æ®
主è¦å¦ä¹ numpyæ°æ®å¤çãpandasæ°æ®åæãmatplotlibæ°æ®å¯è§åãscipyæ°æ®ç»è®¡åæ以åpythonéèæ°æ®åæ;HadoopHDFSãpythonHadoopMapReduceãpythonSparkcoreãpythonSparkSQL以åpythonSparkMLlibã
ç¬¬å «é¶æ®µï¼Pythonæºå¨å¦ä¹
主è¦å¦ä¹ KNNç®æ³ã线æ§åå½ãé»è¾æ¯èåå½ç®æ³ãå³çæ ç®æ³ãæ´ç´ è´å¶æ¯ç®æ³ãæ¯æåéæºä»¥åèç±»k-meansç®æ³ã
ç»è¯ï¼ä»¥ä¸å°±æ¯é¦å¸CTOç¬è®°ä¸ºå¤§å®¶æ´ççå ³äºdjangoå端ç¨ä»ä¹åçå ¨é¨å 容äºï¼æè°¢æ¨è±æ¶é´é 读æ¬ç«å 容ï¼å¸æ对æ¨ææ帮å©ï¼æ´å¤å ³äºdjangoå端ç¨ä»ä¹åçç¸å ³å 容å«å¿äºå¨æ¬ç«è¿è¡æ¥æ¾åã
javaå端主è¦åä»ä¹(javaå端工ä½)
Javaå端æ¯ä»ä¹
Javaå端æçå°±æ¯æå¡ç«¯ï¼æå¡ç«¯ä»£ç ä¸è¬è¿è¡å¨æå¡å¨ä¸ï¼ä¸è¬è¿è¡Javaç¨åºçæå¡å¨æ¯Linuxæå¡å¨ãjavaå端çå¼å人åéè¦ç¨Linuxéç¼åå¯ç§»æ¤ãå ·æè¯å¥½ææ¡£æ¯æç代ç æ¥å建ææ´æ°Webåºç¨ã
软件å¼ååå°ä¸»è¦åä»ä¹
软件å¼ååå°ï¼å端ç¨åºåï¼è¦è·æ°æ®åºæ交éï¼åæ°æ®çå¤çé®é¢ã
æ ¹æ®æ£å¨å¤ççåºç¨ç¨åºç大å°åèå´ï¼åå°å¼å人åè¦åçäºæ æå¾å¤§çä¸åãä½æ»ä½æ¥è¯´å·¥ä½äºé½æ¯å¯¹åºç¨ç¨åºä¸çä¸å¡é»è¾ï¼ä»¥åä»å端æååæ£ç´¢æ°æ®ã
å¨Webå¼åä¸çä¸ï¼å端å¼å人åä»äºäºæ建ä»ä»¬æ£å¨å·¥ä½çåºç¨ç¨åºèåçå®é é»è¾ã
ä¾å¦ï¼å端å¼å人åå¨åºç¨ç¨åºä¸å建ä¸ä¸ªçé¢ï¼ä¸é¢æä¸ä¸ªæé®ï¼æä¸æé®æ¥è·å客æ·çæ°æ®ãå端å¼å人ååå¯ä½¿å¾æé®å·¥ä½ç代ç ï¼éè¿æåºä»æ°æ®åºä¸æååªäºæ°æ®å¹¶å°å ¶ä¼ åå°å端ï¼å¹¶æç»æ¾ç¤ºå¨é£éï¼ã
å端å¼å人åä¹ä¼å¤§éåä¸ç³»ç»æ¶æï¼å³å®å¦ä½ç»ç»ç³»ç»çé»è¾ï¼ä»¥ä¾¿è½å¤æ£å¸¸ç»´æ¤åè¿è¡ãéè¦åä¸æ建æ¡æ¶æç³»ç»æ¶æï¼ä»¥ä¾¿äºæ´å®¹æç¼åç¨åºãå端å¼å人åæ¯å端å¼å人åè±è´¹æ´å¤çæ¶é´å¨å®ç°ç®æ³å解å³é®é¢ä¸ã
æ©å±èµæ
软件åå°å¼åç主è¦ææ¯åæè½ä¸¾ä¾ï¼ä»¥java为ä¾ï¼ï¼
1ãåå°æ¡æ¶é¨åï¼SpringMVC
SpringMVCåºäºJavaå®ç°äºWebMVC设计模å¼ï¼è¯·æ±é©±å¨ç±»åçè½»é级Webæ¡æ¶ï¼å³ä½¿ç¨äºMVCæ¶æ模å¼çææ³ï¼å°Webå±è¿è¡è责解è¦ï¼
2ãæ°æ®æä¹ å±æ¹é¢ï¼MyBatis
MyBatisæä¹ å±æ¡æ¶æ¯æå®å¶åSQLãåå¨è¿ç¨ä»¥åé«çº§æ å°ãMyBatisé¿å äºå ä¹ææçJDBC代ç åæå¨è®¾ç½®åæ°ä»¥åè·åç»æéãMyBatiså¯ä»¥ä½¿ç¨ç®åçXMLæ注解æ¥é ç½®åæ å°åçç±»åãæ¥å£åJavaçPOJO为æ°æ®åºä¸çè®°å½ã
3ãæ°æ®åºå±ææ¯ï¼jdbc
JDBCï¼javaæ°æ®åºè¿æ¥ï¼ç¨äºæ§è¡SQLè¯å¥çJavaAPIï¼å¯ä»¥ä¸ºå¤ç§å ³ç³»æ°æ®åºæä¾ç»ä¸è®¿é®ï¼å®ç±ä¸ç»ç¨Javaè¯è¨ç¼åçç±»åæ¥å£ç»æãJDBCæä¾äºä¸ç§åºåï¼æ®æ¤å¯ä»¥æ建æ´é«çº§çå·¥å ·åæ¥å£ï¼ä½¿æ°æ®åºå¼å人åè½å¤ç¼åæ°æ®åºåºç¨ç¨åºã
4ãç¼åææ¯ï¼redis
Redisæ¯ä¸ä¸ªå¼æºç使ç¨ANSICè¯è¨ç¼åãæ¯æç½ç»ãå¯åºäºå å亦å¯æä¹ åçæ¥å¿åãKey-Valueæ°æ®åºï¼å¹¶æä¾å¤ç§è¯è¨çAPIã
5ãæç´¢å¼æææ¯ï¼elasticsearch
ElasticSearchåºäºLuceneçæç´¢æå¡å¨ï¼æä¾äºä¸ä¸ªåå¸å¼å¤ç¨æ·è½åçå ¨ææç´¢å¼æï¼åºäºRESTfulwebæ¥å£ãElasticsearchæ¯ç¨Javaå¼åçï¼å¹¶ä½ä¸ºApache许å¯æ¡æ¬¾ä¸çå¼æ¾æºç åå¸ï¼æ¯å½åæµè¡çä¼ä¸çº§æç´¢å¼æã
javaå端å¼åæ¯çº¯ç¨åºååï¼Javaå端å¼åæ¯ä¸ç§ä¸æ³¨äºæå¡å¨ç«¯åºç¨ç¨åºå¼åçèä¸ãJavaå端å¼å人å主è¦è´è´£è®¾è®¡åå¼åæå¡å¨ç«¯çåºç¨ç¨åºï¼å æ¬å¤çååå¨æ°æ®ãä¸å端åºç¨ç¨åºäº¤äºçã尽管Javaå端å¼åéè¦ææ¡ä¸å®çç¼ç¨æè½ï¼ä½ä¸ä¸å®éè¦æ为â纯ç¨åºåâï¼å 为è¿ç§å·¥ä½ä¹éè¦ç解ä¸å¡é»è¾åä¸å ¶ä»å¼å人åè¿è¡åä½ã
Javaå端å°åºæ¯å¨åä»ä¹ï¼å¦ä¹ Javaå¯ä»¥åç½ç«
Javaå¯ä»¥ç¨æ¥ç¼åç½ç«ï¼ç°å¨å¾å¤å¤§åç½ç«é½ç¨JSPåçï¼JSPå ¨åJavaServerPagesãå®æ¯ä¸ç§å¨æç½é¡µææ¯ï¼æ¯å¦æ们çæçï¼ä¸äºæ¿åºç½ç«é½æ¯éç¨JSPç¼åçã
æ以å¦ä¹ Javaçåå¦å¯ä»¥æ¾å¼åç½ç«æ¹é¢çå·¥ä½ï¼èä¸ç°å¨æ¾è¿æ¹é¢çå²ä½æ¯è¾å¤ã
å¦ä¹ Javaå¯ä»¥å软件
ä¸è¬ç¼ç¨è¯è¨é½å¯ä»¥å软件çï¼Javaä¹ä¸ä¾å¤ï¼ä¾å¦Eclipseï¼MyEclipseçç¥åJavaå¼åå·¥å ·ï¼æå ³å¼å软件ç»ä»¶ï¼å¯ä»¥äºè§£JavaSwingç¼ç¨æè awtç¸å ³ç¥è¯ã
æ¯å¦ï¼ä¼ä¸çº§åºç¨å¼åï¼è¿éæ¯JAVAç天å°ï¼å¤§å°å ¨å½èç½çç³»ç»ï¼å°å°ä¸å°ä¼ä¸çåºç¨è§£å³æ¹æ¡ï¼Javaé½å ææ为éè¦çå°ä½ã
å¦å¤è¿æ移å¨é¢åï¼å ¸åçåºç¨æ¯ææºæ¸¸æï¼è¿éæ¯J2MEç天å°ï¼å ¶å®åºç¨èå´æ¯å¾å¹¿çã
å¦ä¹ Javaå¯ä»¥åAndroid
Androidæ¯ä¸ç§åºäºLinuxçèªç±åå¼æ¾æºä»£ç çæä½ç³»ç»ï¼å ¶æºä»£ç æ¯Javaãæ以å¸åºä¸è§å°çææºç³»ç»ä¾å¦MIUIï¼é¿éäºï¼ä¹èçï¼é½æ¯ä¿®æ¹æºä»£ç ååè¡çã
Javaåå®åä¸ååæ¯æç³»ç»ï¼è¿æAPP对äºæ´å¤çå¼å人åæ¥è¯´ï¼ä»ä»¬æ´å¤çæ¶é´æ¯è±å¨å¼åAPPä¸é¢ã
å¦ä¹ Javaå¯ä»¥å游æ
æè ä½ ä¸ç¥éï¼å¨ä»¥å诺åºäºè¿å¾æµè¡çæ¶åï¼ä½ ç©çææºæ¸¸ææ%以ä¸é½æ¯Javaå¼åçã
å½ç¶ç°å¨å·²ç»å¾å°äººåå»å¼åäºï¼é½è½¬å°å®åä¸å»äºã
javaå端å¼åéè¦å¦ä»ä¹javaå端å¼åéè¦å¦çå 容å¦ä¸ï¼
1ãé¢å对象çç¥è¯
javaæ¯ä¸ç§é¢å对象çå¼åè¯è¨ï¼å æ¤çæé¢å对象对å¦ä¹ javaå¾æå¿ è¦ï¼ä½ éè¦äºè§£ï¼ä»ä¹æ¯å¯¹è±¡ï¼ä»ä¹æ¯ç±»ï¼ä»ä¹æ¯å°è£ ï¼ä»ä¹æ¯å¤æï¼ä»ä¹æ¯ç»§æ¿ï¼ä»ä¹æ¯æ½è±¡ç±»ï¼ä»ä¹æ¯æ¥å£ãç解以ä¸æ¦å¿µåï¼è¿éè¦ç¥éè¿äºæ¦å¿µæ¯å¦ä½ä½ç°çï¼å¦ç±»å对象æä»ä¹åºå«?ç±»æ¯å¦ä½å°è£ ç?
2ãjavaè¯è¨
Javaæ¯ä¸é¨çº¯ç²¹çé¢å对象çç¼ç¨è¯è¨ï¼æ以é¤äºåºç¡è¯æ³ä¹å¤ï¼å¿ é¡»å¾å¼æå®çoopç¹æ§ï¼å°è£ ã继æ¿ãå¤æãæ¤å¤è¿ææ³åãåå°çç¹æ§ï¼å¾å¤æ¡æ¶çææ¯é½ä¾èµå®ï¼æ¯å¦Springæ ¸å¿çIocåAOPï¼é½ç¨å°äºåå°ï¼èä¸Javaèªèº«çå¨æ代çä¹æ¯å©ç¨åå°å®ç°çã
æ¤å¤è¿æJavaä¸äºæ ååºä¹æ¯é常常è§ï¼æ¯å¦éåãI/Oã并åï¼å ä¹å¨Webå¼åä¸æ å¤ä¸å¨ï¼ä¹æ¯é¢è¯ç»å¸¸ä¼è¢«é®å°çï¼æ以å¨å¦Javaå端ä¹åï¼ä¸å¦¨å æ好è¿äºåºç¡ã
å¦å¤è¿æJava8çä¸äºæ°ç¹æ§ï¼ä¹è¦éç¹å ³æ³¨ï¼æ¯å¦Lambda表达å¼ãéåçStreamæµæä½ãå ¨æ°çDateAPIççï¼å ³äºæ°ç¹æ§ã
3ãJSPåHTML
å¨æå½çç»å¤§å¤æ°å ¬å¸ï¼åjavaç¨åºå¼åé½å°ä¸äºåJSP以åHTMLæ交éãæ以ï¼è¦çæjavaç¨åºå¼åå°±è¦çæJSPåHTMLï¼æ好è½ç¥éJSPçå 个å 置对象ï¼å¦Sessionï¼Requestï¼Reponseï¼ä»¥å常ç¨çJSPæ ç¾ï¼å¦include,userBeançã
尽管ä¸äºå·¥å ·ä¼å¸®ä½ çæHTML代ç ï¼ä½è¿æ¯è¦çææ¯å¦titleï¼çãå¦æåçæä¸ä¸JSåCSSå°±æ´å¥½äºï¼é£ä¼ä½¿ååºç页é¢æ´å好ã
4ãæ°æ®åº
å端å¼åå ä¸äºä¸æ°æ®åºæ交éï¼æ以ææ¡Javaçæ°æ®åºæä½æ¯ä¸ä¸ªåºæ¬è¦æ±ãJavaæä½æ°æ®åºæ¶åå°çå 容æJDBCãJNDIãRMIãDAOçå 容ï¼å ¶ä¸ä½¿ç¨RMI+JDBCæ¯æ建javaæ°æ®åºå¼åçä¸ä¸ªå¸¸è§ç解å³æ¹æ¡ï¼èJNDIåæ¯å¯¹åç§èµæºçå®ä¹ã
5ãWebServer
çæä¸ç§WebServerï¼æ¯å¦ï¼TOMCATï¼RESINçãæ¨è¦çæå¦ä½åå¸ä½ çåºç¨ï¼å¦ä½å©ç¨WebServerçæ°æ®åºèµæºçã
6ãServlet
Servletææ¯æ¯Javaå端çéè¦ææ¯ä¹ä¸ï¼ä½ä¸ºJavaWebå¼åçæ ¸å¿ç»ä»¶ï¼Servletæ¿æ äºWebMVCç»æä¸çæ ¸å¿ä½ç¨ï¼åè½å¯¼èªï¼ã
ä¼ ç»çModel2ç»æï¼Servlet+JavaBean+JSPï¼è½ç¶å¨ç®åå·²ç»å¾å°ä½¿ç¨äºï¼ä½æ¯Webå¼åçåºæ¬ç»æä¾ç¶æ²¡ææ¹åãServletææ¯çåºç¨æ¶åå°Web容å¨ãä¼è¯ï¼HttpSessionï¼ãå®å ¨ãåæ¥ãWebåºç¨é¨ç½²çç¸å ³å 容ã
7ãWeb主æµæ¡æ¶
çæä¸ç§æ¡æ¶å ¶å®æ¯javaç¨åºå¼åçä¸ç§å¯éç¥è¯ï¼ä½ç®åå¼åB/Sç»æçåºç¨çå¼åå°ç»ï¼é½å·®ä¸å¤ä¼éç¨ä¸ç§æ¡æ¶æ¥æ建èªå·±çåºç¨ç³»ç»ã
æ¡æ¶é½ä¼æ许å¤å¯éç¨ç代ç ï¼è¯å¥½çå±æ¬¡å ³ç³»åä¸å¡æ§å¶é»è¾ï¼åºäºæ¡æ¶çå¼åä½¿ä½ å¯ä»¥çåºå¾å¤çå¼åææ¬ãç®åæ¯è¾æµè¡çæ¡æ¶æStrutsåSpringçã
Spring+SpringMVC+MyBatisæ¯ç®åä¸ä¸ªæ¯è¾å¸¸è§çå端å¼åæ¹æ¡ï¼Springçåçå°±æ¯æ建äºä¸ä¸ªâä¸å¡ç»ä»¶å®¹å¨âï¼SpringMVCåæ¯WebMVCçä¸ä¸ªå ·ä½å®ç°æ¡æ¶ï¼èMyBatisåæ¯ä¸ä¸ªåºäºDAOçå®ç°æ¡æ¶ã
ä»æ§è½çè§åº¦æ¥è¯´ï¼Springæ¯EJBçè½»é级解å³æ¹æ¡ï¼å¾å°äºå¹¿å¤§Javaç¨åºåç欢è¿ã