基于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完成的事情. ...
随机推荐
- yii2 pjax使用
Pjax::begin(['id'=>'datalist']); echo GridView::widget([ 'dataProvider' => $dataProvider, 'col ...
- android studio中断开SVN连接,并彻底清理项目中的.svn文件
首先,断开SVN连接: 在使用SVN过程中,我们会发现当我们第一次share到subversion的时候,下次就无法重新share了,也无法断开连接,就算我们将工程目录下的.svn目录删除它还是会无法 ...
- ueditor不自动加P解决方法
百度的Ueditor编辑器出于安全考虑; 用户在html模式下粘贴进去的html文档会自动被去除样式和转义. 虽然安全的,但是非常不方便. 做一下修改把这个功能去掉. 一.打开ueditor.all. ...
- Centos7.0安装配置PHP7.0
YUM安装所需开发包 yum install wget make gcc gcc-c++ bison autoconf patch \ pcre-devel zlib-devel openssl-de ...
- Div+CSS命名规范
注意事项:1.命名遵循驼峰式 2.尽量用中文 3.不加中杠和下划线 4.尽量不缩写,除非一看就明白的单词 头:header 标志:logo 友情链接:friendlink 内容:c ...
- Java Reflection
Java语言的反射机制 1. Java反射的含义:获取应用中正在运行的Java对象. 2. Java反射机制: 在运行的程序中,对于任意的类,都可以知道这个类的属性.方法以及构造函数,对于任意对象都可 ...
- C# Acrobat打开pdf出错,提示Acrobat.AcroPDDocClass不能强制转换为Acrobat.CAcroPDDoc,使用com组件{9B4CD3E7-4981-101B-9CA8-9240CE2738AE},HRESULT: 0x80004002
要批量将PDF文件内容按页转换为图片,在写的过程过程遇到两个问题. 一,下载的SDK中,提示要引用COM组件Acrobat,但在我的电脑上就是看不到,只能看到Adobe Acrobat 7.0 Bro ...
- Robot Framework入门学习2 创建第一个测试用例
本文章部分内容引自以下网址,感谢作者的辛苦分享 http://www.cnblogs.com/fnng/p/3871712.html http://blog.csdn.net/tulituqi/art ...
- 常见sizeof 笔试题
最近面试过程中遇到了很多很多sizeof的问题. 现在总结一下: #include <stdio.h> #include <string.h> void fun(int arr ...
- .NET entityframework for mysql ,datetime字段存储值时有误差
昨天Tester发现数据有问题,大部分时间“datetime类型”都多了一秒,很少一部分数据的时间能完全对上(年月日时分秒),因为缺少关键日志,就各种排查,最后发现在调用Savechange方法前一刻 ...