• <noscript id="e0iig"><kbd id="e0iig"></kbd></noscript>
  • <td id="e0iig"></td>
  • <option id="e0iig"></option>
  • <noscript id="e0iig"><source id="e0iig"></source></noscript>
  • springmvc學習(idea版)

    標簽: springmvc  spring

    springmvc學習(idea創建一個springmvc項目)

    環境準備步驟如下

    一,先創建一個空的maven父工程,并且去掉src包,此時是一個干凈的項目

    [外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-kpx2ei0N-1591324669840)(C:\Users\18035\AppData\Roaming\Typora\typora-user-images\image-20200602193001433.png)]

    二,建好后刪除src包

    [外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-6LH54lNb-1591324669846)(C:\Users\18035\AppData\Roaming\Typora\typora-user-images\image-20200602193123785.png)]

    三,給pom.xml文件導入依賴(此依賴包含servlet,junit,stl,還有springmvc)

    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
        </dependency>
            <dependency>
                <groupId>javax.servlet</groupId>
                <artifactId>servlet-api</artifactId>
                <version>2.5</version>
            </dependency>
            <dependency>
                <groupId>javax.servlet.jsp</groupId>
                <artifactId>javax.servlet.jsp-api</artifactId>
                <version>2.3.3</version>
            </dependency>
            <dependency>
                <groupId>javax.servlet.jsp.jstl</groupId>
                <artifactId>jstl-api</artifactId>
                <version>1.2</version>
            </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>5.1.9.RELEASE</version>
        </dependency>
            <dependency>
                <groupId>taglibs</groupId>
                <artifactId>standard</artifactId>
                <version>1.1.2</version>
            </dependency>
    
    </dependencies>
    

    四,創建子項目(此子項目也是和父項目一樣,只勾選maven,不用勾選別的)

    !](https://img-blog.csdnimg.cn/20200605105209238.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQyMzcwNTA1,size_16,color_FFFFFF,t_70)

    五,給子項目添加框架支持

    在這里插入圖片描述
    在這里插入圖片描述

    六,成功后界面

    由于之前父項目導過依賴,所以會自動被子項目繼承,以后的子項目都不用再導入這些依賴

    在這里插入圖片描述

    創建一個hello world程序

    首先配置web.xml文件

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
             version="4.0">
        <servlet>
            servlet名字
            <servlet-name>hellospringmvc</servlet-name>
            固定的springmvc包
            <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
            <!--注冊配置文件-->
            <init-param>
                <param-name>contextConfigLocation</param-name>
                <param-value>classpath:springmvc-servlet.xml</param-value>
            </init-param>
            服務器加載順序為第一
            <load-on-startup>1</load-on-startup>
        </servlet>
        <servlet-mapping>
            <servlet-name>hellospringmvc</servlet-name>
            /只匹配所有請求,不會匹配所有jsp頁面
            /*匹配所有請求,包括jsp頁面
            區別
            <url-pattern>/</url-pattern>
        </servlet-mapping>
    </web-app>
    

    在resource文件下創建一個springmvc-servlet.xml文件

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation="http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans.xsd">
            <!--可有可無,這兩個是為了讓人懂得原理去掉也可以-->
        <!--配置Handlermapping映射器-->
        <bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping" id="BeanNameUrlHandlerMapping"></bean>
        <!--配置適配器-->
        <bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter" id="SimpleControllerHandlerAdapter"></bean>
        <!--配置視圖解析器DispatcherServlet給他的ModleView-->
        <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" id="InternalResourceViewResolver">
            <property name="prefix" value="/WEB-INF/jsp/"/>
            <property name="suffix" value=".jsp"/>
        </bean>
        <!--handler,這個作用是轉發到某個具體的controller類,給controller注冊-->
        <bean id="/hellospringmvc" class="com.lxz.controller.HelloController"></bean>
    </beans>
    

    這樣配置是根據其原理來配的,真實開發不會這么繁瑣,會省略很多東西

    原理圖如下:(實線是系統幫實現的,虛線自己做的,按照標號的順序來)

    DIspatcherServlet(分發)---->Handler(處理轉發信息)------>handlerAdapter(適配器,選擇哪個controller)------->controller-------->viewresolver(視圖處理器)----->.jsp

    在這里插入圖片描述

    創建一個controller類

    public class HelloController implements Controller
    {
        @Override
        public ModelAndView handleRequest(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws Exception {
            ModelAndView mc = new ModelAndView();
            mc.addObject("msg","HelloController");
            mc.setViewName("hello");
            return mc;
        }
    }
    

    [外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-GenRpEC0-1591324669856)(C:\Users\18035\OneDrive - 中國加油!武漢加油!\Desktop\markdown\img\Snipaste_2020-06-05_09-59-02.png)]

    接受頁面

    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <html>
    <head>
        <title>Title</title>
    </head>
    <body>
    ${msg}
    </body>
    </html>
    

    [外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-YY2oNVQm-1591324669857)(C:\Users\18035\AppData\Roaming\Typora\typora-user-images\image-20200605103545125.png)]

    這算是一個復雜的形式,還有更加簡單的形式,就是用注解,接下來會用注解開發

    版權聲明:本文為qq_42370505原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。
    本文鏈接:https://blog.csdn.net/qq_42370505/article/details/106566293

    智能推薦

    SpringMVC教程IDEA版-3天-2018黑馬SSM-03-筆記

    https://www.bilibili.com/video/av47953244 10.請求參數綁定 自定義類型轉換器 16.獲取Servlet原生的API 17.RequestParam注解:  18.RequestBody注解: body代表你提交的整個內容 19.PathVariable注解: 21.RequestHeader   23.ModelAttribute注解...

    HTML中常用操作關于:頁面跳轉,空格

    1.頁面跳轉 2.空格的代替符...

    freemarker + ItextRender 根據模板生成PDF文件

    1. 制作模板 2. 獲取模板,并將所獲取的數據加載生成html文件 2. 生成PDF文件 其中由兩個地方需要注意,都是關于獲取文件路徑的問題,由于項目部署的時候是打包成jar包形式,所以在開發過程中時直接安照傳統的獲取方法沒有一點文件,但是當打包后部署,總是出錯。于是參考網上文章,先將文件讀出來到項目的臨時目錄下,然后再按正常方式加載該臨時文件; 還有一個問題至今沒有解決,就是關于生成PDF文件...

    電腦空間不夠了?教你一個小秒招快速清理 Docker 占用的磁盤空間!

    Docker 很占用空間,每當我們運行容器、拉取鏡像、部署應用、構建自己的鏡像時,我們的磁盤空間會被大量占用。 如果你也被這個問題所困擾,咱們就一起看一下 Docker 是如何使用磁盤空間的,以及如何回收。 docker 占用的空間可以通過下面的命令查看: TYPE 列出了docker 使用磁盤的 4 種類型: Images:所有鏡像占用的空間,包括拉取下來的鏡像,和本地構建的。 Con...

    requests實現全自動PPT模板

    http://www.1ppt.com/moban/ 可以免費的下載PPT模板,當然如果要人工一個個下,還是挺麻煩的,我們可以利用requests輕松下載 訪問這個主頁,我們可以看到下面的樣式 點每一個PPT模板的圖片,我們可以進入到詳細的信息頁面,翻到下面,我們可以看到對應的下載地址 點擊這個下載的按鈕,我們便可以下載對應的PPT壓縮包 那我們就開始做吧 首先,查看網頁的源代碼,我們可以看到每一...

    猜你喜歡

    Linux C系統編程-線程互斥鎖(四)

    互斥鎖 互斥鎖也是屬于線程之間處理同步互斥方式,有上鎖/解鎖兩種狀態。 互斥鎖函數接口 1)初始化互斥鎖 pthread_mutex_init() man 3 pthread_mutex_init (找不到的情況下首先 sudo apt-get install glibc-doc sudo apt-get install manpages-posix-dev) 動態初始化 int pthread_...

    統計學習方法 - 樸素貝葉斯

    引入問題:一機器在良好狀態生產合格產品幾率是 90%,在故障狀態生產合格產品幾率是 30%,機器良好的概率是 75%。若一日第一件產品是合格品,那么此日機器良好的概率是多少。 貝葉斯模型 生成模型與判別模型 判別模型,即要判斷這個東西到底是哪一類,也就是要求y,那就用給定的x去預測。 生成模型,是要生成一個模型,那就是誰根據什么生成了模型,誰就是類別y,根據的內容就是x 以上述例子,判斷一個生產出...

    styled-components —— React 中的 CSS 最佳實踐

    https://zhuanlan.zhihu.com/p/29344146 Styled-components 是目前 React 樣式方案中最受關注的一種,它既具備了 css-in-js 的模塊化與參數化優點,又完全使用CSS的書寫習慣,不會引起額外的學習成本。本文是 styled-components 作者之一 Max Stoiber 所寫,首先總結了前端組件化樣式中的最佳實踐原則,然后在此基...

    基于TCP/IP的網絡聊天室用Java來實現

    基于TCP/IP的網絡聊天室實現 開發工具:eclipse 開發環境:jdk1.8 發送端 接收端 工具類 運行截圖...

    精品国产乱码久久久久久蜜桃不卡