最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

【JavaWeb】復(fù)習(xí)重點(diǎn)內(nèi)容

2023-04-14 19:24 作者:下班被游戲打-  | 我要投稿


JavaWeb復(fù)習(xí)重點(diǎn)

一、問(wèn)答題7個(gè)左右,共40分

1.Servlet的定義、配置(使用xml或注解)

2.重定向與請(qǐng)求轉(zhuǎn)發(fā)的區(qū)別,使用API完成重定向和轉(zhuǎn)發(fā)

3.重定向與請(qǐng)求轉(zhuǎn)發(fā)的優(yōu)缺點(diǎn)

4.給出了Servlet的代碼實(shí)現(xiàn),讓大家用JSP來(lái)實(shí)現(xiàn)該功能

5.JavaBean的規(guī)范,應(yīng)該詳細(xì)掌握

6.給出了Servlet的代碼實(shí)現(xiàn),讓大家用JSTL來(lái)實(shí)現(xiàn)該功能

7.過(guò)濾器的概念,寫(xiě)出一個(gè)過(guò)濾器類

8.JPA中實(shí)體類、以及實(shí)體關(guān)系映射,一對(duì)一、一對(duì)多

9.Spring控制器的類的編寫(xiě)、路徑的配置、注入組件、返回Json數(shù)據(jù)

二、編程題4個(gè)題,共60分

1.題目給出了數(shù)據(jù)庫(kù)、表等信息,要求使用JDBC完成增刪改查這些操作,可能需要事務(wù)

2.編寫(xiě)Servlet接收請(qǐng)求參數(shù),并保存到某個(gè)作用域

3.JPA的編程題,題目給出數(shù)據(jù)庫(kù)和表,讓大家使用JPA完成實(shí)體類及使用EntityManager完成增刪改查操作

4.JSP+Servet+JavaBean開(kāi)發(fā)模式完成系統(tǒng)功能

三、附加一些常用配置

1.JDBC-DBConnection

2.直接連接方式

3.JDBC-CRUD

4. Session 校驗(yàn) (用戶登錄)

5.JPA

6.JavaBean

7.JSP展示層代碼

8.JSTL

javaweb期末題型有2大類:?jiǎn)柎痤}、編程題


一、問(wèn)答題7個(gè)左右,共40分

1.Servlet的定義、配置(使用xml或注解)

Servlet是用Java編寫(xiě)的服務(wù)器端程序,其主要功能在于交互式地瀏覽和修改數(shù)據(jù),生成動(dòng)態(tài)Web內(nèi)容。狹義的Servlet是指Java語(yǔ)言實(shí)現(xiàn)的一個(gè)接口,廣義的Servlet是指任何實(shí)現(xiàn)了這個(gè)Servlet接口的類。


Servlet的配置有xml和注解兩種方式


xml方式:

注解方式:在類上使用注解@WebServlet注解配置


2.重定向與請(qǐng)求轉(zhuǎn)發(fā)的區(qū)別,使用API完成重定向和轉(zhuǎn)發(fā)

重定向(Redirect)和請(qǐng)求轉(zhuǎn)發(fā)(Forward)是兩種不同的HTTP請(qǐng)求處理機(jī)制。


重定向是在接收到請(qǐng)求后,服務(wù)器向客戶端返回一個(gè)特殊的響應(yīng),指示客戶端重新向指定的url發(fā)送請(qǐng)求,這個(gè)過(guò)程是完全由客戶端完成的,客戶端會(huì)發(fā)送一個(gè)新的請(qǐng)求到指定的url,并接收新的響應(yīng)。重定向經(jīng)常被用來(lái)處理資源的移動(dòng),url的更改,或者是需要訪問(wèn)其他網(wǎng)站的情況。


請(qǐng)求轉(zhuǎn)發(fā)則是在服務(wù)器端將請(qǐng)求轉(zhuǎn)發(fā)給另一個(gè)資源進(jìn)行處理,這個(gè)過(guò)程是在服務(wù)器內(nèi)部完成的??蛻舳税l(fā)送請(qǐng)求到服務(wù)器,服務(wù)器會(huì)將請(qǐng)求轉(zhuǎn)發(fā)到另一個(gè)資源進(jìn)行處理,然后將處理結(jié)果返回給客戶端。請(qǐng)求轉(zhuǎn)發(fā)經(jīng)常被用來(lái)組合多個(gè)資源進(jìn)行處理,例如在JSP中使用include指令將多個(gè)JSP頁(yè)面組合在一起。


重定向:



