SpringMVC运行流程图解

用 Python 和 uiautomation 实现微信批量发送 思路是这样,将要发送的人员名单(包括称呼)以及发送内容都维护到Excel里,程序运行时读取Excel里内容,自动搜索人员姓名(微信昵称或备注名),填入要发送的内容,拼接上称呼(如果需要的话)自动点击发送,这样轮巡直至名单人员全部发送完成。、 阅读详情

SpringMVC运行流程图解

  1. 流程图    

  1. Spring工作流程描述
  1. 用户向服务器发送请求,请求被SpringMVC 前端控制器 DispatcherServlet捕获;
  2. DispatcherServlet对请求URL进行解析,得到请求资源标识符(URI):

判断请求URI对应的映射

    • 不存在:
      1. 再判断是否配置了mvc:default-servlet-handler:
      2. 如果没配置,则控制台报映射查找不到,客户端展示404错误
      3. 如果有配置,则执行目标资源(一般为静态资源,如:JSP,HTML)
    • 存在:
      1. 执行下面流程
  1. 根据该URI,调用HandlerMapping获得该Handler配置的所有相关的对象(包括Handler对象以及Handler对象对应的拦截器),最后以HandlerExecutionChain对象的形式返回;
  2. DispatcherServlet 根据获得的Handler,选择一个合适的HandlerAdapter。
  3. 如果成功获得HandlerAdapter后,此时将开始执行拦截器的preHandler(...)方法【正向】
  4. 提取Request中的模型数据,填充Handler入参,开始执行Handler(Controller)方法,处理请求。在填充Handler的入参过程中,根据你的配置,Spring将帮你做一些额外的工作:
    • HttpMessageConveter: 将请求消息(如Json、xml等数据)转换成一个对象,将对象转换为指定的响应信息
    • 数据转换:对请求消息进行数据转换。如String转换成Integer、Double等
    • 数据根式化:对请求消息进行数据格式化。 如将字符串转换成格式化数字或格式化日期等
    • 数据验证: 验证数据的有效性(长度、格式等),验证结果存储到BindingResult或Error中
  5. Handler执行完成后,向DispatcherServlet 返回一个ModelAndView对象;
  6. 此时将开始执行拦截器的postHandle(...)方法【逆向】
  7. 根据返回的ModelAndView(此时会判断是否存在异常:如果存在异常,则执行HandlerExceptionResolver进行异常处理)选择一个适合的ViewResolver(必须是已经注册到Spring容器中的ViewResolver)返回给DispatcherServlet,根据Model和View,来渲染视图
  8. 在返回给客户端时需要执行拦截器的AfterCompletion方法【逆向】
  9. 将渲染结果返回给客户端
  1. 源码解析
  1. 搭建环境
  • 拷贝jar包

spring-aop-4.0.0.RELEASE.jar

spring-beans-4.0.0.RELEASE.jar

spring-context-4.0.0.RELEASE.jar

spring-core-4.0.0.RELEASE.jar

spring-expression-4.0.0.RELEASE.jar

commons-logging-1.1.3.jar

spring-web-4.0.0.RELEASE.jar

spring-webmvc-4.0.0.RELEASE.jar

  • 配置文件web.xml

<servlet>

<servlet-name>springDispatcherServlet</servlet-name>

<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>

<init-param>

<param-name>contextConfigLocation</param-name>

<param-value>classpath:springmvc.xml</param-value>

</init-param>

<load-on-startup>1</load-on-startup>

</servlet>

<servlet-mapping>

<servlet-name>springDispatcherServlet</servlet-name>

<url-pattern>/</url-pattern>

</servlet-mapping>

  • 配置文件springmvc.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: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-4.0.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-4.0.xsd">

 

<!-- 设置扫描组件的包 -->

<context:component-scan base-package="com.atguigu.springmvc"/>

 

<!-- 配置视图解析器 -->

<bean id="internalResourceViewResolver"

    class="org.springframework.web.servlet.view.InternalResourceViewResolver">

<property name="prefix" value="/WEB-INF/views/"/>

<property name="suffix" value=".jsp"/>

</bean>

 

</beans>

  1. 完成HelloWorld
  • 页面链接

<a href="helloworld">Hello World</a>

  • 控制器方法

package com.atguigu.springmvc.handler;

 

