{eval=Array;=+count(Array);}

国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

問答專欄Q & A COLUMN

你平時(shí)主要使用什么Java開發(fā)框架?

shmilyshmily 回答0 收藏1
問題描述:SpringBoot/SpringCloud/Dubbo
收藏問題

10條回答

zengdongbao

zengdongbao

回答于2022-06-28 15:45

就拿我們項(xiàng)目來舉例說一說吧。


我們的項(xiàng)目是一個(gè)純后臺(tái)服務(wù)的項(xiàng)目,也就是沒有前端頁(yè)面,只對(duì)外提供服務(wù);項(xiàng)目是是基于 Spring Boot 來做的,引入 spring-boot-starter-web,直接對(duì)外暴露接口,報(bào)文使用的 JSON,有極個(gè)別的接口是從老系統(tǒng)遷移過來的,為了讓調(diào)用方盡可能地稍作修改,所以保持了 XML 的報(bào)文;在正式的生產(chǎn)環(huán)境中,也是使用的內(nèi)置的 Tomcat;集成了 Swagger,來做接口的文檔在線自動(dòng)生成。

ORM 框架選擇的是 MyBatis,由于項(xiàng)目中大部分的查詢都做到了單表查詢,而且查詢條件比較固定,所以直接使用注解做的 SQL 語(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)單的配置,就可以完成對(duì)多臺(tái) MongoDB 的訪問,如果其中一臺(tái) MongoDB 掛了,對(duì)服務(wù)也是沒有影響的,所以我們做 MongoDB 擴(kuò)容的時(shí)候是可以在線做的(MongoDB 擴(kuò)內(nèi)存和 CPU 的時(shí)候需要停機(jī))。

和部分系統(tǒng)的交互使用到了 RabbitMQ,而 Spring Boot 只要引入 spring-boot-starter-amqp,其實(shí)就可以很方便地完成和 RabbitMQ 的集成;生產(chǎn)者和消費(fèi)者都非常方便。


因?yàn)槭羌兘涌诘姆?wù),為了減輕數(shù)據(jù)庫(kù)的壓力,所以我們根據(jù)業(yè)務(wù)場(chǎng)景,將一些接口的結(jié)果直接緩存到 Redis 中(數(shù)據(jù)變化不頻繁,并且業(yè)務(wù)場(chǎng)景的實(shí)時(shí)性要求不是很高)。在集成 Redis 的時(shí)候,我們前后試了兩種方式:

  • Spring Boot 項(xiàng)目,直接使用 @Cacheable 注解就可以完成和 Redis 最簡(jiǎn)單的集成,但是后來因?yàn)樵O(shè)置緩存的超時(shí)時(shí)間不夠靈活,我們后來改成了第二種方案;

  • 使用 RedisTemplate,可以完成對(duì) Redis 的絕大部分操作。

我將持續(xù)分享Java開發(fā)、架構(gòu)設(shè)計(jì)、程序員職業(yè)發(fā)展等方面的見解,希望能得到你的關(guān)注。

評(píng)論0 贊同0
  •  加載中...
Jensen

Jensen

回答于2022-06-28 15:45

謝邀!根據(jù)你面試的職位等級(jí)不同,面試的內(nèi)容當(dāng)然會(huì)不同。spring、springmvc、mybatis這三大基礎(chǔ)框架必須學(xué)和掌握,springboot、dubbo、springcloud、Spring家族其他套件、apache相關(guān)套件進(jìn)階

評(píng)論0 贊同0
  •  加載中...
tuomao

tuomao

回答于2022-06-28 15:45

Java框架一直以來都是面試必備的知識(shí)點(diǎn),而掌握J(rèn)ava框架,不管在成熟的大公司,快速發(fā)展的公司,還是創(chuàng)業(yè)階段的公司,都能對(duì)當(dāng)前正在開發(fā)中的系統(tǒng)有整體的認(rèn)知,從而更好的熟悉和學(xué)習(xí)技術(shù),這里我把常見的一些框架給您整理一下。


