springnvc基本入门程序
因为是入门程序就不接数据库了,单纯的springmvc
springmvc介绍:springmvc是sping的一个模块,与springmvc整合无需通过中间层进行整合
springmvc属于mvc的设计模式
M:model模型 ,包括pojo、service、dao、action等
V:view 视图,供用户观赏的页面,不多说
C:control 控制,进行流程控制,所有的request请求都需经过C,可以说是mvc的核心
执行流程:request请求过来之后首先到Control层,control层则请求或者调用model层来处理用户的各种请求来返回数据,
自然的C调用返回的数据也是返回到C,C可以直接响应,但一般都是经过视图渲染到request域到V,在就是response响应
其次就是springmvc的几个核心组件及其作用,如下:
1、前端控制器:DispacherServlet 接受请求,返回结果,转发器
2、处理器映射器:HandlerMapping 根据请求url查来Handler
3、处理器适配器:HandlerAdapter 按照特定的规则去执行Handler
4、视图解析器:View resourver 根据逻辑视图来返回真的页面 (就是为jsp加前后缀)
5、view接口:实现类呢可以支持不同的View类型,这里只介绍jsp,但是要知道还有一些如freemaker、pdf等视图
基本上用到的也就这几个组件,下面开始正式写代码
如下:
1、新建项目考入所需的jar包,注意spring-webmvc一定要有,老规矩具体的jar就不贴图了
2、在WEB-INF下的web.xml中配置 springmvc的核心控制器DispacherServlet,位于上面的spring-webmvc的包中
当然映射也不能忘掉,他规定了要拦截那些请求去处理,具体的请看注释
springmvc org.springframework.web.servlet.DispatcherServlet contextConfigLocation classpath:spring/springmvc.xml 1 springmvc *.action
3、然后就是springmvc几个核心的组件的配置了,配置好之后基本上springmvc基本框架就算完成了
首先新建一个sprngmvc.xml,名字随意,文件的位置有两种,以一种是系统默认加载位置在,只要你
将名字格式写成servletName-servlet.xml,并放在WEB-INF目录下,系统会自动的加载这个配置文件,
如果不是上面的规则,就需要用第2步的init-param去指定文件位置。我就按照自己的习惯,新建一个
与src平级的sourceFolder 用来存放配置文件,后期会有mybaits等整合配置文件都放在这里如图:
springmvc中主要是想让容器自动加载几个组件来让我们直接使用,如下:
4、下面就该写Handler,大多数人习惯叫Controller,就是叫法不同,两者是等价的,非注解的controller
需要实现Controller接口:org.springframework.web.servlet.mvc.Controller;
public class ItemsController implements Controller{ @Override public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception { //调用service查询数据库,查询用户列表,这里不连接数据库,使用静态模拟 ListuserList = new ArrayList (); //向list中填充静态数据 User user1 = new User(); user1.setBrithday(new Date()); user1.setId(001); user1.setName("zs"); User user2 = new User(); user1.setBrithday(new Date()); user2.setId(002); user2.setName("ls"); userList.add(user1); userList.add(user2); //返回modelAndView ModelAndView modelAndView = new ModelAndView(); //相当于request的setAttribute modelAndView.addObject("userList" , userList ); //指定视图:写入我们jsp存放的路径 modelAndView.setViewName("/WEB-INF/jsp/userList.jsp" ); return modelAndView ; }}
5、controller完成之后记得要在springmvc.xml中配置才行(因为是非注解的,所有的需要创建的对象都需要注册)
6、在WEB-INF下新建一个jsp的目录和userList.jsp的页面,用EL表达式将值放在request中的数据取出来展示即可
${userList }
最后翻入tomcat运行:得出
注意这个queryUser.action 就是我们在springmvc中配置的Handler的名字,还有其他的配置方法,这个是最直观
的,个人感觉容易理解
有问题请赐教,愿与君共勉