大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Javaweb項目視頻下載:項目要點

Javaweb項目視頻下載:項目要點

更新時間:2020-03-13 10:19:12 來源:動力節點 瀏覽2299次


  今天小編詳細的列出了開發一個傳統JavaWeb項目需要注意的要點,從環境準備開始到三層架構搭建,需要注意的地方全部羅列出來。


Javaweb項目視頻下載:項目要點


  第一部分:環境準備


  1.Maven命令創建web骨架


  mvnarchetype:create-DgroupId=net.rocketa-DartifactId=mywebapp-DarchetypeArtifactId=maven-archetype-webapp


  注意webservlet版本(web.xml,3.1),Junit版本指定為4.X(這樣Spring好通過注解的方式來運行單元測試)


  2.注意在IDEA中需要設置好MAVEN工程的Sources/Tests/Resources/TestResources屬性。


  3.日志依賴


  slf4j:規范和接口


  具體的日志實現有:


  log4j、logback、common-logging


  因此我們一般是使用slf4j接口+一種具體的日志實現+slf4j和這個具體日志實現的依賴整合


  4.數據庫依賴


  有2個依賴,需要注意,一個是驅動,一個是數據庫連接池(C3P0,DBCP...)。


  驅動JAR包是運行期需要包含,編譯期不需要的。


  5.持久層框架依賴


  說白了,DAO層的框架依賴:MyBatisorHibernateor....


  比如除MyBatis本身的依賴需要引入之外,還需要引入MyBatis和Spring的整合依賴。


  6.Web層依賴


  比如,JSP中使用到的一些JSTL、標簽、Ajax訪問JSON等,還有需要注意的是,在編譯期需要引入servlet-api。


  7.Spring核心依賴


  spring-core、spring-beans、spring-context


  8.Spring和DB之間的整合依賴


  Spring是需要介入DB的管理的,比如它的聲明式事務。


  spring-jdbc、spring-tx


  9.Spring對Web的一些整合依賴


  spring-web、spring-webmvc


  10.Spring對Junit的支持依賴


  spring-test


  NOSQL對事務的支持不是很好,它主要追求的是性能、高可用、分布式。


  MySQL等關系型數據庫對事務的支持是很成熟的,也是很可靠的落地方案。


  第二部分:DAO層


  NOSQL對事務的支持不是很好,它主要追求的是性能、高可用、分布式。


  MySQL等關系型數據庫對事務的支持是很成熟的,也是很可靠的落地方案。


  1.表


  可以在項目中建立一個SQL文件,便于SQL的管理。


  注意,表的存儲引擎(事務的支持:innodb)、自動增長的特性、編碼、主鍵和索引。


  一個良好的習慣是:為所有的表都添加一個創建時間字段,用于記錄,方便排查。


  應該為表名、列名添加注釋,方便其他工程師查閱。


  應該注意SQL技巧,比如插入存在唯一約束的表中,如果出現沖突不想報錯的話,可以:insertignoreinto....(可以通過返回的影響行數來進行判斷)


  2.Dao層實體


  一些業務對象的建立,setter/getter/toString等就不說了,需要特別注意的是,除了表的字段之外,還需要什么屬性?這里涉及到一個一對一、一對多,多對多的概念!


  3.Dao層接口和mappersql


  MyBatis的特點:從SQL(參數+sql)映射到Entity/List(定制SQL、自由傳遞參數、結果集自動賦值)


  使用MyBatis的方式:SQL寫在XML中,或者注解提供SQL。更加推薦的是XML,因為更加靈活,XML提供的動態拼接功能也是比注解簡單的多。


  一個全局的mybatis配置文件+具體的SQL文件+DAO接口:讓我們只需要設計接口,關注業務邏輯,解放出來。


  在全局mybatis配置文件中重點注意:是否開啟駝峰轉換,獲取數據庫自增主鍵,列別名替換列名等。


  注意DAO接口和具體的SQL文件之間的對應關系。


  具體SQL寫法中,比如#{},<![CDATA[...]]>等需要引起注意。


  輸入參數類型parameterType,如果是多個基本類型,那么不用給出來。


  即便返回的是List對象,我們的resultType依然指定的是集合中的對象類型。


  在Mybatis的SQL文件中是可以通過OGNL表達式來對對象中的一些對象類型的屬性進行賦值的!


  表名.xxx或者表名.xxxasyyy對于Mybatis而言,會忽略表名.前綴,也會忽略as。


  另外,注意在Dao接口中,如果方法有多個基本類型參數,別忘了通過@Param來進行運行期參數標記!


  總結:Dao層的工作逐漸演變成接口設計和SQL編寫了,這種代碼和SQL的分離方式,便于我們進行review,而Dao的拼接將在Service層完成。


  4.一些優化配置


  比如,對帶包路徑的類型進行簡化,通過配置掃描包。


  比如,批量掃描SQL文件,通過自動掃描配置文件。


  5.mybatis和spring需要整合


  spring需要接管數據庫


  JDBC的一些連接信息,數據庫連接池的一些配置信息,就是配置DataSource的過程。


  spring和mybatis整合的核心


  SqlSessionFactory是MyBatis的配置核心,把DataSource注入,并指明MyBatis的全局配置文件位置,typeAliasesPackage掃描,mapper文件位置掃描等。


  spring通過動態代理幫助生成Dao的代理實現類(MapperScannerConfigurer)


  注入SqlSessionFactory(通過sqlSessionFactoryBeanName),指明Dao接口的包路徑basePackage


  總之,配置的一項原則是:約定優于配置!!!


  第三部分:進行SpringJunit單元測試


  當我們進行了一些配置,寫了一些SQL,Dao接口后,應該要進行SpringJunit單元測試,可以通過IDEA快速的生成測試用例(很好用的一個功能,因為IDEA可以幫助我們快速在test下建立與dao/service接口的同級目錄下生成用例)


  在用例中,我們只需要在類上打上注解:


  @RunWith(SpringJUnit4ClassRunner.class)


  @ContextConfiguration({"classpath:spring配置文件"})


  加載Spring容器后,我們就可以在用例中注入對象,開始測試了!!!


  第四部分:Service層


  Service層需要關注幾個要點:


  業務對象的封裝、web和service之間進行數據傳遞的DTO、異常的處理(業務異常)


  注意Spring事務回退的默認機制是:運行時異常。


  因此,我們在service層默認定義的業務異常一般extendsRuntimeException。


  一般而言,通過:


  try{


  }catch(業務異常1e1){


  }catch(業務異常2e2){


  }catch(Exceptione){


  thrownew業務異常(...);


  }


  要知道,service層可能會發生業務異常,也可能發生一些其他異常,為了Spring都可以感知到,這里會把Exception異常轉化成運行時異常