在以上示例代碼中,response和request是javax.servlet.http.HttpServletResponse和javax.servlet.http.HttpServletRequest的實(shí)例對(duì)象。重定向通過(guò)調(diào)用sendRedirect()方法并傳入要重定向到的URL字符串來(lái)實(shí)現(xiàn)。請(qǐng)求轉(zhuǎn)發(fā)則通過(guò)創(chuàng)建一個(gè)RequestDispatcher對(duì)象,該對(duì)象通過(guò)getRequestDispatcher()方法獲取,并傳入要轉(zhuǎn)發(fā)到的資源的路徑,然后調(diào)用forward()方法來(lái)實(shí)現(xiàn)。在請(qǐng)求轉(zhuǎn)發(fā)中,request和response對(duì)象被傳遞給了要轉(zhuǎn)發(fā)到的資源。


需要注意的是,重定向會(huì)向客戶端發(fā)送一個(gè)新的請(qǐng)求,因此客戶端的URL會(huì)發(fā)生改變,而請(qǐng)求轉(zhuǎn)發(fā)是在服務(wù)器內(nèi)部完成的,客戶端的URL不會(huì)改變。


3.重定向與請(qǐng)求轉(zhuǎn)發(fā)的優(yōu)缺點(diǎn)

重定向的優(yōu)點(diǎn):


1.簡(jiǎn)單易用:使用response.sendRedirect()方法非常簡(jiǎn)單,可以很容易地將客戶端重定向到其他URL。

2.安全性高:重定向會(huì)向客戶端發(fā)送一個(gè)新的請(qǐng)求,因此客戶端的URL會(huì)發(fā)生改變,可以避免某些安全漏洞,比如在表單提交后刷新頁(yè)面導(dǎo)致的重復(fù)提交等。

重定向的缺點(diǎn):


1.頻繁網(wǎng)絡(luò)請(qǐng)求:重定向會(huì)向客戶端發(fā)送一個(gè)新的請(qǐng)求,會(huì)導(dǎo)致網(wǎng)絡(luò)請(qǐng)求的增加,影響性能。

2.無(wú)法訪問(wèn)原始請(qǐng)求對(duì)象:重定向會(huì)生成一個(gè)新的請(qǐng)求對(duì)象,因此無(wú)法訪問(wèn)原始請(qǐng)求對(duì)象,如原始的HTTP請(qǐng)求頭等。

請(qǐng)求轉(zhuǎn)發(fā)的優(yōu)點(diǎn):


1.性能高:請(qǐng)求轉(zhuǎn)發(fā)是在服務(wù)器內(nèi)部完成的,不會(huì)向客戶端發(fā)送新的請(qǐng)求,因此不會(huì)增加網(wǎng)絡(luò)請(qǐng)求,性能比較高。

2.可以訪問(wèn)原始請(qǐng)求對(duì)象:請(qǐng)求轉(zhuǎn)發(fā)可以訪問(wèn)原始請(qǐng)求對(duì)象,如原始的HTTP請(qǐng)求頭等。

請(qǐng)求轉(zhuǎn)發(fā)的缺點(diǎn):


1.不適用于跨域請(qǐng)求:由于請(qǐng)求轉(zhuǎn)發(fā)只能轉(zhuǎn)發(fā)到同一Web應(yīng)用程序中的資源,因此不能用于跨域請(qǐng)求。

2.不支持修改URL:請(qǐng)求轉(zhuǎn)發(fā)是在服務(wù)器內(nèi)部完成的,客戶端無(wú)法感知,也無(wú)法修改URL。


4.給出了Servlet的代碼實(shí)現(xiàn),讓大家用JSP來(lái)實(shí)現(xiàn)該功能

這個(gè)參考課本


使用JSP實(shí)現(xiàn)重定向和請(qǐng)求轉(zhuǎn)發(fā)的示例代碼:


5.JavaBean的規(guī)范,應(yīng)該詳細(xì)掌握

JavaBean是一種符合Java語(yǔ)言規(guī)范的特殊類,通常用于存儲(chǔ)和操作數(shù)據(jù)。JavaBean類應(yīng)該遵循以下規(guī)范:


應(yīng)該提供一個(gè)無(wú)參的構(gòu)造方法:JavaBean的構(gòu)造方法應(yīng)該是無(wú)參的,這樣可以方便地在其他類中創(chuàng)建JavaBean的實(shí)例。無(wú)參構(gòu)造方法可以通過(guò)手動(dòng)編寫(xiě)或者使用編譯器自動(dòng)生成的方式實(shí)現(xiàn)。

所有屬性應(yīng)該私有化:JavaBean的屬性應(yīng)該使用private修飾符進(jìn)行私有化,通過(guò)提供公共的getter和setter方法來(lái)訪問(wèn)屬性。

getter和setter方法的命名應(yīng)該符合JavaBean命名規(guī)范:JavaBean的getter和setter方法應(yīng)該遵循一定的命名規(guī)范。getter方法的名稱應(yīng)該以“get”開(kāi)頭,setter方法的名稱應(yīng)該以“set”開(kāi)頭,后面跟著屬性名的首字母大寫(xiě)的形式。

