java開(kāi)發(fā)常用四大框架spring jsp比較流行的框架?
jsp比較流行的框架?jsp三大框架共有是:1、struts;2、hibernate;3、spring。struts充當(dāng)視圖層和控制器,hibernate能讓我們是從面向過(guò)程的操作數(shù)據(jù)庫(kù),spring
jsp比較流行的框架?
jsp三大框架共有是:1、struts;2、hibernate;3、spring。struts充當(dāng)視圖層和控制器,hibernate能讓我們是從面向過(guò)程的操作數(shù)據(jù)庫(kù),spring減低里各層之間的禍合。
Java三大框架是用來(lái)開(kāi)發(fā)web應(yīng)用程序中可以使用的.
基于組件MVC的充當(dāng)了其中的視圖層和控制器;
2.Hibernate:做持久度化的,對(duì)JDBC輕量級(jí)的封裝,讓我們能過(guò)面向?qū)ο蟮牟僮鲾?shù)據(jù)庫(kù);
3.Spring:按結(jié)構(gòu)了控制反轉(zhuǎn)的技術(shù),管理Bean,降低了各層之間的直接耦合。
你平時(shí)主要使用什么Java開(kāi)發(fā)框架?
就拿我們項(xiàng)目來(lái)舉例說(shuō)明扒一扒吧。
我們的項(xiàng)目是一個(gè)純后臺(tái)服務(wù)的項(xiàng)目,也就是沒(méi)有前端頁(yè)面,只組織提供服務(wù);項(xiàng)目是是基于組件Spring Boot來(lái)做的,引導(dǎo)出spring-boot-starter-web,直接正式不暴露接口,報(bào)文可以使用的JSON,有極其它的接口是從老系統(tǒng)遷走過(guò)去的,就是為了讓動(dòng)態(tài)創(chuàng)建方盡很有可能地稍作可以修改,因?yàn)楸M量了XML的報(bào)文;在正式的生產(chǎn)環(huán)境中,都是在用的內(nèi)置的Tomcat;獨(dú)立顯卡了Swagger,來(lái)做接口的文檔大俠幫幫忙自動(dòng)生成報(bào)表。
ORM框架你選的是MyBatis,的原因項(xiàng)目中大部分的查詢都可以做到了單表查詢,但是網(wǎng)站查詢條件都很且固定,因?yàn)樵僭谟米⒔庾龅腟QL語(yǔ)句綁定。
是因?yàn)轫?xiàng)目不僅僅建議使用了關(guān)系型數(shù)據(jù)庫(kù),而更多的數(shù)據(jù)是加工關(guān)聯(lián)后保存到了MongoDB中,所以我項(xiàng)目也都用到了Spring Data MongoDB,我們的MongoDB是做了副本集的部署,在用Spring Data MongoDB,只要做最簡(jiǎn)單配置,就是可以結(jié)束對(duì)多臺(tái)MongoDB的訪問(wèn),要是其中一臺(tái)MongoDB掛了,對(duì)服務(wù)也是沒(méi)有影響的,因此我們做MongoDB擴(kuò)容的時(shí)候是可以不萬(wàn)分感謝做的(MongoDB擴(kuò)內(nèi)存和CPU的時(shí)候必須停機(jī)后)。
和部分系統(tǒng)的交互使用到了RabbitMQ,而Spring Boot只需化入spring-boot-starter-amqp,不過(guò)就是可以很方便地結(jié)束和RabbitMQ的集成主板;生產(chǎn)者和消費(fèi)者都特別方便。
因?yàn)槭羌兘涌诘姆?wù),為了緩輕數(shù)據(jù)庫(kù)的壓力,所以才我們參照業(yè)務(wù)場(chǎng)景,將一些接口的結(jié)果直接緩存到Redis中(數(shù)據(jù)變化不頻繁,并且業(yè)務(wù)場(chǎng)景的實(shí)時(shí)性要求并非很高)。在集成Redis的時(shí)候,我們前后試了兩種
Spring Boot項(xiàng)目,真接可以使用@Cacheable注解就是可以能夠完成和Redis最簡(jiǎn)單的集成,可是后來(lái)只不過(guò)系統(tǒng)設(shè)置緩存的超時(shí)時(shí)間夠靈活自如,我們?cè)俸髞?lái)改成了第二種方案;
在用RedisTemplate,可以不結(jié)束對(duì)Redis的絕大部分你的操作。
我將緩慢彼此分享Java開(kāi)發(fā)、架構(gòu)設(shè)計(jì)、程序員職業(yè)發(fā)展等方面的見(jiàn)解,期望能能得到你的關(guān)注。