import org.springframework.stereotype.Controller;

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

 

@Controller

public class HelloWorldHandler { 

@RequestMapping("/helloworld")

public String testHello(){ 

System.out.println("Hello,SpringMVC..."); 

return "success";

} 

}

  • 成功页面:/views/success.jsp

<h3>Success Page</h3>

  1. Debug实验
  • 正常流程,运行出结果
  • 没有配置<mvc:default-servlet-handler/>,测试,直接报404
  1. http://localhost:8080/SpringMVC_09_WorkFlow/helloworld2

四月 20, 2016 11:53:19 上午 org.springframework.web.servlet.PageNotFound noHandlerFound

警告: No mapping found for HTTP request with URI [/SpringMVC_09_WorkFlow/helloworld2] in DispatcherServlet with name 'springDispatcherServlet'

  1. http://localhost:8080/SpringMVC_09_WorkFlow/test.html

四月 20, 2016 11:54:16 上午 org.springframework.web.servlet.PageNotFound noHandlerFound

警告: No mapping found for HTTP request with URI [/SpringMVC_09_WorkFlow/test.html] in DispatcherServlet with name 'springDispatcherServlet'

  • 配置<mvc:default-servlet-handler/>,测试,会去查找目标资源
  • 测试,依然发生错误,这时,需要配置:<mvc:annotation-driven/>,否则,映射解析不好使。

  1. Debug流程分析
  • HandlerExecutionChain mappedHandler;包含了拦截器和处理器方法;

DispatcherServlet L902 916

org.springframework.web.servlet.HandlerExecutionChain

Handler execution chain, consisting of handler object and any handler interceptors. Returned by

 HandlerMapping's HandlerMapping.getHandler method.

  • HandlerMapping

org.springframework.web.servlet.HandlerMapping

Interface to be implemented by objects that define a mapping between requests and handler objects.

This class can be implemented by application developers, although this is not necessary, as org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping and org.springframework.web.servlet.handler.SimpleUrlHandlerMapping are included in the framework. The former is the default if no HandlerMapping bean is registered in the application context.

HandlerMapping implementations can support mapped interceptors but do not have to. A handler will always be wrapped in a HandlerExecutionChain instance, optionally accompanied by some HandlerInterceptor instances. The DispatcherServlet will first call each HandlerInterceptor's preHandle method in the given order, finally invoking the handler itself if all preHandle methods have returned true.

The ability to parameterize this mapping is a powerful and unusual capability of this MVC framework. For example, it is possible to write a custom mapping based on session state, cookie state or many other variables. No other MVC framework seems to be equally flexible.

Note: Implementations can implement the org.springframework.core.Ordered interface to be able to specify a sorting order and thus a priority for getting applied by DispatcherServlet. Non-Ordered instances get treated as lowest priority.

  • 没有配置<mvc:default-servlet-handler/>,<mvc:annotation-driven/>,发送一个不存在资源的请求路径,mappedHandler为null
  1. http://localhost:8080/SpringMVC_09_WorkFlow/helloworld2

 

  • 配置<mvc:default-servlet-handler/>,<mvc:annotation-driven/>,发送一个不存在资源的请求路径
  1. http://localhost:8080/SpringMVC_09_WorkFlow/helloworld2
  2. mappedHandler不为null,原因是当循环simpleUrlHandlerMapping时,当做静态资源处理

  1. 断点

 

NVIDIA Omniverse 技术浅析(二):USD 例如,一个用户可以负责场景的几何体设计,另一个用户可以负责材质和灯光的调整。USD 的开放性和可扩展性,结合 Omniverse 的 Kit 扩展框架,使得用户和开发者可以创建自定义的应用程序和工具,以满足特定的需求。USD 的材质和物理属性系统,结合 Omniverse 的 RTX 实时渲染技术,使得用户可以在虚拟环境中看到逼真的光影效果和物理模拟。USD 的时间轴和动画功能,结合 Omniverse 的物理属性系统,使得用户可以为虚拟环境中的元素创建复杂的动画和物理模拟。 阅读详情

相关推荐

如何制作微信小程序的在线购物商城应用