Spring框架,這個(gè)只要想從事java開發(fā)或正在從事java開發(fā)的,沒有人不知道吧?沒有人不在用吧?一般應(yīng)該是天天用才是。SpringIoc和SpringAOP是Spring的兩大核心功能,讓java程序員解放了,各種整合框架,輕松搞定,把重心放到業(yè)務(wù)實(shí)現(xiàn)上去。


hibernate框架,也是我最喜歡的框架之一。是開放源代碼的對(duì)象關(guān)系映射框架,它對(duì)JDBC進(jìn)行了非常輕量級(jí)的對(duì)象封裝,它將POJO與數(shù)據(jù)庫(kù)表建立映射關(guān)系,是一個(gè)全自動(dòng)的orm框架,hibernate可以自動(dòng)生成SQL語(yǔ)句,自動(dòng)執(zhí)行,使得Java程序員可以隨心所欲的使用對(duì)象編程思維來操縱數(shù)據(jù)庫(kù)。 Hibernate可以應(yīng)用在任何使用JDBC的場(chǎng)合,既可以在Java的客戶端程序使用。

可以說java官方的jpa,就是適應(yīng)hibernate的超好用,而設(shè)計(jì)的。如果沒有hibernate,可以不一定有orm的出現(xiàn)。

MyBatis,不多說, 也是一款優(yōu)秀的持久層框架,它支持定制化 SQL、存儲(chǔ)過程以及高級(jí)映射。MyBatis 避免了幾乎所有的 JDBC 代碼和手動(dòng)設(shè)置參數(shù)以及獲取結(jié)果集。MyBatis 可以使用簡(jiǎn)單的 XML 或注解來配置和映射原生信息,將接口和 Java 的 POJOs(Plain Ordinary Java Object,普通的 Java對(duì)象)映射成數(shù)據(jù)庫(kù)中的記錄。

Apache Shiro是一個(gè)強(qiáng)大且易用的Java安全框架,執(zhí)行身份驗(yàn)證、授權(quán)、密碼和會(huì)話管理。使用Shiro的易于理解的API,您可以快速、輕松地獲得任何應(yīng)用程序,從最小的移動(dòng)應(yīng)用程序到最大的網(wǎng)絡(luò)和企業(yè)應(yīng)用程序。

Activiti項(xiàng)目是一項(xiàng)新的基于Apache許可的開源BPM平臺(tái),從基礎(chǔ)開始構(gòu)建,旨在提供支持新的BPMN 2.0標(biāo)準(zhǔn),包括支持對(duì)象管理組(OMG),面對(duì)新技術(shù)的機(jī)遇,諸如互操作性和云架構(gòu),提供技術(shù)實(shí)現(xiàn)。


隨著DevOps的流行,Spring Cloud是一系列框架的有序集合,當(dāng)前最為流行。這里涉及到好多框架,我就不一一列出來了,大家可以自己去了解。


總之,做為一個(gè)Java開發(fā)者,熟練掌握并應(yīng)用20種以上框架應(yīng)該不叫算多,Java的生態(tài)太強(qiáng)大,所有大家要好好學(xué)習(xí)呀。

評(píng)論0 贊同0
  •  加載中...
fasss

fasss

回答于2022-06-28 15:45

springboot、吃持久層用mybatis,計(jì)劃轉(zhuǎn)到springdata jpa

評(píng)論0 贊同0
  •  加載中...
kyanag

kyanag

回答于2022-06-28 15:45

我主要用的框架有這三個(gè):Spring/STRUCTS/Hibernate。


第一:Spring

