<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                [TOC] # 注解方式 前面的例子,都是使用配置的方式進行跳轉的配置,本例講解如何使用注解的方式進行跳轉的配置 ## 步驟 1 : 先運行,看到效果,再學習 先將完整的項目(向老師要相關資料),配置運行起來,確認可用之后,再學習做了哪些步驟以達到這樣的效果。 ## 步驟 2 : 模仿和排錯 在確保可運行項目能夠正確無誤地運行之后,再嚴格照著教程的步驟,對代碼模仿一遍。 模仿過程難免代碼有出入,導致無法得到期望的運行結果,此時此刻通過比較**正確答案** ( 可運行項目 ) 和自己的代碼,來定位問題所在。 采用這種方式,**學習有效果,排錯有效率**,可以較為明顯地提升學習速度,跨過學習路上的各個檻。 ## 步驟 3 : 效果 雖然效果和Hello Spring MVC中的一樣,但是開發過程已經換成了**注解方式** ![](https://box.kancloud.cn/3562460d2dad52d748734138eaba9139_526x177.png) ## 步驟 4 : 修改IndexController 在類前面加上@Controller 表示該類是一個控制器 在方法handleRequest 前面加上 @RequestMapping("/index") 表示路徑/index會映射到該方法上 注意:不再讓IndexController實現Controller接口 ~~~ package com.dodoke.controller; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView; @Controller public class IndexController{ @RequestMapping("/index") public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception { ModelAndView mav = new ModelAndView("index"); mav.addObject("message", "Hello SpringMVC"); return mav; } } ~~~ ## 步驟 5 : 修改springmvc-servlet.xml 去掉映射相關的配置,因為已經使用注解方式了 增加 `<context:component-scan base-package="com.dodoke.controller">` 表示從包controller下掃描有@Controller注解的類 最好直接復制這段配置代碼 ~~~ <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd"> <!-- <bean id="simpleUrlHandlerMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> <property name="mappings"> <props> <prop key="/index">indexController</prop> </props> </property> </bean> <bean id="indexController" class="com.dodoke.controller.IndexController"></bean> --> <context:component-scan base-package="com.dodoke.controller"></context:component-scan> <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/page/"></property> <property name="suffix" value=".jsp"></property> </bean> </beans> ~~~ ## 步驟 6 : 測試 打開頁面 `http://localhost:8080/springmvc/index` 看到的效果和通過配置是一樣的 ![](https://box.kancloud.cn/3562460d2dad52d748734138eaba9139_526x177.png) ## 常見問題 1. 配置方式和注解方式有什么不同? > 那么到底該用注解,還是xml文件配置方式呢? 他們各自有各自的優缺點: > XML配置方式: > 優:容易編輯,配置比較集中,方便修改,在大業務量的系統里面,通過xml配置會方便后人理解整個系統的架構,修改之后直接重啟應用即可 > 缺:比較繁瑣,配置形態丑陋, 配置文件過多的時候難以管理 > 注解方式: > 優:方便,簡潔,配置信息和 Java 代碼放在一起,有助于增強程序的內聚性。 > 缺:分散到各個class文件中,所以不宜維護, 修改之后你需要重新打包,發布,重啟應用。 > **個人體會**: 小項目,參與人數不多,不復雜的用注解,開發快速。 復雜項目,多人交互,配置量大,維護復雜度高的,用配置文件。 2. 可以xml和注解一起用嗎? > 可以,不過不建議,通常來說會統一做法,這樣除了問題,大家對問題定位的位置有個預判。 如果兩種方式同時用,在調試的時候,容易混淆。 3. 下列代碼含義? ~~~ <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd"> ~~~ > 這是xml的命名空間和一些dtd,在這些空間里定義了標簽context, 以及他的屬性和子節點和相應的語法規范,你想要使用標簽context需要引入相應的dtd. 類似于java類的imort 類。學習SpringMVC不需要深入了解xml,會用就可以了。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看