博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
springmvc学习(一)helloworld实例
阅读量:5220 次
发布时间:2019-06-14

本文共 2852 字,大约阅读时间需要 9 分钟。

今天介绍的是springmvc的学习,越来越多的企业开始选择springmvc+mybatis来构建系统架构,在电商热门的今天,springmvc+mybatis已成为电商项目架构的很好搭配。Spring mvc和struts2都属于表现层的框架,spring mvc是Spring框架的一部分,较于struts2框架使用的更加广泛;mybatis和hibernate都属于持久层的框架,mybatis是对jdbc操作数据库的的过程进行封装,使开发者只需要关注 SQL 本身,而不需要花费精力去处理例如注册驱动、创建connection、创建statement、手动设置参数、结果集检索等jdbc繁杂的过程代码。

首先建议eclipse安装一个springIDE,这个安装方式百度即可,安装的话就会有提示并且新建的时候能新建出配置文件

安装好以后,我们新建一个动态web项目,之后按照如下步骤来写

①配置web.xml文件

springDispatcherServlet
org.springframework.web.servlet.DispatcherServlet
contextConfigLocation
classpath:springmvc.xml
1
springDispatcherServlet
/

 其中,servlet-name可以随便写,我们命名是springDispatcherServlet,意思是spring的请求处理器,这个概念很重要。

这后的这些内容可看注释,学过servlet的人看明白应该没问题。

既然配置了请求处理器,那么就得有个请求的发起者,我在本例子中用的是index.jsp中的<a href="helloworld">hello world</a>把href的helloworld当成了一个请求的URL

②index.jsp

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"    pageEncoding="utf-8"%>
Insert title herehello world

 

当用户点击了这个超链接之后,springmvc先是通过web.xml中的springDispatcherServlet这个请求处理器把请求转到stringmvc.xml进行处理,

③stringmvc.xml,在src下面新建

 可以看到上面先配置的是自动扫描的包,他需要扫描到具体类的具体方法,我们写了一个处理器的类HelloWorld,在包com.bai.handler下面

④处理器类

package com.bai.handler;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;@Controllerpublic class HelloWorld {	/**	 * @author peng	 *1.使用@RequestMapping配置映射请求的url,这个url也就是index.jsp里面超链接的href的地址	 *2。返回值会通过视图解析器解析为实际的物理视图,对于InternalResourceViewResolver视图解析器,会做如下的解析	 *通过prefix+returnvalue+suffix这样的方式得到实际的物理视图,然后进行转发操作	 *就是将请求转发到了	 * /WEB-INF/views/success.jsp这个页面	 */	@RequestMapping("/helloworld")	public String hello(){		System.out.println("hello world");		return "success";	}}

 在这个类文件中,先写上@Controller 这个处理器的注释,然后是请求映射的地址@RequestMapping("/helloworld"),这个是下面的方法处理请求该地址的情况,我点击了超链接后,请求发送给/helloworld,那么走到stringmvc.xml中看到下面的hello()方法映射的地址就是该请求地址,那么这个方法就去处理这个请求,这个方法返回了字符串success

,返回了字符串还不行,需要映射到物理视图的层面,怎么映射呢?上面的stringmvc.xml配置文件中配置了视图解析器InternalResourceViewResolver

解析的方式就是      通过prefix+returnvalue+suffix这样的方式得到实际的物理视图,然后进行转发操作

此例子中返回的结果就是/WEB-INF/views/success.jsp,然后我只需要在新建views文件夹,新建success.jsp即可证明转发到了这个页面了

⑤success.jsp

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"    pageEncoding="utf-8"%>
Insert title heresuccess page

下面就看一下浏览器中的结果

点击后的结果

地址栏未变,是服务器端的转发,成功。

项目的结构

项目需要的jar包

这是基于spring4.0版本的

补充一下:

还有一种web.xml配置文件中的写法

 

具体内容请看上面的注释,结构稍有改变

大致流程

有不对的地方,欢迎批评指正。

 

转载于:https://www.cnblogs.com/baipeng/p/5727572.html

你可能感兴趣的文章
Class path & Path
查看>>
接口测试入门(4)--接口自动化测试框架 / list和map用法 / 随机选取新闻 (随机数生成) / 接口相关id映射...
查看>>
Entity Framework 连接 mysql 。(code first模式)
查看>>
WinForm用户自定义控件,在主窗体加载时出现闪烁;调用用户控件出现闪烁,需要鼠标才能够显示...
查看>>
web开发快速提高工作效率的一些资源
查看>>
在react底下安装环境
查看>>
hdu4888 Redraw Beautiful Drawings(最大流)
查看>>
Java——一个类的加载过程
查看>>
objective-c 取消执行的延迟函数
查看>>
python——装饰器例子一个
查看>>
获取 metadata 的完整例子 - 每天5分钟玩转 OpenStack(166)
查看>>
C#注册表操作类(完整版)
查看>>
ArcGIS Server GP服务使用常见错误总结
查看>>
Jzoj3883 线段树
查看>>
微信小程序_(组件)picker
查看>>
OpenCV图片拼接的两种方法
查看>>
基于eBox旋转编码器
查看>>
异常、架构、框架、序列化、接口
查看>>
[Linux发行版] 常见Linux系统下载(转)
查看>>
[Angular] N things you might don't know about Angular Route
查看>>