Spring是一個(gè)解決了許多在J2EE開發(fā)中常見的問題的強(qiáng)大框架。 Spring提供了管理業(yè)務(wù)對(duì)象的一致方法并且鼓勵(lì)了注入對(duì)接口編程而不是對(duì)類編程的良好習(xí)慣。Spring的架構(gòu)基礎(chǔ)是基于使用JavaBean屬性的Inversion of Control容器。然而,這僅僅是完整圖景中的一部分:Spring在使用IoC容器作為構(gòu)建完關(guān)注所有架構(gòu)層的完整解決方案方面是獨(dú)一無二的。 Spring提供了的數(shù)據(jù)訪問抽象,包括簡(jiǎn)單和有效率的JDBC框架,極大的改進(jìn)了效率并且減少了可能的錯(cuò)誤。Spring的數(shù)據(jù)訪問架構(gòu)還集成了Hibernate和其他O/R mapping解決方案。Spring還提供了的事務(wù)管理抽象,它能夠在各種底層事務(wù)管理技術(shù),例如JTA或者JDBC事務(wù)提供一個(gè)一致的編程模型。Spring提供了一個(gè)用標(biāo)準(zhǔn)Java語(yǔ)言編寫的AOP框架,它給POJOs提供了聲明式的事務(wù)管理和其他企業(yè)事務(wù)--如果你需要--還能實(shí)現(xiàn)你自己的aspects。這個(gè)框架足夠強(qiáng)大,使得應(yīng)用程序能夠拋開EJB的復(fù)雜性,同時(shí)享受著和傳統(tǒng)EJB相關(guān)的關(guān)鍵服務(wù)。Spring還提供了可以和IoC容器集成的強(qiáng)大而靈活的MVC Web框架。


第二:STRUCTS

Struts是一個(gè)基于Sun J2EE平臺(tái)的MVC框架,主要是采用Servlet和JSP技術(shù)來實(shí)現(xiàn)的。由于Struts能充分滿足應(yīng)用開發(fā)的需求,簡(jiǎn)單易用,敏捷迅速,在過去的一年中頗受關(guān)注。Struts把Servlet、JSP、自定義標(biāo)簽和信息資源(message resources)整合到一個(gè)統(tǒng)一的框架中,開發(fā)人員利用其進(jìn)行開發(fā)時(shí)不用再自己編碼實(shí)現(xiàn)全套MVC模式,極大的節(jié)省了時(shí)間,所以說Struts是一個(gè)非常不錯(cuò)的應(yīng)用框架。


第三:Hibernate

Hibernate是一個(gè)開放源代碼的對(duì)象關(guān)系映射框架,它對(duì)JDBC進(jìn)行了非常輕量級(jí)的對(duì)象封裝,使得Java程序員可以隨心所欲的使用對(duì)象編程思維來操縱數(shù)據(jù)庫(kù)。 Hibernate可以應(yīng)用在任何使用JDBC的場(chǎng)合,既可以在Java的客戶端程序?qū)嵱茫部梢栽赟ervlet/JSP的Web應(yīng)用中使用,最具革命意義的是,Hibernate可以在應(yīng)用EJB的J2EE架構(gòu)中取代CMP,完成數(shù)據(jù)持久化的重任。,Hibernate可以在應(yīng)用EJB的J2EE架構(gòu)中取代CMP,完成數(shù)據(jù)持久化的重任。映射很簡(jiǎn)單呀,就是頁(yè)面的映射呀,多做點(diǎn)練習(xí)就會(huì)了。


應(yīng)該怎么學(xué)Java編程?

Java的學(xué)習(xí)主要包括:語(yǔ)法基礎(chǔ)、面向?qū)ο笏枷搿W(xué)習(xí)任何一門語(yǔ)言語(yǔ)法都是必須的,因?yàn)镴ava的接近自然語(yǔ)言,也是一種相對(duì)比較容易學(xué)的語(yǔ)言。同時(shí)面向?qū)ο缶幊谈瞧浜诵乃枷耄斫馄鋵?shí)只要記住一句話就行了,那就是:一切皆是對(duì)象。

中級(jí)的IO流、多線程、反射及注解等。IO流程、多線程等是相對(duì)比較高級(jí)一點(diǎn),例如我們可以讀取一個(gè)Excel文件、將一個(gè)文件分離,做一個(gè)時(shí)鐘、使用多個(gè)線程發(fā)送郵件等等很多有意思的事。另外反射及注解更是后面流行框架SSH等的基礎(chǔ),在使用中你便會(huì)慢慢感受到它的無窮魅力。