應(yīng)該提供默認(rèn)的toString方法:JavaBean應(yīng)該提供一個(gè)默認(rèn)的toString方法,以便在調(diào)試和日志記錄時(shí)方便查看JavaBean的屬性值。

應(yīng)該提供其他有用的方法:除了getter和setter方法以外,JavaBean還可以提供一些其他的有用方法,例如校驗(yàn)方法、計(jì)算方法等。

6.給出了Servlet的代碼實(shí)現(xiàn),讓大家用JSTL來(lái)實(shí)現(xiàn)該功能

這個(gè)參考課本


JSTL(JavaServer Pages Standard Tag Library)是一個(gè)標(biāo)準(zhǔn)的JSP標(biāo)簽庫(kù),提供了一些常用的標(biāo)簽,可以方便地實(shí)現(xiàn)一些常見(jiàn)的操作,包括重定向和轉(zhuǎn)發(fā)。以下是使用JSTL實(shí)現(xiàn)重定向和轉(zhuǎn)發(fā)的示例代碼:

7.過(guò)濾器的概念,寫(xiě)出一個(gè)過(guò)濾器類

過(guò)濾器(Filter)是Java Web應(yīng)用程序中的一個(gè)重要組件,可以攔截客戶端請(qǐng)求和服務(wù)器響應(yīng),對(duì)它們進(jìn)行預(yù)處理和后處理,實(shí)現(xiàn)一些通用的功能,例如日志記錄、權(quán)限控制、字符編碼轉(zhuǎn)換等。


一個(gè)過(guò)濾器類必須實(shí)現(xiàn)javax.servlet.Filter接口,并重寫(xiě)其中的doFilter()方法。以下是一個(gè)簡(jiǎn)單的過(guò)濾器類的示例代碼,實(shí)現(xiàn)了字符編碼轉(zhuǎn)換的功能:

以上代碼中,使用@WebFilter注解配置了過(guò)濾器的名稱和URL模式。filterName屬性指定過(guò)濾器的名稱,urlPatterns屬性指定需要過(guò)濾的URL模式。在此示例中,過(guò)濾器會(huì)攔截所有的請(qǐng)求。


以上代碼中,CharacterEncodingFilter類實(shí)現(xiàn)了javax.servlet.Filter接口,并重寫(xiě)了其中的init()、doFilter()和destroy()方法。init()方法在過(guò)濾器初始化時(shí)被調(diào)用,讀取初始化參數(shù)并設(shè)置字符編碼;doFilter()方法用于實(shí)現(xiàn)過(guò)濾功能,設(shè)置請(qǐng)求和響應(yīng)的字符編碼,并調(diào)用后續(xù)的過(guò)濾器或Servlet/JSP處理請(qǐng)求;destroy()方法在過(guò)濾器銷毀時(shí)被調(diào)用,釋放資源。


需要注意的是,過(guò)濾器配置除了注解的這種方式也可以在Web應(yīng)用程序的web.xml文件中,通過(guò)過(guò)濾器鏈(Filter Chain)的方式實(shí)現(xiàn)多個(gè)過(guò)濾器的協(xié)同工作。過(guò)濾器的順序可以通過(guò)<filter-mapping>元素中的<url-pattern>子元素來(lái)指定。


8.JPA中實(shí)體類、以及實(shí)體關(guān)系映射,一對(duì)一、一對(duì)多

在 JPA 中,實(shí)體類是指映射到數(shù)據(jù)庫(kù)表的 Java 類。實(shí)體類通常具有以下特點(diǎn):


實(shí)體類使用 @Entity 注解進(jìn)行標(biāo)記。

實(shí)體類的每個(gè)實(shí)例對(duì)應(yīng)數(shù)據(jù)庫(kù)表中的一行數(shù)據(jù)。

實(shí)體類的屬性對(duì)應(yīng)數(shù)據(jù)庫(kù)表中的列。

JPA 中的實(shí)體關(guān)系映射用于描述實(shí)體類之間的關(guān)聯(lián)關(guān)系,包括一對(duì)一、一對(duì)多、多對(duì)一和多對(duì)多關(guān)系。其中,一對(duì)一和一對(duì)多是較為常見(jiàn)的關(guān)系類型。

上述代碼中,Person 和 Address 分別是兩個(gè)實(shí)體類。它們之間的關(guān)系是一對(duì)一,通過(guò) @OneToOne 注解進(jìn)行映射。Person 實(shí)體類中的 address 屬性使用 @OneToOne 注解,表示它與 Address 實(shí)體類是一對(duì)一關(guān)系。Address 實(shí)體類中的 person 屬性也使用了 @OneToOne 注解,但是它的 mappedBy 屬性指向了 Person 實(shí)體類的 address 屬性,表示這是一個(gè)雙向關(guān)聯(lián),并且由 Person 實(shí)體類來(lái)維護(hù)關(guān)系。