首先,你需要规划好商城的整体框架,确定好你的目标用户群体,思考他们的需求是什么。接下来,使用微信开发者工具创建一个新的小程序项目,输入你的AppID,选择好保存路径,点击“创建”,一个新的商城雏形就诞生了。你可以把这里当作自己的家,无论是工作之余的小憩,还是寻找灵感的驿站,我都希望你能在这里找到属于你的那份快乐和满足。数据是现代商业的灵魂,通过数据分析,你可以更准确地把握用户的行为模式,从而做出更明智的决策。

master_chenchen的博客 2428

Null ModelAndView returned to DispatcherServlet with name 'springMvc': assuming HandlerAdapter compl

因为没有配置handlerMapping与handlerAdpater。DefaultAnnotationHandlerMapping通过url映射到controller类上, AnnotationMethodHandlerAdpter通过url映射到controller的方法上。

qq_33064849的博客 3万+

esp32c6 开发实战:低功耗蓝牙(BLE)开发

蓝牙栈在此程序流程中已经启动并运行,但是应用程序的功能尚未定义。功能的定义是通过响应事件来实现的,当其他设备尝试读取或写入参数以及建立连接时就会触发事件回调函数处理。BT控制器在控制器端实现主机控制器接口(HCI),链路层(LL)和物理层(PHY)。BT控制器对用户应用程序不可见,并处理BLE堆栈的较低层。蓝牙堆栈(Bluedroid stack)定义了经典蓝牙(BT Classic)和低功耗蓝牙(BLE)的通用定义和API。的判断)等对于启动低功耗蓝牙来说不重要的代码,函数初始化和启用BT控制器。

月入鱼饵的博客 2742

记录一下:DEBUG DispatcherServlet:1076 - Null ModelAndView returned to DispatcherServlet with name ‘sprin

记录一下:DEBUG DispatcherServlet:1076 - Null ModelAndView returned to DispatcherServlet with name ‘springmvc’: assuming HandlerAdapter completed request handling 问题出现的一种可能原因 今天在调试移动端展示静态页面时的报错,返回时不显示静态页面.打断点调试时,前端可以接受数据,没有问题. 后端的方法执行时,也有数据,方法也可以调用. 前前后后找了好久,才

November_Pig的博客 2652

利用HipSTR从二代测序数据中精准解析短串联重复序列(STR)的遗传多态性

本文详细介绍了如何利用HipSTR工具从二代测序(NGS)数据中精准解析短串联重复序列(STR)的遗传多态性。通过三步走策略,HipSTR能够高效识别STR区域、估算重复次数并判定基因型,适用于法医鉴定、疾病研究和细胞系鉴定等多个领域。文章还提供了实战操作指南和常见问题解决方案,帮助研究者充分利用NGS数据开展STR分析。

weixin_28702105的博客 483

数字电子时钟——数字电路课设

本文设计了一种基于中小规模集成电路的数字电子时钟系统,采用模块化设计方法,包含晶振电路(CD4060+D触发器)、计时电路(74HC161计数器)、数码管驱动(CD4511)和整点报时功能。系统实现了60进制秒/分、24进制小时、7进制星期的计时显示,支持手动校时功能,并具备整点报时特性(59分54-58秒5次500Hz低音,59秒1次1000Hz高音)。通过分模块调试与整合,最终实物电路满足设计要求,获得优秀评价。

来自FZU——电子科学与技术专业 1489

SpringMVC源码学习(七)---解析ModelAndView

解析ModelAndView一. RequestMappingHandlerAdapter类invokeHandlerMethod()方法二. invokeAndHandle() 方法三. handleReturnValue()方法四. ModelAndViewMethodReturnValueHandler类中的handleReturnValue() 方法五. RequestMappingHandlerAdapter类中的getModelAndView()方法六. DispatcherServlet类中的

1892

奥比中光Gemini335L SDK实战:从标定参数到3D点云转换

本文详细介绍了奥比中光Gemini 335L深度相机的SDK实战应用,重点讲解如何跳过繁琐的棋盘格标定,直接调用出厂预标定参数实现高效的3D点云转换。通过解析内参、外参获取及四种核心坐标转换模式,并结合OpenCV等工具,指导开发者快速将相机集成到机器人抓取、三维测量等项目中,实现开箱即用的3D视觉解决方案。

raspberrypi5的博客 639

spring mvc null Null ModelAndView 问题