現(xiàn)在來說Java最流行的應(yīng)用還是Web開發(fā)。像HTML、CSS、Javascript等都是基礎(chǔ)的知識(shí),另外作為開發(fā)人員對(duì)目對(duì)于結(jié)構(gòu)化的數(shù)據(jù),我們常用的還是像Oracle、Mysql和PostgreSQL之類的關(guān)系型數(shù)據(jù)庫(kù)。同時(shí)針對(duì)數(shù)據(jù)庫(kù)編程還是PL/SQL需要學(xué)習(xí)。使用Java訪問數(shù)據(jù)庫(kù)的話還有JDBC。

作為Java開發(fā),CoreJava是核心,而作為JavaWeb開發(fā),我認(rèn)為Servlet才是核心。Servlet是服務(wù)器端的Java應(yīng)用程序,但是與普通的Java應(yīng)用程序不同的是,它是由web服務(wù)器來加載啟動(dòng),即我們常說的Servlet,如Tomcat便是servlet容器。另外談到J2EE開發(fā),這里有一個(gè)重要的模型不得不提一下,很多人其實(shí)已經(jīng)想到了,那便是MVC(模型-視圖-控制器)模型。在傳統(tǒng)的web開發(fā)中,往往是JavaBean充當(dāng)模型、JSP做視圖而Servlet作為控制器。

說到框架,其實(shí)已經(jīng)提到了著名的MVC模型,SSH(Struts+Spring+Hibernate)就是一個(gè)非常好的實(shí)現(xiàn)。對(duì)于每一個(gè)框架的作用,我想就不用多說了,畢竟這里并不是想寫一本教程。另外還有工作流開發(fā)的JBPM,搜索引擎Lucence及使系統(tǒng)對(duì)外提供接口的webservice應(yīng)用組件等都是應(yīng)該要掌握的。


Java應(yīng)該怎么學(xué)?

明確的學(xué)習(xí)目的。安守本分做好一名士兵,還是有所追求想做軍官?這就是目標(biāo)。學(xué)習(xí)也要有目的,盲目的學(xué)習(xí)必然 會(huì)使我們手忙腳亂,效率低下;有目的的學(xué)習(xí)才能使我們這只漂泊在知識(shí)海洋上的小船看到燈塔。總之,學(xué)好軟件開發(fā)并不是單一影響,而是多方的作用,只有兼容并包,相互協(xié)調(diào)才能把軟件開發(fā)學(xué)好。

學(xué)習(xí)方法。學(xué)習(xí)方法很重要,好的學(xué)習(xí)方法會(huì)使我們事半功倍,而不好的學(xué)習(xí)方法會(huì)使我們事倍功半,做什么事都要注重功效。

良好的心態(tài)。興趣是最好的老師,或許你并非抱著對(duì)軟件開發(fā)極大的興趣和熱情來學(xué)習(xí)的,但興趣是最好的老師,我們可以在學(xué)習(xí)的過程中培養(yǎng)興趣,有良好的學(xué)習(xí)心態(tài),不只是為學(xué)習(xí)而學(xué)習(xí),而是為興趣而學(xué)習(xí),為就業(yè)而學(xué)習(xí)。

良好的習(xí)慣。無論在學(xué)習(xí)上還是在生活上養(yǎng)成一個(gè)良好的習(xí)慣都對(duì)我們有很大的益處,生活和習(xí)慣又相輔相成,相得益彰,相互影響,相互作用。

注重理論基礎(chǔ)。軟件開發(fā)最好有一定的理論基礎(chǔ)。通其理才能更好的理解技能的精髓,才懂得融會(huì)貫通,軟件開發(fā)學(xué)習(xí)也適用于這一點(diǎn),不要忽視理論課的作用,理論是為了更好的實(shí)踐。甲骨文培訓(xùn)學(xué)校的教員表示:“好的培訓(xùn)學(xué)校能做到讓學(xué)生即能對(duì)理論課付出較大的熱情,又能在實(shí)踐操作上表現(xiàn)出色。”,只有理論和實(shí)踐合理的搭配才能學(xué)好軟件開發(fā)技術(shù)。


高效的Java學(xué)習(xí)方法有這些!

