SpringMVC的解释与搭建Maven私有代理服务器
SpringMVC静态资源处理
通常会配置SpringMVC拦截所有请求
即将DisptcherServlet的url-pattern设置为
/
此时会导致SpringMVC同时拦截.css .jpg .js等静态资源
而我们并不会为这些静态资源添加相应的@RequestMapping
就会导致静态资源404错误
解决方法:
方法一:让SpringMVC拦截的范围缩小,
即设置url-pattern为*.do
或*.action或者*.spr
方法二:
在springmvc-servlet.xml中
<!--启用默认Servlet处理静态资源,以便支持 Restful URL -->
<mvc:default-servlet-handler/>
方法三:
在springmvc-servlet.xml中
<!--静态文件映射 -->
<mvc:resources mapping="/static/**" location="/static/"/>
处理静态资源,通常会把静态资源放到static文件夹统一管理
方法四:使用动静分离的方案,将静态文件都放在其它服务器上
1.静态资源移走后,springmvc服务器可以专门处理业务请求,
不必再为静态资源消耗处理能力(CPU/内存)
更重要的是不必为静态资源浪费带宽
可以使业务服务器能够并发处理更多请求
2.静态资源可以放在更便宜的服务器上,节省开支
3.静态资源消耗的带宽和磁盘都很大,可以借助CDN加速,
CDN即内容分发网络,是专业从事静态资源互联网级缓存业务的公司提供的
SpringMVC收集浏览器传过来数据
方法一:直接在请求处理方法中添加相应的参数,
SpringMVC会自动将请求体/URL中的参数绑定到请求方法的参数上
要求名字必须相同
如果名字不同,可以加@RequestParam(“表单中的名字”)
SpringMVC请求URL与方法映射
@RequestMapping()
既可以写在控制器类上,也可以写在请求处理方法上
如果类上和方法上都有,url将会连接在一起
SpringMVC的的重定向和转发
在Servlet中 重定向 response.sendRedirect(通常写成绝对url)
转发 request.getRequestDisptcher(url).forword(req,res);
在SpringMVC中 重定向 “redirect:url” Spring
会自动添加应用路径
转发 “forword:url”
SpringMVC从控制器向视图传数据
在Servlet中 调用request.setAttribute(“name”,value);
然后转发请求到JSP页面
在SpringMVC中
① 先拿到model,可以通过在参数中添加Model、ModelAndView等参数拿到
② 调用addObject() 或
addAtrribute() 方法,将数据设置进去
一句话:通过Model传过去!
Maven私有代理服务器
简称Maven私服
使用私服的原因:
1.Maven中央服务器或其它互联代理服务器速度都不如局域网速度快
所以在局域网内搭建一台Maven服务器将会大大
提高jar包的下载速度和稳定性
2.可以把把公司公用的jar(公司自有框架、工具类)包发布到私服上,
公司内部程序员使用时,只需要添加坐标即可
搭建Maven私服
1) 从senotype下载安装包(推荐使用2.x)
2) 安装成windows服务(在bin中运行
nexus install)
3) 启动nexus服务
4) 使用 localhost:8081/nexus访问
5) 登录 账号admin/密码admin123
6) 开启central的索引下载(repositories -> central -> config -> download remote index)
在central这一行点右键,repaire index update index
7) 添加阿里云镜像(可选)
(repositories -> add 在表单中填写 名字、阿里云地址)
8) 设置 public组
(repositories -> public.... ->把需要公开的仓库加到左侧
9) 在程序员自己的电脑上把私服的public url设置为镜像
SpringMVC Form标签库
<form:form modelAttribute=”modelName”>
<form:label
path=”属性名”>
<form:input path=”属性名”>
</form:form>
modelAttribute 指向数据模型对象,需要在控制器中创建一个模型对象,通过Model传到页面上
使用Form标签库的好处是,可以简化表单,使表单与模型对象的绑定更方便
SpringMVC的表单与模型对象的绑定
1.使用form标签库的modelAttribute可以指明表单与Model中哪个对象绑定
2.在请求处理方法中可以直接写一个模型类参数,这个模型类参数将被SpringMVC自动填充
3.而且这个模型类参数实际上也存在于Model中,这样如果再次返回这个JSP,则数据会直接传过去,不需要往Model中添加!
SpringMVC的解释与搭建Maven私有代理服务器的更多相关文章
- 实战maven私有仓库三部曲之三:Docker下搭建maven私有仓库
本章是<实战maven私有仓库>系列的第三篇,在前两章中,我们先在linux搭建maven私有仓库,然后在开发环境使用此仓库,本章我们在docker下快速搭建maven私有仓库,然后像前面 ...
- 安装Maven并搭建Maven私有仓库
一.说明 Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具.我们在进行Java代码开发的时候,Eclipse+Maven+Jetty是一个十 ...
- 使用nexus3.10搭建maven私有仓库
使用nexus3.10搭建maven私有仓库-----详见如下链接-- --此贴用于笔记 https://blog.csdn.net/vipbupafeng/article/details/80232 ...
- 在 Docker 搭建 Maven 私有库
在 Docker 搭建 Maven 私有库 小引 If you are developing software without a repository manager you are likely ...
- Nexus 搭建maven 私有仓库
nexus如果没有私服,我们所需的所有构件都需要通过maven的中央仓库和第三方的Maven仓库下载到本地,而一个团队中的所有人都重复的从maven仓库下载构件无疑加大了仓库的负载和浪费了外网带宽,如 ...
- Nexus搭建Maven私有仓库
原文:http://blog.csdn.net/rickyit/article/details/54927101 前言 Nexus Repository Manager is a Javaapplic ...
- window7利用Nexus搭建maven私有服务器
下载地址 https://www.sonatype.com/oss-thank-you-win64.zip: cmd管理员运行命令 nexus.exe/install Nexus Service:(n ...
- Linux (Ubuntu)安装nexus,搭建maven私有服务器
下载 nexus oos(开源版)https://www.sonatype.com/download-oss-sonatype 2 将下载的压缩包上传到/opt/nexus/文件夹下面 3 解压文件 ...
- 搭建Maven私有仓库
Nexus官网下载:Nexus Repository Manager OSS :https://www.sonatype.com/download-oss-sonatype 1.解压 $ tar -z ...
随机推荐
- [svc]influxdb最佳实战-监控对比
最近在搞容器的监控,遇到influxdb这个库,搞了两天,些许明白了些套路,做个记录,备忘.... 小结如下: influxdb go语言编写 默认情况influxdb创建的库关联autogen的RP ...
- js操作cookie的一些注意项
这两天做购物车逻辑.依照通常的做法,把预购信息存放在cookie里,结果发生了非常多不可理喻的事情,完整的证明了我对cookie的无知. . . 这么多年.非常少用cookie,由于认为它不安全 ...
- 什么是:before和:after?
前几天的晚上较全面的去看了下css的一些文档和资料,大部分的样式运用都没什么大问题了,只是有些许较陌生,但是也知道他们的存在和实现的是什么样式.今天主要想在这篇学习笔记中写的也不多,主要是针对:bef ...
- js基本知识4
1. 数组 看电影 电影院 座位 大的变量 里面可以放很多的值 var arr = [1,3,57]; var ar = new Array(); new object(); new Date() v ...
- 导出word功能,用html代码在word中插入分页符
<span lang=EN-US style="font-size:10.5pt;mso-bidi-font-size:12.0pt;font-family:" mce_st ...
- 【MySql】Java 批量插入数据库addBatch
//addBatch批量插入数据库 public static void insertCommentToMySql(Set<String> commentList) { Iterator& ...
- Hive Compiler过程
通过Parser将HiveQL转换成AST,通过Semantic Analyzer将AST转换为QB,通过Logical Plan Generator将QB转换成Operator Tree,通过Log ...
- Psql 安装问题
在openerp安装过程中报错: psql: could not connect to server: No such file or directory Is the server running ...
- Entity Framework(六):数据迁移
在前面的几篇文章中,简单的介绍了如何使用Entity Framework的Code First模式创建数据库,但是,在前面的几篇文章中,我们都是通过使用数据库初始化策略来做,也就是每次先删除数据库然后 ...
- Entity Framework(五):使用配置伙伴创建数据库
在上一篇文章中讲了如何使用fluent API来创建数据表,不知道你有没有注意到一个问题.上面的OnModelCreating方法中,我们只配置了一个类Product,也许代码不是很多,但也不算很少, ...