查看日志出出现下面的错误: DEBUG [org.springframework.web.servlet.DispatcherServlet] - Null ModelAndView returned to DispatcherServlet with name ‘springMVC’: assuming HandlerAdapter completed request handling。 出现的...

liukeshitou的博客 3194

基于ARDUINIO的5路红外循迹小车

基于ARDUINIO的5路红外循迹小车 新手抄袭了很多大神的代码。这里表示感谢。 #define STOP 0 #define FORWARD 1 #define BACKWARD 2 #define STURNLEFT 3 #define STURNRIGHT 4 #define TURNLEFT 5 #define TURNRIGHT 6 #define TURNRIGHT90 7 #define TURNLEFT90 8 int leftA_PIN = A0; int

weixin_48214416的博客 4381

第3章: MMU Interval Notifier 区间通知器的核心原理⭐

摘要:区间级内存通知机制分析 本文分析了Linux内核中区间级内存通知机制(mmu_interval_notifier)的设计原理与实现。该机制针对传统全局通知(mmu_notifier)存在的性能开销大、无法精确控制等问题,通过引入区间树(Interval Tree)实现精确匹配,仅当内存变化与注册区间重叠时才触发回调。核心优势包括:1)O(log n + k)的高效查找性能;2)支持独立管理各内存区间;3)实现高并发处理不同区间的失效事件。

图形/计算GPU的驱动与虚拟化技术分享园地 2026

Null ModelAndView returned to DispatcherServlet with name ‘springmvc‘: assuming HandlerAdapter compl

如果前段输出控制台没有报错的话就是前段vue进行双向绑定代码粗心写错了

qq_41207418的博客 1881

如何在不牺牲精度的前提下,把 YOLOv11 压缩到 Jetson 能跑的程度

YOLOv11 在目标检测任务中具备较强的准确性与多尺度鲁棒性,但其原始模型参数规模与计算量,对边缘设备来说并不友好,特别是面向 Jetson 这类资源受限的推理平台。本文基于实际部署场景,逐步拆解从结构层级改造、剪枝策略制定、量化导出流程,到 Jetson TensorRT 推理落地全过程。在不牺牲主干精度的前提下,最终实现 YOLOv11 推理延迟缩短 3 倍、模型体积压缩 4 倍、mAP 损失控制在 1% 以内的轻量化优化结果,并总结出一条可复用的工程路径,供工业界与边缘侧模型部署开发者参考。

努力分享一些人工智能、计算机视觉、影像等相关的知识干货! 2426

SpringMVC的运行流程图解