學(xué)java首先你要學(xué) J2SE,它是java體系的基礎(chǔ),也是重中之重。很多人往往不重視基礎(chǔ),其實(shí)這是舍本逐末的做法。說這么多就是希望大家能重視基礎(chǔ),能在這條路上走的更遠(yuǎn)。

學(xué)j2se有下面幾個(gè)目標(biāo):

1、你要能真正理解面向?qū)ο蟮膬?yōu)勢(shì),理解為什么不是面向過程。
2、掌握java語(yǔ)法基礎(chǔ)。包括異常處理、多線程、網(wǎng)絡(luò)編程、GUI編程等
3、如果你對(duì)swing不感興趣,可以跳過它。

這一階段結(jié)束后,你需要能獨(dú)立寫一個(gè)小游戲,比如坦克大戰(zhàn)、俄羅斯方塊、貪吃蛇等。

當(dāng)你完成J2SE的學(xué)習(xí)之后,你就要開始學(xué)習(xí)java web了。

你需要掌握web基礎(chǔ)知識(shí):html、css、javascript、ajax、jQuery。別怕,這些技術(shù)看起來很多,其實(shí)也沒要你精通它們,只是要你能在用到它們的時(shí)候,能通過快速查閱相關(guān)文檔,能正確使用它們。如果這一階段順利的話,你可能還用不到一個(gè)月。學(xué)習(xí)servlet、jsp、jdbc。這些是javaweb的基礎(chǔ),如果你自學(xué)有難度,可以在網(wǎng)上下載一些相關(guān)視頻,幫助理解,降低學(xué)習(xí)難度曲線。

當(dāng)你完成上一階段的學(xué)習(xí)后,你就可以進(jìn)入J2EE的階段了。

這一階段,你可能會(huì)見到很多各種各樣的框架,會(huì)讓你眼花繚亂,頭暈?zāi)垦!2贿^別擔(dān)心,你只需要學(xué)習(xí)三個(gè)就足夠了。它們是struts2、hibernate、spring。這些框架為搭建具有可伸縮性、靈活性、易維護(hù)性的商務(wù)系統(tǒng)提供了良好的機(jī)制。首先你需要學(xué)習(xí)三個(gè)框架的基本配置和使用,直到你能熟練搭建一個(gè)ssh項(xiàng)目。如果學(xué)有余力,你可以深入學(xué)習(xí)這些框架的設(shè)計(jì)模式。

評(píng)論0 贊同0
  •  加載中...
xiaolinbang

xiaolinbang

回答于2022-06-28 15:45

springboot、springcloud

評(píng)論0 贊同0
  •  加載中...
kyanag

kyanag

回答于2022-06-28 15:45

問題:平時(shí)主要使用什么Java開發(fā)框架

回答:基礎(chǔ)框架是Spring Boot,在工作過程中使用過Spring Cloud 和 Dubbo來實(shí)現(xiàn)微服務(wù)架構(gòu)。

Spring Cloud 和 Dubbo 也是目前主流的微服務(wù)實(shí)現(xiàn)架構(gòu),現(xiàn)在公司的中臺(tái)就是采用的Dubbo,但是也是遇到許多問題。接下來會(huì)慢慢重構(gòu)掉,有考慮采用Spring Cloud來實(shí)現(xiàn)。

評(píng)論0 贊同0
  •  加載中...
xioqua

xioqua

回答于2022-06-28 15:45

java開發(fā)框架的springcould,sringboot都是新潮流了,當(dāng)然,這些都要有一些定的基礎(chǔ)才能使用的了,而且小團(tuán)隊(duì)的話對(duì)于這些框架很難掌握的,我比較推薦別人開發(fā)好的低代碼平臺(tái)開發(fā)了,跑起來就能用,不用寫代碼,拖拖拉拉就可以實(shí)現(xiàn)功能,這鐘對(duì)于項(xiàng)目來說很快,我們公司使用的就是天翎的低代碼開發(fā)平臺(tái),推薦使用

評(píng)論0 贊同0
  •  加載中...
niceforbear

niceforbear

