当前位置:文档之家› spring+springmvc框架配置详解

spring+springmvc框架配置详解

1、基本概念1.1、Springspring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java开发框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中阐述的部分理念和原型衍生而来。

它是为了解决企业应用开发的复杂性而创建的。

Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。

然而,Spring的用途不仅限于服务器端的开发。

从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。

简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。

1.2、SpringMVCSpring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。

Spring MVC 分离了控制器、模型对象、分派器以及处理程序对象的角色,这种分离让它们更容易进行定制。

2.环境搭建详解2.1引入相应的包springMVC和spring包的结构发生了很大的变化,各个包都分开了,灵活,要求使用者更加深入的学习使用,当我们引入包的时候,以少为原则,少的话可以根据报错来找到相应的包,如果过多的话,包会报错异常的混乱,不容易分辨;sprinMVC和spring本身就是一家的,所以引入的包来说基本上和spring需要的架构包是一致的.在WEB-INF文件夹下新建注解文件springMVC-servlet.xml文件<?xml version="1.0"encoding="UTF-8"?><beansxmlns="/schema/be ans"xmlns:xsi="/2001/XMLSchema -instance"xmlns:aop="/s chema/aop"xmlns:context="http://www.springframework.o rg/schema/context"xmlns:jdbc="/ schema/jdbc"xmlns:mvc="/s chema/mvc"xmlns:p="/sch ema/p"xmlns:tx="/sc hema/tx"xmlns:util="/ schema/util"xsi:schemaLocation="http://www.springframew /schema/beans/schema/beans/spr ing-beans-3.2.xsd/schema/aop /schema/aop/sprin g-aop-3.2.xsd/schema/conte xt/schema/context/s pring-context-3.2.xsd/schema/jdbc/schema/jdbc/spri ng-jdbc-3.2.xsd/schema/mvc /schema/mvc/sprin g-mvc-3.2.xsd/schema/tx /schema/tx/spring -tx-3.2.xsd/schema/util /schema/util/spri ng-util-3.2.xsd"><!-- springMVC的配置写在servlet.xml文件中 --> <!-- 开启springMVC的注解(扫描类包,以应用注解对应的bean) --><context:component-scan base-package="com.hpe.*"/><!-- 配置springMVC的视图解析器(拼接文件名) --> <beanclass="org.springframework.web.servlet.view.Int ernalResourceViewResolver"p:viewClass="org.springframework.web.servle t.view.JstlView"p:prefix="/jsp/"p:suffix=".jsp"/><!-- springMVC不过滤的请求 --><!-- 一些的静态的资源我们不需要过滤 --><mvc:annotation-driven/><mvc:resources location="/image/"mapping="/image/**"/><mvc:resources location="/css"mapping="/css/**"/><mvc:resources location="/js/"mapping="/js/**"/><mvc:resources location="/jsp/"mapping="/jsp/**"/></beans>一个项目的全局配置点在web.xml,一个项目需要使用了多少框架,通过xml可以查看.<?xml version="1.0"encoding="UTF-8"?><web-appxmlns:xsi="/2001/XMLSchema-instance"xmlns="/xml/ns/javaee"xsi:schemaLocation="/xml/ns/ javaee /xml/ns/javaee/web-app_3_0.xsd"id="WebApp_ID"version="3.0"><display-name>TestSS</display-name><!-- 配置spring的上下文 --><context-param><param-name>contextConfigLocation</param-name><param-value>classpath:applicationContext.xml</param-value></context-param><!-- 加载spring监听器 --><listener><listener-class>org.springframework.web.context.ContextLo aderListener</listener-class></listener><!-- springMVC是一个过滤器,加载springMVC的过滤器 --><servlet><servlet-name>springMVC</servlet-name><!-- springMVC的核心过滤器 --><servlet-class>org.springframework.web.servlet.Dispatche rServlet</servlet-class></servlet><servlet-mapping><servlet-name>springMVC</servlet-name><url-pattern>/</url-pattern></servlet-mapping><welcome-file-list><welcome-file>index.html</welcome-file><welcome-file>index.htm</welcome-file><welcome-file>index.jsp</welcome-file><welcome-file>default.html</welcome-file><welcome-file>default.htm</welcome-file><welcome-file>default.jsp</welcome-file></welcome-file-list></web-app>框架配置完成启动服务器测试框架是否搭建成功,如果服务器正常启动说明框架搭建成功,反之框架没有搭建成功下面一个登陆小demoSpring的实体类层(bean层)<?xml version="1.0"encoding="UTF-8"?><web-appxmlns:xsi="/2001/XMLSchema-instance"xmlns="/xml/ns/javaee"xsi:schemaLocation="/xml/ns/ javaee /xml/ns/javaee/web-app_3_0.xsd"id="WebApp_ID"version="3.0"><display-name>TestSS</display-name><!-- 配置spring的上下文 --><context-param><param-name>contextConfigLocation</param-name><param-value>classpath:applicationContext.xml</param-value></context-param><!-- 加载spring监听器 --><listener><listener-class>org.springframework.web.context.ContextLo aderListener</listener-class></listener><!-- springMVC是一个过滤器,加载springMVC的过滤器 --><servlet><servlet-name>springMVC</servlet-name><!-- springMVC的核心过滤器 --><servlet-class>org.springframework.web.servlet.Dispatche rServlet</servlet-class></servlet><servlet-mapping><servlet-name>springMVC</servlet-name><url-pattern>/</url-pattern></servlet-mapping><welcome-file-list><welcome-file>index.html</welcome-file><welcome-file>index.htm</welcome-file><welcome-file>index.jsp</welcome-file><welcome-file>default.html</welcome-file><welcome-file>default.htm</welcome-file><welcome-file>default.jsp</welcome-file></welcome-file-list></web-app>Spring的dao层package com.hpe.dao;importorg.springframework.stereotype.Repository;//dao层注解配置@Repositorypublic class HelloDao {pu blic int getUser(){System.out.println("找到了用户");return 1;}}Spring的service层package com.hpe.service;importorg.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service;import com.hpe.dao.HelloDao;//service层注解配置@Servicepublic class HelloService {public HelloService() {System.out.println("hs构造方法开始执行");}//启动spring自动装配@Autowiredprivate HelloDao hd;public boolean hService(){int i = hd.getUser();if(i>0){return true;}return false;}}Spring的controller层package com.hpe.controller;importorg.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; importorg.springframework.web.bind.annotation.RequestMapping;import erBean;import com.hpe.service.HelloService;//spring提供的dao层的控制@Controllerpublic class HelloController {//启用注解(自动装配)@Autowiredprivate HelloService hs;public void setHs(HelloService hs) {this.hs = hs;}//设置访问地址@RequestMapping("hello")//从客户端获取表单信息的注解配置public String hc(UserBean user){System.out.println(user.getUsername());System.out.println(user.getPassword());boolean b = hs.hService();if(b){return "main";}return "login";}}前端登录页面login.jsp<%@page language="java"contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC"-//W3C//DTD HTML 4.01 Transitional//EN""/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type"content="text/html; charset=UTF-8"><title>登录页面</title></head><body><form action="../hello">用户名:<input type="text"name="username"/>密码:<input type="password"name="password"/><input type="submit"value="提交"/></form></body></html>登录成功页面main.jsp<%@page language="java"contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC"-//W3C//DTD HTML 4.01 Transitional//EN""/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type"content="text/html; charset=UTF-8"><title>主页</title></head><body>欢迎进入主页</body></html>测试页面(由于没有连接数据源,用户名和密码可以随意输入)测试成功页面。

相关主题