Javaweb項目視頻下載:項目要點


    以上就是動力節點Java培訓機構小編介紹的“Javaweb項目視頻下載:項目要點”的內容,希望對大家有幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。


提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 亚洲一区二区三区免费看 | 日日操免费视频 | 亚洲欧美日韩国产一区二区精品 | 91手机在线视频 | 日本特黄一级午夜剧场毛片 | 青草娱乐极品免费视频 | 天天怕夜夜怕狠狠怕 | 久久精品国产精品亚洲精品 | 免费观看a毛片一区二区不卡 | 久久久久久中文字幕 | 性欧美video另类hd亚洲人 | 欧美美女被爆操 | 国产网红福利视频网站 | 中文字幕一区婷婷久久 | 久久er99热这里只是精品 | 欧美日韩视频在线播放 | 簧片在线播放 | 日本精品久久久久中文字幕 | 国产成人精品曰本亚洲78 | 久久国产精品久久久久久小说 | 中文字幕久久久 | 成人亚洲视频在线观看 | 最新国产中文字幕 | 久久久国产99久久国产一 | 日韩免费观看一级毛片看看 | 欧美中文综合在线视频 | 亚洲va欧美va国产 | 久久www免费人成看国产片 | 亚洲欧美激情精品一区二区 | 亚洲精品久久中文字幕 | 麻豆精品成人免费国产片 | 精品视频在线免费 | 精品无人乱码一区二区三区 | 亚洲国产日韩综合久久精品 | 亚洲图片国产日韩欧美 | 国产波多野结衣中文在线播放 | 美女视频很黄很暴黄是免费的 | 国产不卡免费视频 | 国内精品自在自线视频香蕉 | 成人精品mv视频在线观看 | 成熟热自由日本语亚洲人 |