Spring MVC 實現增刪改查
一、核心原理
1. 用於傳送請求給伺服器: /home.htm
2. 請求被DispatchServlet攔截到
3. DispatchServlet通過HandleMapping檢查url有沒有對應的Controller, 如果有則呼叫Controller
4. Controller開始執行業務邏輯
5. Controller執行完畢後, 如果返回字串, 則ViewResolver將字串轉化成相應的檢視物件;
如果返回ModelAndView物件, 該物件本身就包含了檢視物件資訊.
6. DispatchServlet將檢視物件中的資料輸出給伺服器.
7. 伺服器將資料輸出給客戶端.
二、REST風格
1. 查詢:
傳統: /user_query?id=123
rest: /user/123
2. 刪除:
傳統: /user_delete?id=123
rest: /user/123/delete
3. 更新:
傳統: /user_update?id=123
rest: /user/123/update
4. 列表:
傳統: /user_list
rest: /user/users
三、增刪改查
1. 程式碼結構
2. web.xml 配置DispatchServlet
- <?xmlversion="1.0"encoding="UTF-8"?>
- <web-appxmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns="http://java.sun.com/xml/ns/javaee"
- 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=
- <!-- user需要和配置檔案user-servlet.xml名字對應 -->
- <servlet>
- <servlet-name>user</servlet-name>
- <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
- <load-on-startup>1</load-on-startup>
- </servlet>
- <servlet-mapping>
- <servlet-name>user</servlet-name>
- <url-pattern>/</url-pattern>
- </servlet-mapping>
- <!-- 配置過濾器, 設定編碼為UTF-8 -->
- <filter>
- <filter-name>CharacterFilter</filter-name>
- <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
- <init-param>
- <param-name>encoding</param-name>
- <param-value>UTF-8</param-value>
- </init-param>
- </filter>
- <filter-mapping>
- <filter-name>CharacterFilter</filter-name>
- <url-pattern>/*</url-pattern>
- </filter-mapping>
- </web-app>
<load-on-startup>1</load-on-startup>是啟動順序,讓這個Servlet隨Servletp容器一起啟動。
<url-pattern>/</url-pattern> 會攔截所有的請求。
在DispatcherServlet的初始化過程中,框架會在web應用的 WEB-INF資料夾下尋找名為[servlet-name]-servlet.xml 的配置檔案,
生成檔案中定義的bean。我們配的是user,所以它會找到user-servlet.xml檔案。
3. user-servlet.xml
- <?xmlversion="1.0"encoding="UTF-8"?>
- <beansxmlns="http://www.springframework.org/schema/beans"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns:context="http://www.springframework.org/schema/context"
- xmlns:mvc="http://www.springframework.org/schema/mvc"
- xsi:schemaLocation="http://www.springframework.org/schema/mvc
- http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd
- http://www.springframework.org/schema/beans
- http://www.springframework.org/schema/beans/spring-beans.xsd
- http://www.springframework.org/schema/context
- http://www.springframework.org/schema/context/spring-context-3.1.xsd">
- <!-- spring自動掃描的包名 -->
- <context:component-scanbase-package="com.zdp"></context:component-scan>
- <!-- 使用spring註解 -->
- <mvc:annotation-driven/>
- <!-- 設定返回url字首和字尾 -->
- <beanclass="org.springframework.web.servlet.view.InternalResourceViewResolver">
- <propertyname="viewClass"value="org.springframework.web.servlet.view.JstlView"/>
- <propertyname="prefix"value="/WEB-INF/jsp/"></property>
- <propertyname="suffix"value=".jsp"></property>
- </bean>
- <!-- 指明靜態資源位置 -->
- <mvc:resourceslocation="/WEB-INF/resources/"mapping="/resources/**"/>
- </beans>
<context:component-scan/> 掃描指定的包中的類上的註解,常用的註解有:
@Controller 宣告Action元件
@Service 宣告Service元件 @Service("userService")
@Repository 宣告Dao元件
@Component 泛指元件, 當不好歸類時.
@RequestMapping("/user") 將url和類繫結
@RequestParam("name") String username 用於將指定的請求引數賦給方法中的形參, 如果請求引數名稱和形參一致, 則不需要這種寫法
@Resource 用於注入,( j2ee提供的 ) 預設按名稱裝配,@Resource(name="beanName")
@Autowired 用於注入,(srping提供的) 預設按型別裝配
@Transactional( rollbackFor={Exception.class}) 事務管理
@ResponseBody
@Scope("prototype") 設定bean的作用域
/WEB-INF/resources對映到ResourceHttpRequestHandler進行處理,location指定靜態資源的位置.
配置了<mvc:annotation-driven />,spring會自動幫我們註冊這個bean,就不須要我們顯示的註冊這個bean了。
4. User.java
- /**
- * 實體類
- */
- publicclass User {
- private String username;
- private String password;
-
public
相關推薦
Spring MVC 實現增刪改查
一、核心原理 1. 用於傳送請求給伺服器: /home.htm 2. 請求被DispatchServlet攔截到 3. DispatchServlet通過HandleMapping檢查url有沒有對應的Controller, 如果有則呼叫Contro
MyBatis-Spring(二)--SqlSessionTemplate實現增刪改查
允許 ref ack part basic pre 就是 path pda SqlSessionTemplate是個線稱安全的類,每運行一個SqlSessionTemplate時,它就會重新獲取一個新的SqlSession,所以每個方法都有一個獨立的SqlSession,這
spring-boot react一步一步實現增刪改查 元件化
在 spring-boot react一步一步實現增刪改查 中,用一個元件實現了表格和表單功能,所以現在需要將其拆分成元件獨立出來 拆分表格 建立Table.js import React, {Component} from 'react' class Tab
spring-boot react一步一步實現增刪改查
maven繼承spring-boot <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-paren
idea使用SpringBoot和Spring和Mybatis來實現增刪改查
需求: 使用新SSM來實現增刪改查 步驟 第一步:看最終包結構 糾正:資料庫連線池部分還有整合mybatis和springboot 這裡主要是匯入依賴的jar包 第二步:配置pom.xml 導包springBoot支援jdk1.8
MVC+EF實現增刪改查
在MVC的控制器中查詢資料庫中的資料,然後在用檢視顯示出來,這套流程是怎麼走的哪,下面我自己先巨集觀的總結一下。 首先,在Controllers資料夾下建立HomeController控制器,然後在ActionResult Index()方法右擊——>
微服務架構實戰篇(三):Spring boot2.0 + Mybatis + PageHelper實現增刪改查和分頁查詢功能
簡介 該專案主要利用Spring boot2.0 +Mybatis + PageHelper實現增刪改查和分頁查詢功能,快速搭建一套和資料庫互動的專案。 小工具一枚,歡迎使用和Star支援,如使用過程中碰到問題,可以提出Issue,我會盡力完善該Starter 版本基礎
spring data jpa實現增刪改查
一、引子: (1)finAll()方法: 二、增刪改查程式碼 (一)建立springboot框架 1.專案結構 2.apllication.properties配置mysql連線資訊 spring.jpa.hibernate.ddl
ztree與springmvc+spring+mybatis整合實現增刪改查
在springmvc+spring+mybatis裡整合ztree實現增刪改查,上一篇已經寫了demo,下面就只貼出各層實現功能的程式碼: Jsp頁面實現功能的js程式碼如下: <script> //用於捕獲分類編輯按鈕的 click 事件
spring連線mongodb實現增刪改查
applicationContext.xml: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans"
Spring --08.Spring整合JdbcTemplate實現增刪改查
1、建立工程並引入依賴 匯入需要引入的依賴:Spring ioc + JdbcTemplate+druid+ mysql。pom.xml內容 <?xml version="1.0" encoding="UTF-8"?> <project xmln
Spring Boot整合MongoDB實現增刪改查
MongoDB這兩年來是本人一直使用較多的,之前的使用大多通過封裝的工具類對資料庫進行操作,雖然也算穩定,但有了Spring Boot之前的工具類直接加到SpringBoot裡就沒那麼好使了,因此查閱資料後自己小試牛刀寫了個增刪改查,覺得也還不錯,所以分享給大家看看 1 p
《MVC+EF實現增刪改查》——查
在MVC的控制器中查詢資料庫中的資料,然後在用檢視顯示出來,這套流程是怎麼走的哪,下面我自己先巨集觀的總結一下。 首先,在Controllers資料夾下建立HomeController
Spring+SpringMVC+Mybatis實現增刪改查--(六)SSM刪除、批量刪除員工的實現
Spring+SpringMVC+Mybatis實現增刪改查--(六)SSM刪除、批量刪除員工的實現單個刪除: 批量刪除 刪除邏輯1.單個刪除URI:/emp/{id} DELETE(1)給刪除按鈕繫結上員工的ID號(2)單個刪除按鈕的點選事件(3)員工刪除的方法2.全選複
SSM框架搭建(Spring+SpringMVC+MyBatis)與easyui整合並實現增刪改查實現
一、用myEclipse初始化Web專案 新建一個web project: 二、建立包 controller //控制類 service//服務介面 service.impl//服務實現類 dao //data access object
Spring Boot入門系列(六)如何整合Mybatis實現增刪改查
前面介紹了Spring Boot 中的整合Thymeleaf前端html框架,同時也介紹了Thymeleaf 的用法。不清楚的朋友可以看看之前的文章:https://www.cnblogs.com/zhangweizhong/category/1657780.html。 今天主要講解Springboot整合M
Spring Boot入門系列(十八)整合mybatis,使用註解的方式實現增刪改查
之前介紹了Spring Boot 整合mybatis 使用xml配置的方式實現增刪改查,還介紹了自定義mapper 實現複雜多表關聯查詢。雖然目前 mybatis 使用xml 配置的方式 已經極大減輕了配置的複雜度,支援 generator 外掛 根據表結構自動生成實體類、配置檔案和dao層程式碼,減輕很大一
修改Haproxy文件配置,實現增刪改查
文件配置 str data bin 都是 [1] local def onf Haproxy 源文件 global log 127.0.0.1 local2 daemon maxconn 256 log 12
[python] 用pickle模塊實現“增刪改查”的簡易功能
python pyckle模塊 #!/usr/bin/env python2 #coding:utf-8 """ pickle的作用: 1:pickle.dump(dict,file)把字典轉為二進制存入文件. 2:pickle.load(file)把文件二進制內容轉為字典. """ im
.NET EF 框架-實現增刪改查
ont int string dbcontext 增刪 base set cts cti 聲明一個EF上下文對象 Model dbContext=new Model(); 添加操作(向表中插入一條數據) //聲明一個表的實體 Contact contact =new Con