本文主要涉及SpringMVC知识:SpringMVC部署,SpringMVC框架,请求流程,请求定制(日期和文件处理),统一异常处理,拦截流程。
DispatcherServlet会拦截到所有的资源,导致一个问题就是静态资源(img、css、js)也会被拦截到,从而不能被使用。解决问题就是需要配置静态资源不进行拦截,在springmvc.xml配置文件添加如下配置 mvc:resources标签配置不过滤 1. location元素表示webapp目录下的包下的所有文件 2. mapping元素表示以/static开头的所有请求路径,如/static/a 或者/static/a/b
Spring MVC 是 Spring 框架中的一个模块,也是 Spring 的核心之一,常用作 web 开发,其底层是 Servlet,故也叫 Spring web mvc。因为内内部架构模式是 mvc 架构,故此称为 Spring MVC .
默认情况下,你在方法的参数列表中写什么,前端表单中 input 标签的 name 属性值就要是什么,比如:
选中 src 目录或者要生成 Servlet 的包,然后单击鼠标右键,New -> Create New Servlet,接着填写 Servlet 程序名,所属包以及 Servlet 全类名,同时 取消勾选 Java EE 6 即可,勾选则会生成注解式配置,后续学习过程中才会接触到。
JavaWeb是指通过java语言编写可以通过浏览器访问的程序的总称叫javaweb
SpringMVC主要有三个核心部分组成,DispatcherServlet、Controller、ViewResolver。 DispatcherServlet: 请求输入时:类似于一个带分配功能的Filter,其直接与前端交互,并截所有符合 url-pattern 的请求,并根据Mapping路径分发给处理对应请求的Controller。 请求处理完毕时:将ViewResolver渲染好的视图回传给前端。 Controller: 处理Http传来的请求,通常调用Service,再在Service中调用Dao持久层进行完整的数据处理,并将处理完毕的数据返回,返回以ModelAndView的形式,Model,通俗来讲,就是承载数据的一个HashMap,而View则是数据要发送的逻辑视图名,如果View缺省,默认是转发到HTTP发起的页面。 ViewResolver: 根据Controller处理好的数据,对指定目录下的文件进行渲染解析,完毕后将视图(不一定为页面、可能是Joson、Map各种数据类型,这根据Controller回传的数据决定)返回给DispatcherServlet。
Dubbo支持dubbo、rmi、hessian、http、webservice、thrift、redis等多种协议,但是Dubbo官网是推荐我们使用Dubbo协议的。下面我们就针对Dubbo的每种协议详解讲解,以便我们在实际应用中能够正确取舍。
通过@ResponseBody注解的方式实现json格式传到页面的方法。首先查看源代码如下图,springmvc的默认编码是“ISO-8859-1”;
Dubbo支持dubbo、rmi、hessian、http、webservice、thrift、memcached、redis等多种协议,但是Dubbo官网是推荐我们使用Dubbo协议的。下面我们就针对Dubbo的每种协议详解讲解,以便我们在实际应用中能够正确取舍。 dubbo协议 缺省协议,使用基于mina1.1.7+hessian3.2.1的tbremoting交互。 连接个数:单连接 连接方式:长连接 传输协议:TCP 传输方式:NIO异步传输 序列化:Hessian二进制序列化 适用范围:传入传出参数数据包较小(建议小于100K),消费者比提供者个数多,单一消费者无法压满提供者,尽量不要用dubbo协议传输大文件或超大字符串。 适用场景:常规远程服务方法调用 1、dubbo默认采用dubbo协议,dubbo协议采用单一长连接和NIO异步通讯,适合于小数据量大并发的服务调用,以及服务消费者机器数远大于服务提供者机器数的情况 2、他不适合传送大数据量的服务,比如传文件,传视频等,除非请求量很低。 配置如下:
每学习一个新知识我都会想到的是用它来实现对数据的CRUD,Angularjs也不例外,而实现CRUD的前提就是前后端数据能够进行交互,下面我就展示一个简易的前后端交互代码 Html+js代码: <!DOCTYPE html> <html lang="en" > <head> <meta charset="utf-8"> <title>servlet+angularjs数据交互</title> <script src="framework/angular-1.3.0.14/angular.js"
(3) 启动tomcat,在浏览器输入http://localhost:8080/工程名/访问服务器的路径
呃呃,首先小仙女初学Vue传值的时候,是费尽了脑汁,不知道怎么回事。终于,功夫不负有心人,把他弄明白了,如有错误,请多指教!!
一、开发步骤: 1 创建一个动态的web工程 2 在src路径下,创建一个servlet程序 3 修改doGet()或者 doPost()方法 A 设置响应的类型及编码 (1)直接在doGet 或者doPost方法中添加 response.setContentType("text/html;charset=utf-8"); response.setCharacterEncoding("utf-8"); request.setCharacterEncoding("utf-8");//对于get请求
简单来说:Servlet 是运行在 Web服务器(如Tomcat服务器)的,使用 Java编写的小应用程序。
前端登录成功之后,token会保存在浏览器的本地缓存里面,然后每次接口访问我们都会在header里面带上这个token,后台拿到这个token会去做用户认证,认证通过才会继续执行并成功返回,不通过提示用户验证失败或者请重新登录。前面我们的登录接口增加了token返回,并且保存前端把token进行了保存,但在接口请求的时候做token验证我们还没有做,接下来这篇文章讲的就是如何做token验证。
本文章来源于:https://github.com/Zeb-D/my-review ,请star 强力支持,你的支持,就是我的动力。
JavaWeb 是指,所有通过 Java 语言编写可以通过浏览器访问的程序的总称,叫 JavaWeb。
6.2 @RequestMapping:请求到处理器功能方法的映射规则,可定义到类和方法
1.JSP与Java Servlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览
全称: Asynchronized(异步) Javascript And Xml 技术组成有: Javascript、DOM、CSS 和 XMLHttpRequest
5.2 SSM集成 5.2.1 在WEB-INF下添加springmvc-servlet.xml(spring-mvc.xml)
- Web服务器 - 概念: - web资源: "英文直译"网"的意思 资源:一切数据文件 web资源:通过网络可以访问到的资源,通常指的是一切放在服务器上的文件" - web资源的分类: - 静态的web资源: " 内容是一成不变的" - 动态的web资源: " 内容有可能在不同的时间或者不同的人访问的时候会发生改变的" - web技术分类 - 静态的web技术
我们写 Servlet 代码的时候, 首先第一步就是先创建类, 继承自 HttpServlet, 并重写其中的某些方法.
分页查询则是在页面上将本来很多的数据分段显示,每页显示用户自定义的行数。可提高用户体验度, 同时减少一次性加载,内存溢出风险。
昨天我们将SpringMVC拦截后缀设置为*.form代表SpringMVC会拦截*.form结尾的后缀
Servlet是基于多线程的实现(CGI:是一项基于多进程的网络请求实现),Servlet的生命周期指的是一个Servlet从创建到销毁的整个过程:
分层的目的是为了解耦,解耦就是为了降低代码的耦合度,方便项目后期的维护和升级。
所有EL都是以${ 为起始、以}为结尾的。上述EL范例的意思是:从Session的范围中,取得
自动刷新不仅可以实现一段时间之后自动跳转到另一个页面,还可以实现一段时间之后自动刷新本页面。Servlet中通过HttpServletResponse对象设置Header属性实现自动刷新例如:
初始化SpringMVC环境(同Spring环境),设定SpringMVC加载对应的bean
Dubbo入门-协议&注册中心 一、配置dubbo多协议模式 1、默认协议 Dubbo缺省协议采用单一长连接和NIO异步通讯,适合于小数据量大并发的服务调用,以及服务消费者机器数远大于服务提供者机器
ServletConfig类时Servlet程序的配置信息类,使用Servlet可以实现
(4)ModelAndView 对象需要 new, 同时作为返回值类型
https://github.com/jishenghua/jshERP/releases/tag/2.3
用户删除与用户退出 以删除指定empId的员工为例 一、js方式 1、在jsp界面中,找到删除按钮所在的地方,为其添加超链接javascript:delEmp('${emp.empId'},代表点击删除时调用delEmp函数,并且传入empId的值。 2、在Jsp页面的script代码中创建delEmp(empId)函数。 3、完善业务层、servlet代码中的删除操作。 二、Ajax方式 1、定位到删除操作,通过javaScript:void(0)阻断a标签的href属性。使我们单击时,即可触发del()
Spring MVC是Spring提供的一个强大而灵活的web框架。借助于注解,Spring MVC提供了几乎是POJO的开发模式,使得控制器的开发和测试更加简单。这些控制器一般不直接处理请求,而是将其委托给Spring上下文中的其他bean,通过Spring的依赖注入功能,这些bean被注入到控制器中。
分页查询则是在页面上将本来很多的数据分段显示,每页显示用户自定义的行数。可提高用户体验度,同时减少一次性加载,内存溢出风险。
服务器端要获得请求的参数,有时还需要对获得的数据进行封装,SpringMVC可以接收的参数如下:
EL 全名为Expression Language EL 语法很简单,它最大的特点就是使用上很方便。接下来介绍EL主要的语法结构: ${sessionScope.user.sex} 所有EL都是以${为起始、以}为结尾的。上述EL范例的意思是:从Session的范围中,取得 用户的性别。假若依照之前JSP Scriptlet的写法如下: User user =(User)session.getAttribute("user"); String sex =user.getSex( ); 两者相比较之下,可以发
< context:component-scan/> 扫描指定的包中的类上的注解,常用的注解有:
采用Ajax整合表单数据进行提交给Servlet后台代码、可以完成同步或者异步操作。 以下中,并没有去声明同步或者异步。该属性为async,默认值为true[异步]. 那么需要注意的是同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。 通俗来说,同步操作会导致步骤内容具有阻塞性的操作 目录 1. 初级版_未采用ajax 1.1 页面代码 : 1.2 Servlet代码 : 2. 中级版_采用ajax 2.1 页面代码: 2.2 Servlet代码 3. 高级版_采用ajax 3.1 页
@RequestParam(name = “userId”, required = false, defaultValue = " ") userId: Int
jsp的C标签一般使用方法以及js接收servlet中的对象及对象数组 由于现流行的javaWeb框架提倡前后端分离,比如在SpringMvc中已经很少写servlet的一些东西;目前 前端jsp中大多是一些纯html和js,很少用到jstl的一堆东西,后端也仅仅处理一些前端的post、get请求或页面跳转,无须以往繁琐的xml路径映射和filter过滤。 不过有时也会用到servlet作用域中的一些东西,比如某个固定的值、上下文路径等等~,不过这些东西大多数也仅限于取值而不是设置值(或对象),所
必须配置SpringMvc对访问静态资源的支持,idea默认就是在main/webapp 下的文件路径,要在web-info同级的resource文件下放置,JSP中
文件上传和下载是非常常用的功能,很多系统中都会有文件上传和下载,比如附件上传下载,用户头像上传等等
Jsp 中的注释(三点) 合理、详细的注释有利于代码后期的维护和阅读 在JSP文件的编写过程中,共有三种注释方法:
spring(基础六) spring mvc 配置详解
领取专属 10元无门槛券
手把手带您无忧上云