回答于2022-06-28 15:45

我推薦一個(gè)基于spring cloud 外延的一個(gè)開源項(xiàng)目,主要是針對(duì)企業(yè)信息化方向的,做得比較不錯(cuò),能開源,支持商用。

開源地址:JVS/jvsgitee.com/software-minister/jvsgitee.com/software-minister/jvs

里面實(shí)現(xiàn)了 SaaS(用戶與租戶的多對(duì)多關(guān)系)、統(tǒng)一多模式登陸、在線表單配置、在線列表頁(yè)配置,在線流程配置,在線圖表配置等等。

系統(tǒng)部分截圖:

登陸頁(yè)面

配置化首頁(yè)

系統(tǒng)基礎(chǔ)信息設(shè)置

框架基礎(chǔ)功能

應(yīng)用創(chuàng)建()

列表配置

流程配置

表單配置

圖表配置

邏輯配置

評(píng)論0 贊同0
  •  加載中...
RyanHoo

RyanHoo

回答于2022-06-28 15:45

分享個(gè)開源項(xiàng)目快速開發(fā)框架,采用spring cloud alibaba +nacos +vue的 技術(shù)棧,實(shí)現(xiàn)了大部分

釘釘宜搭的快速開發(fā)功能,很值得借鑒下。


這是在git上開源的快速開發(fā)項(xiàng)目,項(xiàng)目采用微服務(wù)為基礎(chǔ)的腳手架,包括流程、表單、列表、圖

表、應(yīng)用等多個(gè)界面化的配置引擎。

項(xiàng)目介紹:

  • **JVS的核心目標(biāo):**讓中小型開發(fā)團(tuán)隊(duì)過得輕松一點(diǎn),優(yōu)化開發(fā)團(tuán)隊(duì)人力成本高、交付效率低、質(zhì)量不可控、周期不確定、基礎(chǔ)技術(shù)投入不足、高端技術(shù)支持不夠等
  • JVS是面向軟件開發(fā)團(tuán)隊(duì)可以快速實(shí)現(xiàn)應(yīng)用的基礎(chǔ)開發(fā)框架,采用微服務(wù)分布式框架,提供豐富的基礎(chǔ)功能,集成眾多業(yè)務(wù)引擎,它靈活性強(qiáng),界面化配置對(duì)開發(fā)者友好,底層容器化構(gòu)建,集合持續(xù)化構(gòu)建。

項(xiàng)目標(biāo)簽


低代碼、微服務(wù)、支持SaaS、私有化部署、DevOps、


開源項(xiàng)目地址

  • 框架前端地址:https://gitee.com/software-minister/jvs-ui
  • 框架后端地址:https://gitee.com/software-minister/jvs
  • 快速安裝地址:JVS/jvs-docker-compose


體驗(yàn)地址:http://frame.bctools.cn/#/login


登陸可以通過微信掃碼登陸,對(duì)于配置數(shù)據(jù),請(qǐng)各位技術(shù)同學(xué)手下留情。


部署文檔
https://gitee.com/software-minister/jvs-docker-compose/blob/master/readme.md
**物理拓?fù)洌?/p>



技術(shù)文檔地址(微信登陸可查看):

技術(shù)棧說明:







系統(tǒng)部分截圖:

登陸頁(yè)面



配置化首頁(yè)



系統(tǒng)基礎(chǔ)信息設(shè)置



框架基礎(chǔ)功能





應(yīng)用創(chuàng)建



列表配置



流程配置



表單配置



圖表配置



邏輯配置



demo環(huán)境:http://frame.bctools.cn/#/login

開源地址:https://gitee.com/software-minister/jvs

如果還有其他的疑問,可以私信

評(píng)論0 贊同0
  •  加載中...

最新活動(dòng)

您已邀請(qǐng)0人回答 查看邀請(qǐng)

我的邀請(qǐng)列表

  • 擅長(zhǎng)該話題
  • 回答過該話題
  • 我關(guān)注的人
向幫助了您的網(wǎng)友說句感謝的話吧!
付費(fèi)偷看金額在0.1-10元之間
<