SpringMVC

SpringMVC 接口开发实现 上篇文章讲解了SpringMVC 入门,这篇文章使用SpringMVC 来开发接口。记得之前有一篇文章 java web开发(二) 接口开发,是使用Servlet开发的接口。如果你还未了解,可以先看看这篇文章。好了,我们进入主题。 在开始这篇文章之前,请先阅读请参考java web开发(二) 接口开发这篇文章。 一、搭建环境。这一步骤 请参考上篇文章, SpringM... 阅读详情

1.SpringMVC中几个重要的组件。

前端控制器(DispatcherServlet)
请求到处理器映射(HandlerMapping)
处理器适配器(HandlerAdapter)
视图解析器(ViewResolver)
处理器或页面控制器(Controller)
验证器( Validator)
命令对象(Command 请求参数绑定到的对象就叫命令对象)
表单对象(Form Object 提供给表单展示和提交到的对象就叫表单对象)。

2.SpringMVC需要的jar。

  1. spring容器的jar
  2. spring整合MVCjar
  3. springweb的jar
  4. jsp和servlet的jar
<!-- 版本锁定 -->
    <properties>
        <spring.version>5.0.2.RELEASE</spring.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>${spring.version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
            <version>${spring.version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>${spring.version}</version>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>servlet-api</artifactId>
            <version>2.5</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>javax.servlet.jsp</groupId>
            <artifactId>jsp-api</artifactId>
            <version>2.0</version>
            <scope>provided</scope>
        </dependency>
    </dependencies>

3. 整合SpringMVC

  1. SpringMVC的核心控制器DispatcherServlet其实是一个servlet,所以在web.xml中先配置。
  2. 配置核心控制器的同时也要把我们的spring工厂创建出来。
  3. 解决乱码问题,需要配置UTF-8编码格式
<!--  web.xml-->
<!--  解决乱码问题-->
  <filter>
    <filter-name>encodingFilter</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>
    <init-param>
      <param-name>forceEncoding</param-name>
      <param-value>true</param-value>
    </init-param>
  </filter>
  <filter-mapping>
    <filter-name>encodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
<!--配置springMVC的核心控制器-->
  <servlet>
    <servlet-name>dispatcherServlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<!--    同时加载bean.xml文件,创建spring工厂-->
    <init-param>
      <param-name>contextConfigLocation</param-name>
      <param-value>classpath:bean.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>dispatcherServlet</servlet-name>
    <url-pattern>/</url-pattern>
  </servlet-mapping>
  1. spring容器中依然需要开启注解扫描。
  2. 配置mvc的适配器,为页面跳转准备。
<!--    扫描注解支持-->
    <context:component-scan base-package="com.itzpx"/>
<!--    配置适配器-->
    <bean id="internalResourceViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/WEB-INF/pages/"/>
        <property name="suffix" value=".jsp"/>
    </bean>
<!--    配置mvc支持-->
    <mvc:annotation-driven conversion-service="conversionService"/>
  1. 测试方法
@Controller("helloController")
public class HelloController {
@RequestMapping("/hello")
public String sayHello() {
System.out.println("HelloController 的 sayHello 方法执行了。。。。");
return "success"; } }

4. SpringMVC是如何实现功能的?

  1. 当我们页面发生请求时,会被我们的DispatcherServlet(一个servlet)核心控制器拦截到。
  2. 根据我们发送的请求(hello),找到对应的方法(sayHello()),结果逻辑层代码后最终会返回一个字符串(return “success”)。
  3. 根据方法返回值,与视图解析器拼接,得到一个地址
    (/WEB-INF/pages/success.jsp)。

5. 入门案例涉及到的组件

  1. DispatcherServlet:前端控制器
    用户请求到达前端控制器,它就相当于 mvc 模式中的 c,dispatcherServlet 是整个流程控制的中心,由
    它调用其它组件处理用户的请求,dispatcherServlet 的存在降低了组件之间的耦合性。
  2. HandlerMapping:处理器映射器
    HandlerMapping 负责根据用户请求找到 Handler 即处理器,SpringMVC 提供了不同的映射器实现不同的
    映射方式,例如:配置文件方式,实现接口方式,注解方式等。
  3. Handler:处理器
    它就是我们开发中要编写的具体业务控制器。由 DispatcherServlet 把用户请求转发到 Handler。由
    Handler 对具体的用户请求进行处理。
  4. HandlAdapter:处理器适配器
    通过 HandlerAdapter 对处理器进行执行,这是适配器模式的应用,通过扩展适配器可以对更多类型的处理
    器进行执行。
  5. View Resolver:视图解析器
    View Resolver 负责将处理结果生成 View 视图,View Resolver 首先根据逻辑视图名解析成物理视图名
    即具体的页面地址,再生成 View 视图对象,最后对 View 进行渲染将处理结果通过页面展示给用户。
  6. View:视图
    SpringMVC 框架提供了很多的 View 视图类型的支持,包括:jstlView、freemarkerView、pdfView
    等。我们最常用的视图就是 jsp。
    一般情况下需要通过页面标签或页面模版技术将模型数据通过页面展示给用户,需要由程序员根据业务需求开
    发具体的页面。
  7. <mvc:annotation-driven>说明

这玩意比较重要,
在 SpringMVC 的各个组件中,处理器映射器、处理器适配器、视图解析器称为 SpringMVC 的三大组件。
使 用 <mvc:annotation-driven> 自动加载 RequestMappingHandlerMapping (处理映射器) 和
RequestMappingHandlerAdapter ( 处 理 适 配 器 )

该配置相当于

<!-- 上面的标签相当于 如下配置-->
<!-- Begin -->
<!-- HandlerMapping --> 
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"></bean>
<bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"></bean>
<!-- HandlerAdapter -->
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"></bean>
<bean class="org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter"></bean>
<bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter"></bean>
<!-- HadnlerExceptionResolvers -->
<bean class="org.springframework.web.servlet.mvc.method.annotation.ExceptionHandlerExceptionResolver"></bean>
<bean class="org.springframework.web.servlet.mvc.annotation.ResponseStatusExceptionResolver"></bean>
<bean class="org.springframework.web.servlet.mvc.support.DefaultHandlerExceptionResolver"></bean>
<!-- End -->

6. 注解

  1. RequestMapping
    1.1 位置:类、方法
    1.2 作用:用于建立请求 URL 和处理请求方法之间的对应关系。
    1.3 参数:
    ① value:用于指定请求的 URL。它和 path 属性的作用是一样的。
    ② method:用于指定请求的方式。
    ③ params:用于指定限制请求参数的条件。它支持简单的表达式。要求请求参数的 key 和 value 必须和配置的一模一样。
    例如:
    params = {“accountName”},表示请求参数必须有 accountName
    params = {“moeny!100”},表示请求参数中 money 不能是 100。
    ④ headers:用于指定限制请求消息头的条件。
  2. RequestParam
    2.1位置:方法形参中
    2.2作用:把请求中指定名称的参数给控制器中的形参赋值。
    2.3属性:
    ① value:请求参数中的名称。
    ② required:请求参数中是否必须提供此参数。默认值:true。表示必须提供,如果不提供将报错。
  3. RequestBody
    3.1位置:方法形参中
    3.2作用:用于获取请求体内容。直接使用得到是 key=value&key=value…结构的数据。get 请求方式不适用。
    3.3属性:
    ①required:是否必须有请求体。默认值是:true。当取值为 true 时,get 请求方式会报错。如果取值为 false,get 请求得到是 null。
  4. PathVaribale
    4.1位置:方法形参中
    4.2作用:用于绑定 url 中的占位符。例如:请求 url 中 /delete/{id},这个{id}就是 url 占位符。
    url 支持占位符是 spring3.0 之后加入的。是 springmvc 支持 rest 风格 URL 的一个重要标志。
    4.3属性:
    ①value:用于指定 url 中占位符名称。
    ②required:是否必须提供占位符。
  5. RequestHeader
    5.1位置:方法形参中
    5.2作用:用于获取请求消息头。
    5.3属性:
    ①value:提供消息头名称
    ②required:是否必须有此消息头
  6. CookieValue
    6.1位置:方法形参中
    6.2作用:用于把指定 cookie 名称的值传入控制器方法参数。
    6.3属性:
    ①value:指定 cookie 的名称。
    ②required:是否必须有此 cookie。
  7. ModelAttribute
    7.1位置:方法体上
    7.2作用:该注解是 SpringMVC4.3 版本以后新加入的。它可以用于修饰方法和参数。
    出现在方法上,表示当前方法会在控制器的方法执行之前,先执行。它可以修饰没有返回值的方法,也可
    以修饰有具体返回值的方法。
    出现在参数上,获取指定的数据给参数赋值。
    7.3属性:
    ①value:用于获取数据的 key。key 可以是 POJO 的属性名称,也可以是 map 结构的 key。
    7.4应用场景:
    当表单提交数据不是完整的实体类数据时,保证没有提交数据的字段使用数据库对象原来的数据。
    7.5该注解有两种使用方式
    ①:方法有返回值,方法参数可以接收请求参数,根据请求参数查询出其他属性,并封装到Account中,返回。
    请求中只提供部分属性
<form action="<%=request.getContextPath()%>/saveUser03" method="post">
    账户名:<input type="text" name="accountName"/><br/>
    <input type="submit" value="提交"/>
</form>

在方法执行之前被ModelAttribute拦截,将Account对象中的属性补充完整

@ModelAttribute
    public Account saveU(String accountName){
        System.out.println("ModelAttribute开始"+accountName);
        Account account = new Account();
//        获取传递过来的accountName
        account.setAccountName(accountName);
//        模拟查询数据库
        account.setDate(new Date());
        User user = new User();
        user.setUserName("lisi");
        user.setUserAge("19");
        account.setUser(user);
//        将剩余的属性补充完整后返回account对象
        System.out.println("ModelAttribute结束");
        return account;
    }

然后再执行被请求的方法

@RequestMapping(path="/saveUser02")
    public String saveUser02(Account account){
        System.out.println("account="+account);
        return "success";
    }

②基于 Map 的应用场景
请求还是那样,只是我们的对象不是以返回值的形式,给到我们的方法中,是放入map中。

@ModelAttribute
public void showModel(String username,Map<String,User> map) {
//模拟去数据库查询
User user = findUserByName(username);
System.out.println("执行了 showModel 方法"+user);
map.put("abc",user);
}

而方法可以使用@ModelAttribute(“abc”)注解来给参数(也是我们的pojo对象)赋值。

@RequestMapping("/updateUser")
public String testModelAttribute(@ModelAttribute("abc")User user) {
System.out.println("控制器中处理请求的方法:修改用户:"+user);
return "success"; }
  1. SessionAttribute
    8.1位置:在类上面
    8.2作用:用于多次执行控制器方法间的参数共享。
    8.3属性:
    ①value:用于指定存入的属性名称
    ②type:用于指定存入的数据类型。
    8.4使用场景:
jsp 中的代码:
<!-- SessionAttribute 注解的使用 --> <a href="springmvc/testPut">存入 SessionAttribute</a> <hr/>
<a href="springmvc/testGet">取出 SessionAttribute</a> <hr/>
<a href="springmvc/testClean">清除 SessionAttribute</a>
控制器中的代码:
/**
* SessionAttribute 注解的使用
* @author 黑马程序员
* @Company http://www.ithiema.com
* @Version 1.0
*/
@Controller("sessionAttributeController")
@RequestMapping("/springmvc")
@SessionAttributes(value ={"username","password"},types={Integer.class}) 
public class SessionAttributeController {
/**
* 把数据存入 SessionAttribute
* @param model
* @return
* Model 是 spring 提供的一个接口,该接口有一个实现类 ExtendedModelMap
* 该类继承了 ModelMap,而 ModelMap 就是 LinkedHashMap 子类
*/
@RequestMapping("/testPut") 
public String testPut(Model model){ 
 model.addAttribute("username", "泰斯特"); 
 model.addAttribute("password","123456"); 
 model.addAttribute("age", 31); 
 //跳转之前将数据保存到 username、password 和 age 中,因为注解@SessionAttribute 中有
这几个参数 
 return "success"; 
 } 
 
 @RequestMapping("/testGet") 
 public String testGet(ModelMap model){ 
 
System.out.println(model.get("username")+";"+model.get("password")+";"+model.get("a
ge")); 
 return "success"; 
 } 
 
 @RequestMapping("/testClean") 
 public String complete(SessionStatus sessionStatus){ 
 sessionStatus.setComplete(); 
 return "success"; 
 } 
}

7.请求参数的绑定

如何获取请求中的参数

  1. 基本类型参数:
    包括基本类型和 String 类型
  2. POJO 类型参数:
    包括实体类,以及关联的实体类
  3. 数组和集合类型参数:
    包括 List 结构和 Map 结构的集合(包括数组)

规则:

  1. 如果是基本类型或者 String 类型:
    要求我们的参数名称必须和控制器中方法的形参名称保持一致。(严格区分大小写)
  2. 如果是 POJO 类型,或者它的关联对象:
    要求表单中参数名称和 POJO 类的属性名称保持一致。并且控制器方法的3. 参数类型是 POJO 类型。
  3. 如果是集合类型,有两种方式:
    第一种:
    要求集合类型的请求参数必须在 POJO 中。在表单中请求参数名称要和 POJO 中集合属性名称相同。
    给 List 集合中的元素赋值,使用下标。
    给 Map 集合中的元素赋值,使用键值对。
    第二种:
    接收的请求参数是 json 格式数据。需要借助一个注解实现。

8. 请求参数乱码问题

web.xml
<!--  解决乱码问题-->
  <filter>
    <filter-name>encodingFilter</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>
    <init-param>
      <param-name>forceEncoding</param-name>
      <param-value>true</param-value>
    </init-param>
  </filter>
  <filter-mapping>
    <filter-name>encodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

静态资源不过滤

bean.xml
<!--    过滤器配置-->
    <mvc:resources location="/WEB-INF/css/" mapping="/css/**"/>
    <mvc:resources location="/WEB-INF/images/" mapping="/images/**"/>
    <mvc:resources location="/WEB-INF/scripts/" mapping="/javascript/**"/>

get请求方式的乱码问题

tomacat 对 GET 和 POST 请求处理方式是不同的,GET 请求的编码问题,要改 tomcat 的 server.xml
配置文件,如下:
<Connector connectionTimeout="20000" port="8080"
protocol="HTTP/1.1" redirectPort="8443"/>
改为:
<Connector connectionTimeout="20000" port="8080"
protocol="HTTP/1.1" redirectPort="8443"
useBodyEncodingForURI="true"/>
如果遇到 ajax 请求仍然乱码,请把:
useBodyEncodingForURI="true"改为 URIEncoding="UTF-8"
即可。

9. 自定义类型转换器

当参数数据类型转化不满足我们的要求时,我们可以进行改造
添加一个类型转化器
写一个类(Converson)转化器,实现Converter<T,S>,接口中的方法convert,该方法接收T类型的数据,返回值为S类型的数据,从而实现参数数据类型转化。

public class Conversion implements Converter<String, Date> {
    public Date convert(String s) {
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        try {
            System.out.println(s);
            Date date = sdf.parse(s);
            return date;
        } catch (ParseException e) {
            e.printStackTrace();
        }
        return null;
    }
}

将自定义的转化器加入到原有的转化器中

bean.xml
<!--    配置mvc支持-->
    <mvc:annotation-driven conversion-service="conversionService"/>
<!--    配置转化器-->
    <bean name="conversionService" class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
        <property name="converters">
            <set>
                <bean class="com.itzpx.utils.Conversion"></bean>
            </set>
        </property>
    </bean>

10.springmvc支持servlet原生的API

@RequestMapping("/testServletAPI")
public String testServletAPI(HttpServletRequest request,
HttpServletResponse response,
HttpSession session) {
System.out.println(request);
System.out.println(response);
System.out.println(session);
return "success"; }
【SpringMVC 】什么是SpringMVC(三)?基于springmvc的文件上传、基于springmvc的拦截器、基于springmvc的邮件发送 @@@@@@@@@@@邮件发送 通过java进行邮件发送,会涉及到两种协议: 1、smtp 简单邮件传输协议 作用:用于指定如何发送邮件 2、pop3 邮局协议版本3 作用:用于指定如何接收邮件 @@@@@@@@我们在进行邮件发送时,首先需要开通邮箱的这两个协议 @@@@@@@@邮件发送的过程 此处,我们以QQ邮箱为例,进行配置,准备工作 登录QQ邮箱,开通smtp,pop3协议 阅读详情

相关推荐

XDMA 驱动安装与性能测试全流程解析

本文详细解析了XDMA驱动的完整安装与性能测试流程。从环境准备、源码获取、编译安装到驱动加载与设备验证,逐步指导用户打通FPGA加速卡与主机间的高速数据通道。重点介绍了如何通过官方测试脚本进行功能验证与带宽性能测试,帮助用户评估XDMA驱动的实际传输效能,为AI推理、高频交易等低延迟高带宽应用奠定基础。

weixin_29216049的博客 524

Spring mvc数据转换与格式化

Spring mvc数据绑定 spring mvc通过反射机制对目标方法的签名进行分析,将请求消息绑定到处理方法入参中。 数据绑定的核心部件是DataBinder。   spring mvc主框架将servletRequest对象及处理方法入参对象实例传递给DataBinder,DataBinder调用装配在spring mvc上下文中的ConversionService组件进行数据类型转

哇哈哈 2万+

实战避坑:示波器测量非隔离开关电源的炸机风险与隔离方案

本文详细分析了使用示波器测量非隔离开关电源时的炸机风险,揭示了地线环路导致的短路问题,并对比了四种防炸机解决方案,包括示波器隔离供电、拔掉电源地线、使用差分探头和被测板隔离供电。重点推荐使用隔离变压器方案,确保测量安全与精度,同时提供了实操建议与经验分享,帮助工程师避免常见测量事故。

weixin_29224309的博客 556

使用maven管理依赖,spring版本冲突解决 java.lang.NoSuchMethodError: org.springframework.core.GenericTypeResolver.r

报错异常堆栈: java.lang.NoSuchMethodError: org.springframework.core.GenericTypeResolver.resolveTypeArguments(Ljava/lang/Class;Ljava/lang/Class;)[Ljava/lang/Class; at org.springframework.core.convert.suppo

OK 1万+

C2000 ePWM与SDFM同步配置:从寄存器到Driverlib实战解析

在嵌入式实时控制系统中,脉宽调制(PWM)是实现电机驱动、数字电源等应用的核心技术,其信号质量和时序精度直接决定了系统性能。为实现精确控制,PWM信号常需与模数转换器(ADC)或Sigma-Delta滤波器(SDFM)的采样时刻严格同步,以消除开关噪声并获取准确的反馈信号。其技术原理在于通过硬件同步机制,将PWM的特定时间点(如周期中心)作为触发源,控制数据采集的启动时刻。这种硬件级同步能有效提升闭环控制的稳定性和动态响应速度,广泛应用于伺服驱动、变频器等高性能场景。本文聚焦于TI C2000系列微控制器,

weixin_33692284的博客 442

拓竹P1S封神玩法|AI图生3D+精准修改全攻略,打孔/挖盖再也不用瞎琢磨!

AI图生3D建模结合后期修改,让拓竹P1S用户轻松实现创意打印。文章详细介绍了从照片拍摄、AI模型生成到后期修改的全流程:使用腾讯混元3D或Tripo3D快速生成3D模型,通过Blender或Fusion360进行精准打孔、挖盖子等修改,最后在OrcaSlicer中优化切片参数适配P1S打印。重点解决了AI模型无法直接打印的问题,提供了壁厚控制、孔径调整等实用技巧,并针对常见打印问题给出解决方案,帮助新手实现从AI生成到成品打印的无缝衔接。

2501_93651177的博客 1877

spring boot 整合kafka,延迟启动消费者

    spring boot整合kafka的时候一般使用@KafkaListener来设置消费者,但是这种方式在spring启动的时候就会立即开启消费者。如果有需要根据配置信息延迟开启指定的消费者就不能使用这种方式。参考了类:KafkaListenerAnnotationBeanPostProcessor,我提取了一部分代码。可以根据需要随时动态的开启消费者。    为了方便使用,我自定义了一个...

weixin_42170534的博客 8435

Vue3 - 详解实现网站接入钉钉扫码登录功能,钉钉授权生成登录二维码用户用手机扫描二维码登陆,支持弹框式、浏览器单独新开页显示,钉钉扫描二维码登录详细流程及示例代码,最新vue集成钉钉扫码授权登录!

vue3,nuxt3,钉钉,扫码登录,vue3钉钉扫码登陆,钉钉授权第三方WEB网站扫码登录功能,钉钉扫码登录第三方网站,单点登录,二维码不显示,报错,扫了没反应,出错,vue3钉钉扫码登录,内嵌,获取个人信息,pc网页钉钉登录,钉钉扫码登录怎么新开一页,跳页显示二维码,内嵌登录二维码,iframe新页面弹出,弹出一个小窗口显示登录二维码,登录报错,扫码没反应,解决手机点登录报错没反应,官方文档,手机扫描钉钉二维码登录网站,页面弹出一个小窗口而不是打开一个页面,vue3中使用iframe实现另开小窗口扫码登

🏆 前端领域优质创作者 3694

2-11 附:文档的基本操作 - 查询

村西头的俏寡妇 1533

uniapp [安卓苹果App端] - 详细实现PDF预览功能在线预览PDF文档,Uniapp App端实现pdf文件预览在线预览pdf二进制文件流、本地pdf文档、PDF文件地址url路径(解决白屏

uni-app,安卓Android,苹果ios,安卓app端,苹果App端,uniapp苹果安卓app,uniapp在线预览pdf功能,在安卓苹果app平台实现PDF的预览查看,uniappApp端实现pdf文件预览,UNIAPP在线预览PDF文档,Uniappapp在线预览pdf文件流,从后端接口里获取pdf文件如何转成链接预览,预览pdf的插件,uni-app的pdf预览功能,uniapp使用pdf.js插件预览pdf文件,预览pdf白屏没有报错,打开后没反应,打开是空白,加载PDF时发生错误,如

🏆 前端领域优质创作者 1万+

C++从入门到进阶的系列书籍推荐(22本书)

要多读书,读好书!一本书要多读几遍才好,每次都可能有新的收获!特别在是有一定的工作年限和工作经验之后!读书百遍,其义自见! 下面就给大家推荐一下C++程序员进阶需要读的经典书籍: 1、C++入门书籍 C++是在C语言的基础上发展而来的,要学习C++之前需要先学习C语言。有了C语言基础之后再去学习C++。 1.1、C语言程序设计(谭浩强) 该书被公认为学习C语言程序设计的优秀教材,被全国大多数高校选用,是学习C语言的主流用书。本书比较通俗易懂,是初入者必备的书籍。 ........

dvlinker的技术专栏 4万+

【SpringMVC】| SpringMVC 入门

【SpringMVC】| SpringMVC 入门

m0_61933976的博客 4108

OpenClaw零基础教程:30分钟搭建你的第一个AI自动化助手

别再看那些满是代码、专业术语的教程了,那些都是给程序员看的。这篇教程,我把所有步骤拆到了极致,你跟着点鼠标就行,点错了都没关系,大不了重装一遍,5分钟的事。

2601_94871597的博客 96

SpringMVC——SpringMVC框架基本概述

1.SpringMVC框架概述 1.1 SpringMVC框架的基本说明 SpringMVC是基于Spring的,是Spring中的一个模块,专门用来做web开发使用的。 SpringMVC 也叫 Spring web mvc。是 Spring 框架的一部分,是在Spring3.0 后发布的。基于 MVC 架构,功能分工明确、解耦合。 SpringMVC也是一个容器,使用IoC核心技术,管理界面层中的控制器对象。SpringMVC的底层就是servlet,以servlet为核心,接收请求、处理请.

莫得感情得码农 5万+

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

SpringMVC | 快速上手SpringMVC

本节讲解了SpringMVC的基本使用

BoBooY的Java学习笔记 3363

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

SpringMVC 程序开发:为什么要学SpringMVC?如何学SpringMVC?

SpringMVC速通,整个SpringMVC的常用内容,快来学习!

努力 2347

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

全网最强SpringMVC教程 | 万字长文爆肝SpringMVC(一)

本文介绍了SpringMVC框架的基本概念和入门案例实现。主要内容包括: SpringMVC概述 基于MVC设计模式的轻量级Web框架 主要处理请求接收、业务转发和响应数据转换 相比Servlet更简单灵活 入门案例实现步骤 创建Maven web项目 导入SpringMVC和Servlet依赖 创建SpringMVC配置类 编写Controller处理请求 配置DispatcherServlet替代web.xml 关键点说明 使用@Controller注解标记控制器类 @RequestMapping定义请

qq_45832461的博客 1145

什么是springmvc springmvc的详细介绍

1.什么是springMVC? Spring Web MVC是一种基于Java的实现了MVC设计模式的、请求驱动类型的、轻量级Web框架。 2.SpringMVC处理请求的流程 2.1 首先用户发送请求–&gt;DispatherServlet 2.2 DispatcherServlet–&gt;HandlerMapping 2.3 DispatcherServlet–&gt;HandlerAd...

weixin_44585470的博客 4580

springMVC

基于狂神说的笔记+个人理解和总结

qq_45687780的博客 8885

SpringMVC:创建一个简单的SpringMVC框架

web.xml文件是Java Web应用程序的部署描述文件,用于配置Web应用程序的部署信息和配置参数。-- springMVC的前端控制器,此处为名称显示在Web服务器管理页面的 -->-- 如果以xxx-servlet.xml命名,并且位于/WEB-INF下,则服务器会自动识别,不需要配置 init-param-->--init-param配置是告诉服务器DispatcherServlet的配置文件在哪,此处是告诉服务器文件在src/classes下去找该配置文件 -->

qq_55038440的博客 2018

SpringMVC——注解配置SpringMVC

文章目录注解配置SpringMVC一、注解web.xml文件(1)创建初始化配置类(2)注册过滤器2、注解SpringMVC配置文件的配置类(1)组件扫描注解(2)开启SpringMVC 注解驱动(3)开启静态资源配置(4)配置拦截器(5)配置ViewController视图解析器(6)配置文件上传解析器(7)配置异处理器 注解配置SpringMVC 本文要介绍用注解方式代替web.xml与SpringMVC的配置文件 一、注解web.xml文件 实现步骤 (1)创建初始化配置类 创建一个初始化配置类,继承

chenxingxingxing的博客 4194

走进SpringMVC世界,从SpringMVC入门到SpringMVC架构

文章目录1.Springmvc入门1.1.Springmvc是什么1.2.Springmvc处理流程1.3.入门程序1.3.1.创建web工程1.3.2.导入jar包1.3.3.加入配置文件1.3.3.1.创建springmvc.xml1.3.3.2.springmvc.xml中配置处理器适配器HandlerAdapter1.3.3.3.springmvc.xml中配置处理器映射器HandlerM...

宜春 6943

springMVC开发手册

MVC是一种软件架构的思想,将软件按照模型、视图、控制器来划分M:Model,模型层,指工程中的JavaBean,作用是处理数据JavaBean分为两类:V:View,视图层,指工程中的html或jsp等页面,作用是与用户进行交互,展示数据C:Controller,控制层,指工程中的servlet,作用是接收请求和响应浏览器MVC的工作流程: 用户通过视图层发送请求到服务器,在服务器中请求被Controller接收,Controller调用相应的Model层处理请求,处理完毕将结果返回到Controller

AlbenXie的博客 711
上一篇: spring的JdbcTemplate
下一篇: springmvc页面跳转
RestartJava
博客等级 码龄7年 1粉丝 53原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值