java开发数据库属于后端吗_JavaWeb后端开发,数据库知识需要掌握到何种程度?...
一般來說,我們將網(wǎng)站分為前端和后端。前端主要負(fù)責(zé)頁面的展示,后端則是業(yè)務(wù)邏輯的實(shí)現(xiàn),后端是由一些實(shí)現(xiàn)業(yè)務(wù)邏輯的Java代碼和數(shù)據(jù)庫組成。
Javaweb做后端,數(shù)據(jù)庫方面需要掌握到哪種程度?我把我能想到的技能點(diǎn)給大家簡(jiǎn)單羅列了一下,希望能對(duì)大家的工作和學(xué)習(xí)有所幫助(可能不夠完善,歡迎大家隨時(shí)補(bǔ)充):
·?需要對(duì)Mysql、Oracle、SqlServer這三個(gè)常用的數(shù)據(jù)庫熟悉了解。
·?在數(shù)據(jù)量比較大或者請(qǐng)求數(shù)比較高的情況下,需要了解一些特定數(shù)據(jù)庫針對(duì)性優(yōu)化。
·?熟悉表、字段、記錄、索引等概念。
·?熟悉SQL的約束,非空、默認(rèn)值、唯一值等約束。熟悉主鍵、外鍵、檢查約束等。
·?熟悉數(shù)據(jù)類型,文本,數(shù)字,日期/時(shí)間,二進(jìn)制等。
·?熟練使用數(shù)據(jù)操作語言 (DML),SELECT、UPDATE、DELETE、INSERT INTO等語句,這些數(shù)據(jù)操作語法,在多數(shù)功能需求中,是基本組成部分。
·?熟練使用數(shù)據(jù)定義語言 (DDL),DATABASE的CREATE 、ALTER;DATABASE的CREATE 、ALTER;TABLE的CREATE 、ALTER、DROP;INDEX的CREATE、DROP。是系統(tǒng)的數(shù)據(jù)庫設(shè)計(jì)必需的定義語法。也會(huì)是系統(tǒng)迭代升級(jí)階段常常進(jìn)行的數(shù)據(jù)結(jié)構(gòu)變更操作。
·?熟悉SQL連接的使用,INNER JOIN,LEFT JOIN,RIGHT JOIN,FULL JOIN,UNION,UNION ALL。
·?熟悉聚集函數(shù)的使用,sum,avg,count,max,min,以及group by和having 的配合。以及DISTINCT去重。
·?熟練使用子查詢。掌握數(shù)據(jù)庫規(guī)范化,熟悉第一范式(1NF),第二范式(2NF),第三范式(3NF)。
·?熟悉數(shù)據(jù)庫理論中數(shù)據(jù)模型,及關(guān)系模型。
·?完成模塊功能需求的數(shù)據(jù)庫設(shè)計(jì)。
·?熟練使用index優(yōu)化查詢性能。
·?了解存儲(chǔ)過程、自定義函數(shù)、觸發(fā)器、視圖的使用。
·?熟悉程序?qū)?shù)據(jù)庫事務(wù)處理。
·?了解各數(shù)據(jù)庫對(duì)數(shù)字、字符串、時(shí)間的處理函數(shù)。
·?熟練使用PowerDesigner進(jìn)行表結(jié)構(gòu)設(shè)計(jì)。熟練
·?熟練進(jìn)行系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)。
·?了解各數(shù)據(jù)庫對(duì)數(shù)據(jù)類型處理上的差異。
·?優(yōu)化表的設(shè)計(jì)提高性能需求。
·?熟練使用分表分區(qū)等特性。
·?了解索引機(jī)制及類型。
·?熟練運(yùn)用數(shù)據(jù)控制 (DCL),GRANT、REVOKE。
·?熟練使用explain分析SQL的執(zhí)行計(jì)劃。數(shù)據(jù)庫系統(tǒng)相關(guān)
·?主要針對(duì)常用的數(shù)據(jù)庫,mysql,oracle,SQLServer。當(dāng)然其它數(shù)據(jù)庫的要求也類似。入門開發(fā)環(huán)境的數(shù)據(jù)庫的安裝配置。
·?熟練使用數(shù)據(jù)庫對(duì)應(yīng)的客戶端,Mysql常用SQLyog,oracle常用的是PL/SQL Developer,SQLServer自帶的客戶端。另外通用的客戶端navicat和Toad都比較強(qiáng)大。
·?程序連接數(shù)據(jù)庫。
·?掌握了解各數(shù)據(jù)庫系統(tǒng)的組成部分。
·?Mysql了解innodb文件組成,及結(jié)構(gòu)。oracle的文件,表空間,數(shù)據(jù)塊,區(qū),段等。
·?了解各數(shù)據(jù)庫的SQL的執(zhí)行過程。熟練
·?熟悉各數(shù)據(jù)庫的體系結(jié)構(gòu)。
·?熟悉分表分庫的方案。
·?了解集群的部署。如Oracle的RAC,MySQL集群的各種方案。
·?了解讀寫分離的方案(主備),了解binlog。
·?了解數(shù)據(jù)庫系統(tǒng)層級(jí)的優(yōu)化方案。
總結(jié)
以上是生活随笔為你收集整理的java开发数据库属于后端吗_JavaWeb后端开发,数据库知识需要掌握到何种程度?...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python实现神经网络的正向传播(fp
- 下一篇: java标识符与关键字_4、Java标识