php開發基礎入門,Spring簡單入門實例

 2023-10-12 阅读 30 评论 0

摘要:前言 這一篇只是簡單感受一下Spring MVC. 環境和jar包準備 1.? IDE- eclipse3.7 2. Spring 下載地址: ?Spring3.2.3? -- http://repo.springsource.org/libs-release-local/org/springframework/spring/3.2.3.RELEASE/spring-framework-3.2.3.RELEASE-dist.zip ?Sprin

前言

這一篇只是簡單感受一下Spring MVC.

環境和jar包準備

1.? IDE- eclipse3.7

2. Spring 下載地址:

?Spring3.2.3? -- http://repo.springsource.org/libs-release-local/org/springframework/spring/3.2.3.RELEASE/spring-framework-3.2.3.RELEASE-dist.zip
?Spring3.0.2? --? http://s3.amazonaws.com/dist.springframework.org/release/SPR/spring-framework-3.0.2.RELEASE-dependencies.zip

3.2.3 是Spring 較新的版本, 目前最高的版本是4.0.0。

php開發基礎入門。

為什么這里給兩個版本的地址?

原因是:
spring 需要一些其他的依賴包的支持,比如 log4j, jstl 等,

spring 的版本發布中, 有的版本有同步發布依賴包的下載, 有的卻沒有。 以上3.0.2的版本有, 3.2.3 的版本卻沒有。(猜想可能是依賴包沒有更改的緣故吧)

如果只是學習的話, 直接下載3.0.2的版本就可以了; 如果是開發,要求使用spring 的最新版的話,就搭配使用spring 的最新版和依賴包的舊版。

Spring詳解,

這里的例子很簡單, 就是用spring mvc 從一個index.jsp 的頁面轉到一個登錄的頁面 (login.jsp)。


步驟

1. 在Eclipse 下新建Dynamic Web Project.

(這里project 取名為"springweb")

Spring Framework。2. 將下載的spring 包和依賴包拷到工程的 WebContent/WEB-INF/lib 下。

3. 修改 WEB-INF 下的web.xml 文件

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"><display-name>springweb</display-name><servlet>  <servlet-name>spring-dispatcher</servlet-name>  <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>  <init-param>  <param-name>contextConfigLocation</param-name>  <param-value>classpath*:com/oscar999/resource/spring-dispather.xml</param-value>  </init-param>  <load-on-startup>1</load-on-startup>  </servlet>   <servlet-mapping>  <servlet-name>spring-dispatcher</servlet-name>  <url-pattern>*.do</url-pattern>  </servlet-mapping>  <welcome-file-list>  <welcome-file>index.jsp</welcome-file>  </welcome-file-list>  
</web-app>

這里配置了核心控制器, 攔截 *.do 的請求,交由spring 處理,

處理的依據是spring-dispather.xml 這份文件。

Springboot教程?這個文件的配置方式是: classpath*:com/oscar999/resource/spring-dispather.xml, 也就是配置xml 文件的路徑, 在javasrc 的 com.oscar999.resource? 這個包下面。

4. 添加? index.jsp

在WebContent 路徑下添加 index.jsp

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body><jsp:forward page="login.do" />
</body>
</html>

很簡單, 進入主頁面之后,直接導入到登錄頁面。

java開發實例,注意這里的page 并不是 login.jsp, 而是login.do


5. 新增IOC容器所需要的XML配置文件

也就是上面提到的spring-dispather.xml 這個文件。這個文件的命名和路徑可以指定,也可以不指定。

如果不指定路徑和名稱: 只spring 會自動到到/WEB-INF目錄下找命名為<servlet-name>-servlet.xml的文件。

基礎入門教程、指定路徑和名稱,就是 以上描述的方式了。

在java src 下新增com.oscar999.resource的package. 新增spring-dispather.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" xmlns:p="http://www.springframework.org/schema/p"  xmlns:context="http://www.springframework.org/schema/context"  xmlns:util="http://www.springframework.org/schema/util" xmlns:mvc="http://www.springframework.org/schema/mvc"  xsi:schemaLocation="  http://www.springframework.org/schema/util  http://www.springframework.org/schema/util/spring-util-3.1.xsd  http://www.springframework.org/schema/beans   http://www.springframework.org/schema/beans/spring-beans-3.1.xsd  http://www.springframework.org/schema/context   http://www.springframework.org/schema/context/spring-context-3.1.xsd  http://www.springframework.org/schema/mvc  http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd">  <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"><property name="mappings"><props><prop key="login.do">loginController</prop></props></property></bean>    <bean id="loginController" class="org.springframework.web.servlet.mvc.ParameterizableViewController"><property name="viewName" value="login" /></bean><bean class="org.springframework.web.servlet.view.UrlBasedViewResolver"><property name="viewClass" value="org.springframework.web.servlet.view.JstlView" /><property name="prefix" value="/WEB-INF/jsp/" /><property name="suffix" value=".jsp" /></bean></beans>
這里定義了一個action 和 Controller,

當action 是 "login.do" 的時候,使用loginController,? 找到viewName 是 "login"; 再配合UrlBasedViewResolver.

數據分析入門教學視頻?最后組出 處理這個action 的 jsp 是? ==> /WEB-INF/jsp/login.jsp


6. 新建login.jsp

這里面的內容就無所謂了;

<%@ page language="java" contentType="text/html; charset=utf-8"pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body>
<h5 style="color:pink" >Spring MVC Demo 用戶注冊</h5>
<form action="user.do" method="post"><table><tr><td>賬號:</td><td><input type="text" name="id" /></td></tr><tr><td>姓名:</td><td><input type="text" name="name" /></td></tr><tr><td>生日:</td><td><input type="text" name="birth" /></td></tr><tr><td>卡號:</td><td><input type="text" name="cardID" /></td></tr><tr><td><input type="submit" value=" 提 交 "/></td><td align="center"><input type="reset" value=" 重 置 "/></td></tr></table>
</form>
</body>
</html>

總結

實例,從這個例子來看, 只是使用 *.do 取代了? *.jsp 的方式。

然后在xml 去配置 那個 *.do action 最終使用 哪個jsp.

隱約看上去是實現了C 和 V的分離。

Spring 更多的優勢, 就要深入學習了....


附加

java流程,1.

以上

    <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"><property name="mappings"><props><prop key="login.do">loginController</prop></props></property></bean>    <bean id="loginController" class="org.springframework.web.servlet.mvc.ParameterizableViewController"><property name="viewName" value="login" /></bean>
可以替換成以下方式也可以

    <bean name="/login.do" class="org.springframework.web.servlet.mvc.ParameterizableViewController"><property name="viewName" value="login" /></bean>

2. UrlFilenameViewController

python入門例子、

該Controller對XXX.do解析成XXX.jsp


3. ParameterizableViewController 創建帶有參數化視圖的控制器?

?可以配置 viewName 的property 配置view 的名字。

Spring常用的三種注入方式,以上例子可以是login? , 也可以是login2, 對應建立對應的jsp 就可以了。


版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/5/135124.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息