springmvc注解式开发

基于spring+springmvc+hibernate的全注解开发 基于spring+springmvc+hibernate的全注解开发,在与数据库打交道的过程中不需要写繁琐的配置文件,仅通过相关的注解即可。 立即下载

什么是SpringMVC

是一个用来简化基于MVC架构的web应用程序开发的应用开发框架。
注:SpringMVC是Spring框架的一部分

MVC (Model 模型 View 视图 Controller 控制器)

什么是MVC

是一种软件架构思想,可以将软件划分成三种不同类型的模块,分别
是模型,视图和控制器。
模型用于封装业务逻辑的处理,视图用于数据展现和操作界面,
控制器用于协调模型和视图(视图将请求发送给控制器,由控制器选择
对应的模型来处理;模型将处理结果交给控制器,由控制器选择合适的
视图来展现处理结果)。

如何使用MVC

在这里插入图片描述

优点

方便代码的维护(修改模型不影响视图,反之也是如此)
方便分工协作

五大组件

  • DispatcherServlet 前端控制器
  • HandlerMapping 映射处理器
  • Controller 处理器
  • ModelAndView 模型和视图
  • ViewResolver 视图解析器

在这里插入图片描述

注解式开发(企业中使用较多)

步骤:

1. 导包 (spring-webmvc)

<project xmlns="http://maven.apache.org/POM/4.0.0"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>cn.company</groupId>
	<artifactId>TestDemo</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<packaging>war</packaging>
	<dependencies>
		<dependency>
			<!-- junit:单元测试 -->
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.12</version>
			<scope>test</scope>
		</dependency>
		<!--spring-webmvc -->
		<!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-webmvc</artifactId>
			<version>5.2.5.RELEASE</version>
		</dependency>
		<!-- 数据库连接池 -->
		<!-- https://mvnrepository.com/artifact/commons-dbcp/commons-dbcp -->
		<dependency>
			<groupId>commons-dbcp</groupId>
			<artifactId>commons-dbcp</artifactId>
			<version>1.4</version>
		</dependency>
		<!--mysql -->
		<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<version>8.0.19</version>
		</dependency>
		<!-- servlet的jar包依赖, <scope>provided</scope> 表示编译时有效,不会打包发布到Tomcat中 -->
		<dependency>
			<groupId>javax.servlet</groupId>
			<artifactId>javax.servlet-api</artifactId>
			<version>4.0.1</version>
			<scope>provided</scope>
		</dependency>
		<!-- jsp的jar包依赖 -->
		<dependency>
			<groupId>javax.servlet.jsp</groupId>
			<artifactId>javax.servlet.jsp-api</artifactId>
			<version>2.3.3</version>
			<scope>provided</scope>
		</dependency>
		<!-- jstl表达式 -->
		<!-- https://mvnrepository.com/artifact/jstl/jstl -->
		<dependency>
			<groupId>jstl</groupId>
			<artifactId>jstl</artifactId>
			<version>1.2</version>
		</dependency>
	</dependencies>
	<!-- 添加tomcat插件 -->
	<build>
		<plugins>
			<plugin>
				<groupId>org.apache.tomcat.maven</groupId>
				<artifactId>tomcat7-maven-plugin</artifactId>
				<version>2.2</version>
				<configuration>
					<port>8080</port>
					<hostName>localhost</hostName>
					<uriEncoding>UTF-8</uriEncoding>
				</configuration>
			</plugin>
		</plugins>
	</build>
</project>

2. 添加Spring配置文件。

<?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" 
	xmlns:jdbc="http://www.springframework.org/schema/jdbc"  
	xmlns:jee="http://www.springframework.org/schema/jee" 
	xmlns:tx="http://www.springframework.org/schema/tx"
	xmlns:aop="http://www.springframework.org/schema/aop" 
	xmlns:mvc="http://www.springframework.org/schema/mvc"
	xmlns:util="http://www.springframework.org/schema/util"
	xmlns:jpa="http://www.springframework.org/schema/data/jpa"
	xsi:schemaLocation="
		http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
		http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd
		http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.2.xsd
		http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.2.xsd
		http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd
		http://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa-1.3.xsd
		http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.2.xsd
		http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd
		http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.2.xsd">
		
		<!-- 配置组件扫描 -->
		<context:component-scan 
			base-package="controller"/> 
		<!-- 配置MVC注解扫描  --> 
		<mvc:annotation-driven/>
		<!-- 配置视图解析器 -->
		<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
			<property name="prefix" value="/WEB-INF/jsp/"/>
			<property name="suffix" value=".jsp"/>
		</bean>
		<!-- 静态资源的加载 -->
		<mvc:resources location="/" mapping="/**"/>