运行流程图解 1. 流程图 2. Spring工作流程描述 1) 用户向服务器发送请求,请求被SpringMVC 前端控制器 DispatcherServlet捕获; 2) DispatcherServlet对请求URL进行解析,得到请求资源标识符(URI): 判断请求URI对应的映射 ① 不存在: a) 再判断是否配置了mvc:default-servlet-handler: b) 如果没配置,则控制台报映射查找不到,客户端展示404错误 c) 如果有配置,则执行目标资源(一般为静态资源,如:JSP,H

naumy的博客 351

Camera2Demo

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

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

13SpringMVC运行流程图解

阅读导航。

本人主攻Java,希望自己能成为出色的程序员。 267

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

java开发流程图_springMVC框架之运行流程图解

今天是刘小爱自学Java的第126天。感谢你的观看,谢谢你。Java应用现在基本都是web应用,而Web层自然就是web应用中非常重要的部分了。如果说我们前面学的mybatis对应着Dao层,spring对应着Service层。那springMVC就对应着Web层,它是spring框架为Web层提供的一个Web框架。我们以前是直接在Web层中创建servlet,使用框架比其更加地强大,本质上差不多...

weixin_39733232的博客 357

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

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

调度流程图_springMVC框架之运行流程图解

今天是刘小爱自学Java的第126天。感谢你的观看,谢谢你。Java应用现在基本都是web应用,而Web层自然就是web应用中非常重要的部分了。如果说我们前面学的mybatis对应着Dao层,spring对应着Service层。那springMVC就对应着Web层,它是spring框架为Web层提供的一个Web框架。我们以前是直接在Web层中创建servlet,使用框架比其更加地强大,本质上差不多...

weixin_36465073的博客 323

SpringMVC——运行流程图解(笔记)

流程图 Spring工作流程描述 用户向服务器发送请求,请求被SpringMVC 前端控制器 DispatcherServlet捕获; DispatcherServlet对请求URL进行解析,得到请求资源标识符(URI): 判断请求URI对应的映射 不存在: 再判断是否配置了mvc:default-servlet-handler: 如果没配置,则控制台报映射查找不到,客户端展示404错误 如果有配置,则执行目标资源(一般为静态资源,如:JSP,HTML) 存在

baidu_41924165的博客 252

Springmvc运行流程(图解)

重点:关于流程问题重点看一下这个图和这个视频。。有时间仔细看一下,源码调试 源码调试:

weixin_44050355的博客 216

springMVC框架介绍以及运行流程(图解)

1Springmvc是什么?   spring web mvc和struts2都属于表现层的框架,spring web mvc是spring框架的一部分(所以spring mvc与spring之间不需要整合,它们是同一家公司出的),我们可以从spring的整体结构中看出来:    2SpringMVC处理流程 转载于:https://www.cnblogs.com/wyhluc...

weixin_30478619的博客 152

SpringMVC-运行流程图解&Spring整合SpringMVC_提出问题&解决方案

SpringMVC SpringMVC_运行流程图解 <!-- 配置自动扫描的包 --> <context:component-scan base-package="com.atguigu.springmvc"></context:component-scan> <!-- 配置视图解析器 --> <bean ...

Aqours的博客 291

java开发技术之SpringMVC运行流程图解

1 流程图 2 Spring工作流程描述 用户向服务器发送请求,请求被SpringMVC 前端控制器 DispatcherServlet捕获; DispatcherServlet对请求URL进行解析,得到请求资源标识符(URI): 判断请求URI对应的映射 不存在: 再判断是否配置了mvc:default-servlet-handler: 如果没配置,则控制台报映射查找不到,客户端展示404错误 如果有配置,则执行目标资源(一般为静态资源,如:JS,CSS,HTML) 存在.

m0_58371965的博客 249

SpringMVC框架搭建及重点

1、SpringMVC重要组件 1.1:DispatcherServlet: 前端控制器,接收所有请求(如果配置/不包含 jsp) 1.2 :HandlerMapping: 解析请求格式的.判断希望要执行哪个具体的方法. 1.3:HandlerAdapter: 负责调用具体的方法. 1.4:ViewResovler:视图解析器.解析结果,准备跳转到具体的物理视图 2、SpringMVC运行原理 ...

北城落花雨的博客 345

SpringMVC框架(二)

SpringMVC框架(二) 第6章 视图解析6.1 SpringMVC如何解析视图概述6.2 视图和视图解析器6.3 视图6.4 常用的视图实现类6.5 JstlView6.5.1 实验代码6.6 视图解析器6.7 常用的视图解析器实现类6.8 mvc:view-controller标签6.9 重定向第7章 综合案例RESTRUL_CRUD7.1 RESTRUL_CRUD_需求7.1.1 显示所有员工信息7.1.2 添加操作-去往添加页面7.1.3 添加操作-添加员工7.1.4 删除操作7.1.5 修改操

无 1481

SpringMVC笔记

一、 SpringMVC搭建过程: 1、导入jar 2、在web.xml中配置springMVC的核心(前端)控制器DispatcherServlet 作用:加载springMVC的配置文件,在下方的配置方式下,DispatcherServlet自动加载配置文件,此时的配置文件有默认的位置和名称 默认位置:WEB-INF下,默认名称-servlet.xml,例如以下配置方式的文件名:springMVC-servlet.xml 当加载了配置文件,springMVC就会根据扫描组件找到控制层 <serv

m0_53703555的博客 292

【SpringMVC】——图解执行流程

springmvc执行流程执行流程1、用户发送请求到前端控制器DispatcherServlet2、DispatcherServlet收到请求调用处理映射器HandlerMapping3、处理映射器根据请求url找到具体的处理器,生成处理器执行链HandlerExecutionChain(包含处理器对象和处理器拦截器)返回给DispatcherServlet4、DispatcherServlet根...

漫漫长途,终有回转;余味苦涩,终有回甘 1万+
上一篇: Spring整合SpringMVC_提出问题
下一篇: SpringMVC--------拦截器
HelloWorld_AA
博客等级 码龄9年 18粉丝 96原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值