一對(duì)多關(guān)系映射示例:


上述代碼中,Department 和 Employee 分別是兩個(gè)實(shí)體類。它們之間的關(guān)系是一對(duì)多,通過(guò) @OneToMany 和 @ManyToOne 注解進(jìn)行映射。Department 實(shí)體類中的 employees 屬性使用了 @OneToMany 注解,表示它與 Employee 實(shí)體類是一對(duì)多關(guān)系。Employee 實(shí)體類中的 department 屬性使用了 @ManyToOne 注解,表示它與 Department 實(shí)體類是多對(duì)一關(guān)系,并且它的 department 屬性指向了 Department 實(shí)體類的 employees 屬性,表示這是一個(gè)雙向關(guān)聯(lián),并且由 Department 實(shí)體類來(lái)維護(hù)關(guān)系。


需要注意的是,上述示例中使用了 JPA 中的級(jí)聯(lián)操作(CascadeType.ALL),表示當(dāng)父實(shí)體被刪除時(shí),子實(shí)體也將被刪除。這種級(jí)聯(lián)操作可能會(huì)對(duì)數(shù)據(jù)產(chǎn)生不可逆的影響,因此需要謹(jǐn)慎使用。


9.Spring控制器的類的編寫(xiě)、路徑的配置、注入組件、返回Json數(shù)據(jù)

在 Spring 中,控制器是指負(fù)責(zé)處理請(qǐng)求和響應(yīng)的組件,通常由一個(gè) Java 類實(shí)現(xiàn)。以下是 Spring 控制器類的編寫(xiě)、路徑配置、注入組件和返回 JSON 數(shù)據(jù)的示例:

在上述示例中,我們定義了一個(gè)名為 UserController 的控制器類,并使用 @Controller 注解標(biāo)記它。@RequestMapping 注解用于配置控制器類的路徑前綴,即 /api/users。這意味著,當(dāng)請(qǐng)求的路徑以 /api/users 開(kāi)頭時(shí),Spring 將會(huì)把請(qǐng)求交給該控制器類來(lái)處理。


在控制器類中,我們使用了 @Autowired 注解來(lái)自動(dòng)注入一個(gè)名為 userService 的組件。這里假設(shè) UserService 是一個(gè)已經(jīng)定義好的服務(wù)組件,可以使用 @Service 注解標(biāo)記它。


控制器類中的方法使用了不同的 HTTP 方法注解,包括 @GetMapping、@PostMapping、@PutMapping 和 @DeleteMapping,用于定義請(qǐng)求的 HTTP 方法類型。這些注解后面跟隨的路徑參數(shù)用于定義具體的請(qǐng)求路徑。例如,@GetMapping("/{id}") 表示可以處理 /api/users/{id} 這樣的 GET 請(qǐng)求。


在方法中,我們使用了 @ResponseBody 注解來(lái)表示將方法的返回值直接作為響應(yīng)內(nèi)容返回給客戶端。這里,我們返回的是一個(gè) User 類型的對(duì)象,Spring 會(huì)將它自動(dòng)轉(zhuǎn)換為 JSON 格式并返回給客戶端。需要注意的是,為了能夠讓 Spring 自動(dòng)完成 JSON 轉(zhuǎn)換,我們需要在項(xiàng)目中引入相應(yīng)的 JSON 庫(kù),例如 Jackson。


總的來(lái)說(shuō),Spring 控制器類提供了方便的方式來(lái)處理 HTTP 請(qǐng)求和響應(yīng),可以通過(guò)注解配置路徑和 HTTP 方法,并且支持自動(dòng)注入組件和返回 JSON 數(shù)據(jù)等常用功能。


獲取更多JavaWeb學(xué)習(xí)資料? 點(diǎn)贊+評(píng)論資料


【JavaWeb】復(fù)習(xí)重點(diǎn)內(nèi)容的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
怀集县| 平南县| 聊城市| 金塔县| 绥滨县| 固原市| 普兰店市| 岗巴县| 泰宁县| 临夏县| 四平市| 炎陵县| 兰坪| 林西县| 尚志市| 宜春市| 宿松县| 靖西县| 雷山县| 汕头市| 清镇市| 犍为县| 皋兰县| 清镇市| 英吉沙县| 海南省| 堆龙德庆县| 普兰店市| 迭部县| 清涧县| 兴安县| 武清区| 盈江县| 临泉县| 肇州县| 垦利县| 明溪县| 松阳县| 宁强县| 道孚县| 象州县|