SpringMVC實戰教程 | 第一篇:一個在JSP頁面輸出“HelloWorld”的Spring MVC例項
配置web.xml
作用:裝載DispatcherServlet類,讀取Spring配置檔案,設定一些初始化引數,加入標記庫,設定比如 * .do 、* .form的對映等。
<servlet>
<servlet-name>dispatcherServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<!-- 初始化引數 -->
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>location</param-value>
</init-param>
<!-- load-on-startup值決定Servlet載入順序,值小優先 -->
<load-on-startup>1</load-on-startup>
</servlet >
<!-- servlet-mapping用於根據Servlet的URL來攔截請求的 下面攔截所有以do結尾的請求 -->
<servlet-mapping>
<servlet-name>dispatcherServlet</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
編寫JSP頁面index.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>第一個Spring MVC例項</title>
</head>
<%
String str= (String) request.getAttribute("helloWorld");
%>
<body>
<h1><%=str%></h1>
</body>
</html>
編寫控制器HelloWorldAction.java
在Spring裡,所有的控制器最終都可以看作是實現了Controller介面
//實現了Controller介面
public class HelloWorldAction implements Controller {
private Logger logger = Logger.getLogger(this.getClass().getName());
private String helloWorld;
private String viewPage;
public String getHelloWorld() {
return helloWorld;
}
//依賴注入顯示在頁面的文字
public void setHelloWorld(String helloWorld) {
this.helloWorld = helloWorld;
}
public String getViewPage() {
return viewPage;
}
//依賴注入要返回的頁面
public void setViewPage(String viewPage) {
this.viewPage = viewPage;
}
@Override
public ModelAndView handleRequest(javax.servlet.http.HttpServletRequest httpServletRequest,
javax.servlet.http.HttpServletResponse httpServletResponse) throws Exception {
Map model=new HashMap();
model.put("helloWorld", getHelloWorld());
ModelAndView modelAndView=new ModelAndView(getViewPage(),model);
//返回的ModelAndView用於顯示返回的頁面和頁面上的內容
return modelAndView;
}
}
配置Spring文件dispatcherServlet-servlet.xml
<!-- 定義對映,對helloWorld.do的訪問將會對映到id為helloWorldAction的Bean中 -->
<bean id="urlMapping"
class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="helloWorld.do">helloWorldAction</prop>
</props>
</property>
</bean>
<!-- 定義檢視解析器,通過viewClass屬性來指定使用的檢視 -->
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass">
<value>org.springframework.web.servlet.view.InternalResourceViewResolver</value>
</property>
</bean>
<!-- 定義控制器 -->
<bean id="helloWorldAction" class="spring.mvc.HelloWorldAction">
<property name="helloWorld">
<value>HelloWorld</value>
</property>
<!-- 依賴注入返回的頁面-->
<property name="viewPage">
<value>/index.jsp</value>
</property>
</bean>
相關推薦
SpringMVC實戰教程 | 第一篇:一個在JSP頁面輸出“HelloWorld”的Spring MVC例項
配置web.xml 作用:裝載DispatcherServlet類,讀取Spring配置檔案,設定一些初始化引數,加入標記庫,設定比如 * .do 、* .form的對映等。 <servlet> <servlet-nam
CodeIgniter 入門教程第一篇:信息發布
per 所有 控制 知識點 image doc ref har 提交 一、MVC CodeIgniter 采用MVC架構即:控制層、模型層和視圖層。 對應Application下面的文件夾 (圖1): 所有新建文件以.php結尾 視圖層
業余草 SpringCloud 教程 | 第一篇: 服務的註冊與發現Eureka(Finchley版本)
只需要 版本控制 aps 選擇 framework 電腦 右鍵 org -c 一、spring cloud簡介 鑒於《史上最簡單的Spring Cloud教程》很受讀者歡迎,再次我特意升級了一下版本,目前支持的版本為Spring Boot版本2.0.3.RELEASE,S
nginx教程第一篇:nginx安裝、配置
一、簡介 為什麼選擇Nginx? 更快 這表現在兩個方面: 一方面, 在正常情況下, 單次請求會得到更快的響應; 另一方面, 在高峰期( 如有數以萬計的併發請求) , Nginx可以比其他Web伺服器
Spring Cloud系列教程 | 第一篇:微服務架構演進
架構的演變過程: 單體架構——>垂直架構——>soa面向服務架構——>微服務架構 我們為什麼要使用Spring Cloud? 單體架構 在網站開發的前期,專案面臨的流量相對較少,單一應用可以實現我們所需要的功能,從而減少開發、部署和維護的難度。
史上最簡單的 SpringCloud 教程 | 第一篇: 服務的註冊與發現(Eureka)
一、spring cloud簡介 spring cloud 為開發人員提供了快速構建分散式系統的一些工具,包括配置管理、服務發現、斷路器、路由、微代理
史上最簡單的 SpringCloud 教程 | 第一篇: 服務的註冊與發現Eureka(Finchley版本)
一、spring cloud簡介 鑑於《史上最簡單的Spring Cloud教程》很受讀者歡迎,再次我特意升級了一下版本,目前支援的版本為Spring Boot版本2.0.3.RELEASE,Spring Cloud版本為Finchley.RELEASE。
SpringBoot進階教程 | 第一篇:YML多文件塊實現多環境配置
你是否為SpringBoot一個功能多個yml和多個properties檔案區分不同執行環境配置,經常為這些配置檔案的管理而頭疼,現在通過這篇文章,將徹底解決你的煩惱,這篇文篇介紹,怎麼通過yml檔案構建多文件塊,區分不同環境配置,自由切換不同環境啟動專案,一個
SpringCloud 教程 | 第一篇: 服務的註冊與發現(Eureka)
一、spring cloud簡介spring cloud 為開發人員提供了快速構建分散式系統的一些工具,包括配置管理、服務發現、斷路器、路由、微代理、事件匯流排、全域性鎖、決策競選、分散式會話等等。它執行環境簡單,可以在開發人員的電腦上跑。另外說明spring cloud是基
Tomcat :一個簡單的Servlet容器+Spring MVC響應流程
Spring Web MVC 處理Http請求的大致過程: 一旦Http請求到來,DispatcherSevlet將負責將請求分發。 DispatcherServlet可以認為是Spring提供的前端控制器,所有的請求都有經過它來統一分發。 在DispatcherServlet將請求分發給Spring Con
Linux實戰第一篇:Centos6.9/RHEL6.9詳細安裝攻略(LVM)
linux個人筆記分享(在線閱讀):http://note.youdao.com/noteshare?id=bb2ad6216bff8cddaa3e360c76392c9b PDF版本下載http://down.51cto.com/data/2321269本文出自 “人才雞雞” 博客,請務必保留此出處http
Shell實戰第一篇:自動批量創建用戶並配置保存自定義密碼
shell個人筆記分享(在線閱讀):http://note.youdao.com/noteshare?id=c4ee31bdcef0d28ec525bed113c93763&sub=CFE5180F8455421E9D5252FEC98AB1EDShell實戰第一篇:自動批量創建用戶並配置保存自定義密碼
Matlab高級教程_第一篇:Matlab基礎知識提煉_04
訪問 str val 函數句柄 8.4 body tro mat AI 第八節:幾大MATLAB的數據類型 8.1 數值型 8.2 字符和字符串 創建用‘ ‘ 8.3 函數句柄 8.4 結構體 創建用. 語法:struct(‘field‘, var1,‘field2‘,
Matlab高級教程_第一篇:Matlab基礎知識提煉_05
ron info ima image 數組 技術 gpo pos bsp 第九節:矩陣的操作 第十節:數組與矩陣 linspace函數 Matlab高級教程_第一篇:Matlab基礎知識提煉_05
Swing:LookAndFeel 教程第一篇——手把手教你寫出自己的 LookAndFeel
畢業 lean 能開 AC alc 我不 cli private 基礎 本文是 LookAndFeel 系列教程的第一篇。 是我在對 Swing 學習摸索中的一些微
史上最簡單的 SpringCloud 教程 | 第一篇: 服務的註冊與發現(Eureka)
add 過程 sdn 需要 2.3 boot one ini tail 最新Finchley版本請訪問:https://www.fangzhipeng.com/springcloud/2018/08/30/sc-f1-eureka/或者http://blog.csdn.n
SpringBoot學習第一篇:構建第一個SpringBoot工程
https://www.fangzhipeng.com/springboot/2017/07/11/springboot1 本文出自方誌朋的部落格 簡介spring boot 它的設計目的就是為例簡化開發,開啟了各種自動裝配,你不想寫各種配置檔案,引入相關的依賴就能迅速搭建起一
一起來學SpringBoot | 第一篇:構建第一個SpringBoot工程
文章目錄 1. 設計的目標 2. 前提 3. 建立專案 3.1. 目錄結果 3.2. pom.xml 依賴 3.3. 主函式入口 3.4. 初窺配置檔案 3.5. 測試 4. 拓展知識 4.1. 自定義Banner 5. 總結 6. 說點什麼
第一篇:微信公眾平臺開發實戰Java版之瞭解微信公眾平臺基礎知識以及資料準備
相信很多人或多或少聽說了微信公眾平臺的火熱。但是開發還是有一點門檻,鑑於挺多朋友問我怎麼開發,問多了,自己平時也進行以下總結。 所以下面給大家分享一下我的經驗: 第一部分 介紹微信公眾號的一些簡單介紹以及微信扮演的一些角色,微信公眾號的重要性。 1. 微信公眾號是什麼? 官網
vue+uni-app商城實戰 | 第一篇:【有來小店】微信小程式快速開發接入Spring Cloud OAuth2認證中心完成授權登入
![](https://i.loli.net/2020/10/25/Ns1Ep6wqyV9MrYx.gif) # 一. 前言 本篇通過實戰來講述如何使用uni-app快速進行商城微信小程式的開發以及小程式如何接入後臺Spring Cloud微服務。 有來商城 [youlai-mall](https://