</beans>

3. 配置DispatcherServlet

(需要指定初始化参数(因为DispatcherServlet的初始化,方法会启动Spring容器,所以,需要知道Spring配置文件的位置)

<?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" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">
  <display-name>TestDemo</display-name>
 <!-- 前端控制器 -->
 <servlet>
 	<servlet-name>springmvc</servlet-name>
 	<!--  初始化方法会启动spring容器-->
 	<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
 	<init-param>
 		<param-name>contextConfigLocation</param-name>
 		<!--springmvc配置文件的位置  -->
 		<param-value>classpath:annotation.xml</param-value>
 	</init-param>
 	<load-on-startup>1</load-on-startup>
 </servlet>
 <servlet-mapping>
 	<servlet-name>springmvc</servlet-name>
 	<url-pattern>/</url-pattern>
 </servlet-mapping>
</web-app>

4.写Controller

  • 不再需要实现Controller接口
  • 方法名不作要求,返回类型可以是ModelAndView,也可以是String
  • 可以有多个方法
  • 在Controller类前添加@Controller,该注解用于组件扫描。
  • 使用@RequestMapping来代替HandlerMapping的配置,该注解可以添加到类前面以及方法前面
package controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class HelloController {
	@RequestMapping("/hello")
	public String hello() {
		//返回视图名
		return "hello";
	}
}

5.写jsp

<%@ page contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
	<h1>Hello,SpringMVC!</h1>
</body>
</html>

页面访问地址:
http://localhost:8080/TestDemo/hello
在这里插入图片描述

读取请求参数值

通过request

1、编写jsp

<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>计算bmi指数</title>
</head>
<body>
	<form action="sendBmi" method="post">
		<fieldset>
			<legend>计算bmi指数</legend>
			身高(米):<input name="height" /><br />
			 体重(公斤):<input name="weight" /><br />
			<input type="submit" value="确定" />
		</fieldset>
	</form>
</body>
</html>
<%@ page contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<h3>bmi指数为:${bmi }</h3>
<h3>${status }</h3>
</body>
</html>

2、编写Controller

package controller;

import javax.servlet.http.HttpServletRequest;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class HelloController {
	@RequestMapping("/hello")
	public String hello() {
		//返回视图名
		return "hello";
	}
	@RequestMapping("/bmi")
	public String bmi() {
		return "bmi";
	}
	/*
	 * DispatcherServlet利用java反射分析处理器的
	 * 方法签名(方法名,参数类型,返回类型),然后
	 * 将需要的对象作为参数传进来。
	 * 比如,这儿,需要有一个request对象,
	 * DispatcherServlet就会将request作为参数传进来。
	 */
	@RequestMapping("/sendBmi")
	public String sendBmi(HttpServletRequest request,Model model) {
		double height=Double.parseDouble(request.getParameter("height"));
		double weight=Double.parseDouble(request.getParameter("weight"));
		double bmi=weight/height/height;
		String status="正常";
		if(bmi < 19){
			status = "过轻";
		}
		if(bmi > 25){
			status = "过重";
		}
		model.addAttribute("bmi",bmi);
		model.addAttribute("status",status);
		return "view";
	}
}

3、页面访问
在这里插入图片描述
在这里插入图片描述

通过@RequestParam

1、修改Controller

package controller;

import javax.servlet.http.HttpServletRequest;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;

@Controller
public class HelloController {
	@RequestMapping("/hello")
	public String hello() {
		//返回视图名
		return "hello";
	}
	@RequestMapping("/bmi")
	public String bmi() {
		return "bmi";
	}
	/*
	 *
	 * DispatcherServlet利用java反射分析方法的签名,
	 * 会将参数值获得之后,赋给对应的形参。
	 * 注:
	 * 	可以使用@RequestParam注解告诉DispatcherServlet,
	 *  形参名与请求参数名的对应关系。
	 */
	@RequestMapping("/sendBmi")
	public String sendBmi(@RequestParam(value = "height")String height,@RequestParam(value = "weight")String weight,Model model) {
		double height1=Double.parseDouble(height);
		double weight1=Double.parseDouble(weight);
		double bmi=weight1/height1/height1;
		String status="正常";
		if(bmi < 19){
			status = "过轻";
		}
		if(bmi > 25){
			status = "过重";
		}
		model.addAttribute("bmi",bmi);
		model.addAttribute("status",status);
		return "view";
	}
}

2、重新页面访问
在这里插入图片描述
在这里插入图片描述

通过javabean

1、创建javabean

package javabean;

public class BmiParam {
	private double height;
	private double weight;

	public double getHeight() {
		return height;
	}

	public void setHeight(double height) {
		this.height = height;
	}

	public double getWeight() {
		return weight;
	}

	public void setWeight(double weight) {
		this.weight = weight;
	}

}

2、创建Controller

package controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

import javabean.BmiParam;

@Controller
public class HelloController {
	@RequestMapping("/hello")
	public String hello() {
		// 返回视图名
		return "hello";
	}

	@RequestMapping("/bmi")
	public String bmi() {
		return "bmi";
	}

	/*
	 * DispatcherServlet通过反射分析方法的签名,
	 * 会将BmiPraram对象创建好之后传进来。
	 * 注:
	 * 	 会读取相应的请求参数值,并且,会做类型转换。
	 */
	@RequestMapping("/sendBmi")
	public String sendBmi(BmiParam bp, Model model) {
		double height = bp.getHeight();
		double weight = bp.getWeight();
		double bmi = weight / height / height;
		String status = "正常";
		if (bmi < 19) {
			status = "过轻";
		}
		if (bmi > 25) {
			status = "过重";
		}
		model.addAttribute("bmi", bmi);
		model.addAttribute("status", status);
		return "view";
	}
}

3、页面访问
在这里插入图片描述
在这里插入图片描述

向页面传值

绑订数据到request

1、修改Controller

package controller;

import javax.servlet.http.HttpServletRequest;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

import javabean.BmiParam;

@Controller
public class HelloController {
	@RequestMapping("/hello")
	public String hello() {
		// 返回视图名
		return "hello";
	}

	@RequestMapping("/bmi")
	public String bmi() {
		return "bmi";
	}

	@RequestMapping("/sendBmi")
	public String sendBmi(BmiParam bp, HttpServletRequest request) {
		double height = bp.getHeight();
		double weight = bp.getWeight();
		double bmi = weight / height / height;
		String status = "正常";
		if (bmi < 19) {
			status = "过轻";
		}
		if (bmi > 25) {
			status = "过重";
		}
		request.setAttribute("bmi", bmi);
		request.setAttribute("status", status);
		return "view";
	}
}

2、页面访问
在这里插入图片描述
在这里插入图片描述

返回ModelAndView

1、修改Controller

package controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

import javabean.BmiParam;

@Controller
public class HelloController {
	@RequestMapping("/hello")
	public String hello() {
		// 返回视图名
		return "hello";
	}

	@RequestMapping("/bmi")
	public String bmi() {
		return "bmi";
	}

	@RequestMapping("/sendBmi")
	public ModelAndView sendBmi(BmiParam bp) {
		double height = bp.getHeight();
		double weight = bp.getWeight();
		double bmi = weight / height / height;
		String status = "正常";
		if (bmi < 19) {
			status = "过轻";
		}
		if (bmi > 25) {
			status = "过重";
		}
		ModelAndView mav=new ModelAndView("view");
		mav.addObject("bmi", bmi);
		mav.addObject("status", status);
		return mav;
	}
}

2、页面访问
在这里插入图片描述
在这里插入图片描述

绑订数据到ModelMap

1、修改Controller

package controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;

import javabean.BmiParam;

@Controller
public class HelloController {
	@RequestMapping("/hello")
	public String hello() {
		// 返回视图名
		return "hello";
	}

	@RequestMapping("/bmi")
	public String bmi() {
		return "bmi";
	}

	@RequestMapping("/sendBmi")
	public String sendBmi(BmiParam bp,ModelMap mp) {
		double height = bp.getHeight();
		double weight = bp.getWeight();
		double bmi = weight / height / height;
		String status = "正常";
		if (bmi < 19) {
			status = "过轻";
		}
		if (bmi > 25) {
			status = "过重";
		}
		ModelAndView mav=new ModelAndView("view");
		mp.addAttribute("bmi", bmi);
		mp.addAttribute("status", status);
		return "view";
	}
}

2、页面访问
在这里插入图片描述
在这里插入图片描述

绑订数据到session

1、修改Controller

package controller;

import javax.servlet.http.HttpSession;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import javabean.BmiParam;

@Controller
public class HelloController {
	@RequestMapping("/hello")
	public String hello() {
		// 返回视图名
		return "hello";
	}

	@RequestMapping("/bmi")
	public String bmi() {
		return "bmi";
	}

	@RequestMapping("/sendBmi")
	public String sendBmi(BmiParam bp, HttpSession session) {
		double height = bp.getHeight();
		double weight = bp.getWeight();
		double bmi = weight / height / height;
		String status = "正常";
		if (bmi < 19) {
			status = "过轻";
		}
		if (bmi > 25) {
			status = "过重";
		}
		session.setAttribute("bmi", bmi);
		session.setAttribute("status", status);
		return "view";
	}
}

2、页面访问
在这里插入图片描述
在这里插入图片描述

重定向

方法的返回值是String

return “redirect:hello”

1、修改Controller

package controller;

import javax.servlet.http.HttpSession;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import javabean.BmiParam;

@Controller
public class HelloController {
	@RequestMapping("/hello")
	public String hello() {
		// 返回视图名
		return "hello";
	}

	@RequestMapping("/bmi")
	public String bmi() {
		return "bmi";
	}

	@RequestMapping("/sendBmi")
	public String sendBmi(BmiParam bp, HttpSession session) {
		double height = bp.getHeight();
		double weight = bp.getWeight();
		double bmi = weight / height / height;
		String status = "正常";
		if (bmi < 19) {
			status = "过轻";
		}
		if (bmi > 25) {
			status = "过重";
		}
		session.setAttribute("bmi", bmi);
		session.setAttribute("status", status);
		return "redirect:hello";
	}
}

2、页面访问
在这里插入图片描述

在这里插入图片描述

方法的返回值是ModelAndView

RedirectView rv =
new RedirectView(“toIndex.do”);
ModelAndView mav =
new ModelAndView(rv);
return mav;

1、修改Controller

package controller;

import javax.servlet.http.HttpSession;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.view.RedirectView;

import javabean.BmiParam;

@Controller
public class HelloController {
	@RequestMapping("/hello")
	public String hello() {
		// 返回视图名
		return "hello";
	}

	@RequestMapping("/bmi")
	public String bmi() {
		return "bmi";
	}

	@RequestMapping("/sendBmi")
	public ModelAndView sendBmi(BmiParam bp, HttpSession session) {
		double height = bp.getHeight();
		double weight = bp.getWeight();
		double bmi = weight / height / height;
		String status = "正常";
		if (bmi < 19) {
			status = "过轻";
		}
		if (bmi > 25) {
			status = "过重";
		}
		session.setAttribute("bmi", bmi);
		session.setAttribute("status", status);
		RedirectView rv=new RedirectView("hello");
		ModelAndView mav=new ModelAndView(rv);
		return mav;
	}
}

2、页面访问
在这里插入图片描述
在这里插入图片描述

【STK】手把手教你利用STK进行覆盖分析02-生成详细分析报告和图表 这篇文章主要针对上一篇文章中最后的案例1进行进一步的说明,详细介绍我们可以生成哪些结论性的成果。STK的Coverage模块的生成结果包括分析报告和图表两种样式,每种样式还分为动态和静态两种,也就是说,我们做完一个STK覆盖场景的仿真后,一般可以生成静态分析报告、动态分析报告、静态分析图表和动态分析图表这4种形式的分析成果,下面进行详细介绍。我们在选择了想要分析的区域或者点后,就可以利用CovDef生成分析报告了,覆盖定义的分析报告分为静态报告和动态报告两种,下面分析进行介绍: 首先我们先在左侧目标浏览器C 阅读详情

相关推荐

Aix升级和安装ssh配置过程

Aix升级和安装ssh配置过程Aix升级和安装ssh配置过程配置前背景配置步骤 Aix升级和安装ssh配置过程 部门IBM小型机的Aix操作系统需要进行ssh补丁修复,修复其实就是ssh版本你的升级,对升级的过程和中途遇到的问题做了记录如下。 配置前背景 操作系统: gdboss2/>uname -u //操作系统的Aix5.3 IBM,020693E5P gdboss2/&gt...

阿阿阿唱的博客 2991

【SpringMVC】| SpringMVC注解式开发

【SpringMVC】| SpringMVC注解式开发

m0_61933976的博客 1858

从零开始STM32cubeide学习

使用的是正点原子的精英版,单片机是STM32F103ZET6,详细讲解完成跑马灯实验

weixin_44077208的博客 2280

【SSM】SpringMVC(二.注解式开发)

RequestMapping注解可以注解在方法上,也可以注解在类上,但意义是不同的。此注解加在方法上,是为此方法去注册一个可以访问的名称(路径)此注解加在类上,是相当于包名(虚拟路径),为了区分不中类中相同名称的action。value 属性值常以“/”开始。@RequestMapping 的 value 属性用于定义所匹配请求的 URI。

北极星的博客 373

[USACO2023-JAN-Bronze] T2 Air Cownditioning II 题解

[USACO2023-JAN-Bronze] T2 Air Cownditioning II题解

1652

Win 11 Fastboot驱动的详细安装教程

Fastboot驱动的详细安装教程

水w的博客 1万+

Spring MVC 注解开发:从入门到精通

Spring MVC 是 Spring 框架中用于构建 Web 应用程序的模块。它基于 MVC(Model-View-Controller)设计模式,将应用程序分为模型(Model)、视图(View)和控制器(Controller),从而实现代码的高内聚、低耦合。这种分层架构使得代码更加清晰,便于维护和扩展。在 Spring MVC 中,注解(Annotation)是实现功能的关键。注解是一种元数据,用于在代码中提供额外的信息,而无需编写大量的 XML 配置文件。

903

【2023版】基于JT808/JT1078协议的车载视频监控平台开发实战-开源架构解析

本文详细解析了基于JT808/JT1078协议的车载视频监控平台开发实战,涵盖协议核心作用、开源架构设计、开发避坑指南及二次开发建议。重点介绍了JT1078协议在音视频传输中的优化方案,以及海量位置数据存储、高可用架构等关键技术点,为开发者提供全面的实战参考。

weixin_26965807的博客 236

SpringMVC注解式开发

目录一、@RequestMapping 定义请求规则1. 指定模块名称2. 对请求提交方式的定义二、处理器方法的参数1. 逐个参数2. 校正请求参数名@RequestParam3. 请求参数中文乱码问题4. 对象参数接收三、处理器方法的返回值1. 返回 ModelAndView2. 返回 String四、返回对象Object1. 环境搭建2. 返回自定义类型对象3. 返回List集合3....

山丘i 286

【HYSPLIT 教程第二期】Inline WRF-HYSPLIT 耦合

【HYSPLIT 教程第二期】Inline WRF-HYSPLIT 耦合

WW、forever的博客 809

OpenStack [ compute_id ] 设计上的小缺陷

而 nova 代码中硬编码(或默认配置)将 compute_id 放在 site-packages 目录,属于 设计上的小缺陷—— 把 “库安装目录” 和 “运行时数据目录” 混在一起了,才导致需要临时调整这个目录的权限。# 配置项说明:node_identity_file 是 nova 用于指定节点标识文件路径的官方配置项,优先级高于代码中的默认路径。自定义 compute_id 路径,指向 /var/lib/nova/ 目录下的 compute_id 文件;

求知若渴,虚心若愚。 491

SpringMVC纯注解快速开发

1. 在config包中新建配置类,添加注解2. 在config包建第二个类,继承AbstractDispatcherServletInitializer类,实现其中的三个方法,主要改动其中二个方法3. 在controller包建控制请求路径的类,类上添加注解@Controller。@RequestMapping("/hello2")就是请求路径@ResponseBody 声明响应体就是该方法返回的内容,而不是静态资源名。4. 部署tomcat容器,介绍了两种方法。

MKIDM的博客 2365

caverdock如何使用,一文给你多方案教学!

🏆本文收录于 《全栈 Bug 调优(实战版)》 专栏。专栏聚焦真实项目中的各类疑难 Bug,从成因剖析 → 排查路径 → 解决方案 → 预防优化全链路拆解,形成一套可复用、可沉淀的实战知识体系。无论你是初入职场的开发者,还是负责复杂项目的资深工程师,都可以在这里构建一套属于自己的「问题诊断与性能调优」方法论,助你稳步进阶、放大技术价值。

**My Coding Family** 1388

SpringMVC 注解式开发

SpringMVC的注解式开发是指,处理器是基于注解的类的开发。对于每一个定义的处理器,无需再配置文件中逐个注册,只需在代码中通过对类与方法的注解,便可完成注册。即注解替换是配置文件中对于处理器的注册部分。 一、第一个注解式开发程序 1 <%@ page language="java" import="java.util.*" pageEncodin...

X9191的博客 207

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

SpringMVC详解(二)注解式开发

文章目录第二章 SpringMVC注解式开发所需依赖1. @RequestMapping注解的使用在类的上面作为模块的名称2.接收请求中的参数2.1 逐个接收2.2 CharacterEncodingFilter使用:2.3 请求中参数名和形参名不一样,使用@RequestParam2.4 对象接收3.控制器方法的返回值3.1 ModelAndView 数据和视图。实例3.2 String视图3.3 void 没有数据和视图 (了解就可以,比较少用)3.4 Object3.4.1 HttpMessa

sunnygao的博客 481

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

SpringMVC的注解式开发

SpringMVC概述 一、SpringMVC简介 ​ SpringMVC也叫Spring web mvc。是Spring框架的一部分, 是在Spring3.0后发布的。 优点: 基于MVC架构功能分工明确。解耦合 容易理解,上手快,使用简单。可以开发一个注解的SpringMVC项目,SpringMVC也是轻量级的,jar 很小。不依赖特定的接口和类 作为Spring框架一部分,能够使用Spring的 loC和Aop。方便整合Strtus、MyBatis、Hiberate、JPA等其他框架 Spring

qq_45979254的博客 1155

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

springmvc注解_SpringMVC注解式开发

SpringMVC注解式开发搭建环境后端控制器无需实现接口,添加相应注解springmvc配置文件无需注册controllerspringmvc配置文件中添加组件扫描器、注解驱动<mvc:annotation-driven />注解驱动<mvc:annotation-driven /> <mvc:annotation-driven /> 会自动注册Default...

weixin_39632293的博客 194

《SpringMVC从入门到放肆》八、SpringMVC注解式开发(基本配置)

上一篇我们结束了配置式开发,配置式开发目前在企业中用的并不是很多,大部分企业都在使用注解式开发,所以今天我们就来学习注解式开发。所谓SpringMVC注解式开发是指,处理器是基于注解的类的开发方式。对于每一个定义的处理器,无需在配置文件中逐个注册,只需在代码中通过对类与方法的注解,便可完成注册。 一、注册组件扫描器 这里说的组件即处理器,需要指定处理器所在的基本包。 <?xm...

weixin_30511039的博客 176

【SSM】SpringMVC系列——SpringMVC注解式开发

通过@RequestMapping 注解可以定义处理器对于请求的映射规则。该注解可以注解在方法上,也可以注解在类上,但意义是不同的。value 属性值常以“/”开始。@RequestMapping 的 value 属性用于定义所匹配请求的 URI。一个@Controller 所注解的类中,可以定义多个处理器方法。不同的处理器方法所匹配的 URI 是不同的。这些不同的 URI 被指定在注解于方法之上的@RequestMapping 的value 属性中。...

胖虎虎 410

SpringMVC02--SpringMVC注解式开发

SpringMVC注解式开发

憨憨浩浩的博客 165

spring springMVC Mybatis 注解式开发(纯) 实现

开发框架 spring+springMVC+mybatis 搭建web 项目 或maven 项目 idea 搭建web 或 maven项目的实现 项目环境: pom.xml 注意: spring 4.*的版本和spring 5. *的版本有一些配置不太一样, 本博客针对spring 4.* 版本 <?xml version="1.0" encoding="UTF-8"?>...

weixin_36237260的博客 433

@data注解的作用_SpringMVC 注解式开发

SpringMVC注解式开发1.搭建环境 1.1 后端控制器无需实现接口,添加相应注解 1.2 springmvc配置文件无需注册controller 1.3 springmvc配置文件中添加组件扫描器、注解驱动 <mvc:annotation-driven /> 会自动注册DefaultAnnotationHandlerMapping与 AnnotationMethodHandler...

weixin_39864489的博客 724
上一篇: spring的值注入与组件扫描
下一篇: springmvc分层设计
迷失的小鹿
博客等级 码龄8年 1万+粉丝 199原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值