基于java代码的Spring-mvc框架配置
Spring 版本 4.3.2 maven项目
1.首先上项目目录图,主要用到的配置文件,略去css和js的文件

引包:

2.主要代码:
(1)NetpageWebAppInitializer类
package config; import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer; /**
*@author 作者 Yu chenchen
*@version 创建时间:2016年12月1日 下午4:46:20
*类说明:该类会自动的配置DispatcherServlet和spring应用上下文,spring的应用上下文会位于应用程序的Servlet上下文之中
*/
public class NetpageWebAppInitializer extends
AbstractAnnotationConfigDispatcherServletInitializer { //将DispatcherServlet映射到"/",处理所有的请求
@Override
protected String[] getServletMappings() {
// TODO Auto-generated method stub
return new String[]{"/"};
}
//返回的带有@Configuration注解的类将会用来配置ContextLoaderListener创建的应用上下文中的bean
@Override
protected Class<?>[] getRootConfigClasses() {
// TODO Auto-generated method stub
return new Class<?>[]{RootConfig.class};
}
//返回带有@Configuration注解的类将会用来定义DispatcherServlet应用上下文中的bean
@Override
protected Class<?>[] getServletConfigClasses() {
// TODO Auto-generated method stub
return new Class<?>[]{WebConfig.class};
}
}
(2)WebConfig类
package config; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.ViewResolver;
import org.springframework.web.servlet.config.annotation.DefaultServletHandlerConfigurer;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
import org.springframework.web.servlet.view.InternalResourceViewResolver; /**
*@author 作者 Yu chenchen
*@version 创建时间:2016年12月1日 下午5:13:20
*类说明:
*/
@Configuration
@EnableWebMvc //启用Spring MVC
@ComponentScan(basePackages={"web"})//自动扫描包web下的所有控制器
public class WebConfig extends WebMvcConfigurerAdapter { //配置jsp视图解析器
@Bean
public ViewResolver viewResolver(){
InternalResourceViewResolver resolver=new InternalResourceViewResolver();
resolver.setPrefix("/jsp/");//设置视图路径
resolver.setSuffix(".jsp");
resolver.setExposeContextBeansAsAttributes(true);
return resolver;
}
//配置静态资源的处理
@Override
public void configureDefaultServletHandling(
DefaultServletHandlerConfigurer configurer) {
// TODO Auto-generated method stub
configurer.enable();
super.configureDefaultServletHandling(configurer);
}
}
(3)RootConfig类
package config; import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.ComponentScan.Filter;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.FilterType;
import org.springframework.web.servlet.config.annotation.EnableWebMvc; /**
*@author 作者 Yu chenchen
*@version 创建时间:2016年12月1日 下午4:55:11
*类说明:
*/
@Configuration
@ComponentScan(basePackages={"config"},
excludeFilters={@Filter(type=FilterType.ANNOTATION,value=EnableWebMvc.class)}
) //配置非web的组件,通常是后端的中间层和数据层组件
public class RootConfig { }
(4)HomeController类
package web; import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import static org.springframework.web.bind.annotation.RequestMethod.*;; /**
*@author 作者 Yu chenchen
*@version 创建时间:2016年12月1日 下午5:39:53
*类说明:
*/
@Controller
public class HomeController { //配置对"/"的请求
@RequestMapping(value="/",method=GET)
public String goHome(){
return "home";//返回视图名
}
}
(5)home.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<link rel="stylesheet" type="text/css" href="css/test1.css">
</head> <!--toolbar-->
<body>
<div id="toolbar" class="ss">
<div class="s0">
<div class="login" >
<div class="logo"><img src="img/toolbar_logo.png"></img> </div>
<input class="s1" placeholder="输入账号">
<input class="s2" >
<input type="button" class="button1" value="登陆">
<a href="#" class="s3">注册</a>
</div>
<div class="email"> <a href="#" >邮件</a></div>
<div class="email"> <a href="#" >说两句</a></div>
<div class="s4"> <a href="#"><img src="img/sohunewsapp2.jpg"></a></div>
</div>
</div>
<!-- 主要页面 -->
<div class="main">
<!-- 第一行部分 导航-->
<div class="nav"></div> <!-- 第二部分 搜索栏-->
<div class="search"></div> <!-- 第三部分 新闻内容-->
<div class="content"></div>
</div>
</body>
<script type="text/javascript" src="js/test1.js"></script>
</html>
注意事项:将项目根路径映射到webapp下,不然会找不到资源。

3. 测试

基于java代码的Spring-mvc框架配置的更多相关文章
- 【Java】关于Spring MVC框架的总结
SpringMVC是一种基于Java,实现了Web MVC设计模式,请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将Web层进行职责解耦.基于请求驱动指的就是使用请求-响应模型,框架的 ...
- 基于纯Java代码的Spring容器和Web容器零配置的思考和实现(3) - 使用配置
经过<基于纯Java代码的Spring容器和Web容器零配置的思考和实现(1) - 数据源与事务管理>和<基于纯Java代码的Spring容器和Web容器零配置的思考和实现(2) - ...
- 【Java Web开发学习】Spring MVC 开始配置
Spring MVC 开始配置 转载:http://www.cnblogs.com/yangchongxing/p/8871370.htm 学习搭建最简单的Spring MVC框架. ======== ...
- 从零开始学 Java - 搭建 Spring MVC 框架
没有什么比一个时代的没落更令人伤感的了 整个社会和人都在追求创新.进步.成长,没有人愿意停步不前,一个个老事物慢慢从我们生活中消失掉真的令人那么伤感么?或者说被取代?我想有些是的,但有些东西其实并不是 ...
- [译]17-spring基于java代码的配置元数据
spring还支持基于java代码的配置元数据.不过这种方式不太常用,但是还有一些人使用.所以还是很有必要介绍一下. spring基于java代码的配置元数据,可以通过@Configuration注解 ...
- Spring MVC 框架的架包分析,功能作用,优点
由于刚搭建完一个MVC框架,决定分享一下我搭建过程中学习到的一些东西.我觉得不管你是个初级程序员还是高级程序员抑或是软件架构师,在学习和了解一个框架的时候,首先都应该知道的是这个框架的原理和与其有关j ...
- spring mvc+myBatis配置详解
一.spring mvc Spring框架(框架即:编程注解+xml配置的方式)MVC是Spring框架的一大特征,Spring框架有三大特征(IOC(依赖注入),AOP(面向切面),MVC(建模M- ...
- 使用 Spring 2.5 基于注解驱动的 Spring MVC
http://www.ibm.com/developerworks/cn/java/j-lo-spring25-mvc/ 概述 继 Spring 2.0 对 Spring MVC 进行重大升级后,Sp ...
- spring MVC框架入门(外加SSM整合)
spring MVC框架 一.什么是sping MVC Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面.Spring 框架提供了构建 W ...
- Spring MVC 框架学习
一.spirng的简介 Spring是一个开源框架,它由Rod Johnson创建.它是为了解决企业应用开发的复杂性而创建的.Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情. ...
随机推荐
- draw: Could not use program error=0x505
原因:Android的模拟器在ADT中调试运行AVD时速度太慢.也就是说创建的虚拟手机配置太好,电脑带不动. 解决办法:从新创建虚拟手机,是手机配置低一点,具体创建方法如下: 开始先点运行,也就是下图 ...
- 使用spring配置quartz定时器
quartz是石英钟的意思,所以用这个名字来做定时器的框架名称再适合不过.一年前做项目的时候有用过这个框架,当时没有整理,今天刚好新的商城系统也需要定时器.想要达到的效果是:每天的固定时间,比如凌晨3 ...
- Java浮点数float,bigdecimal和double精确计算的精度误差问题总结
(转)Java浮点数float,bigdecimal和double精确计算的精度误差问题总结 1.float整数计算误差 案例:会员积分字段采用float类型,导致计算会员积分时,7位整数的数据计算结 ...
- Ant编译提示“Unsupported major.minor version 52.0”
今天在使用Ant编译build.xml文件时报错"java.lang.UnsupportedClassVersionError:com/sun/tools/javac/Main : Unsu ...
- asp.net Word Document Open return null
- 使用cookie实现计数器功能
思路是:若第一次访问,创建cookie.若访问次数大于一,则先读出cookie值赋给一个值,然后再重新写入cookie. <?php if(!isset($_COOKIE['num'])){ $ ...
- interactivePopGestureRecognizer属性
苹果一直都在人机交互中尽力做到极致,在iOS7中,新增加了一个小小的功能,也就是这个api:self.navigationController.interactivePopGestureRecogni ...
- vs2015 附加到进程找不到w3wp.exe
vs2015 附加到进程找不到w3wp.exe 解决办法: 浏览器打开你访问的IIS地址后就出现了~!!!!!!!!!
- CodeSmith Generator 7.0.2激活步骤
地址是:http://www.cnblogs.com/dunitian/p/4096917.html
- Hibrenate学习的第一天
问题一:用sqlyog创建一个数据库,用Hibernate传入中文为什么变? 答:在hibernate中的数据连接处要添加 ?useUnicode=true&characterEncoding ...