java spring mvc_java spring mvc 全注解
本人苦逼学生一枚,马上就要毕业,面临找工作,实在是不想离开学校.在老师的教导下学习了spring mvc ,配置文件实在繁琐,因此网上百度学习了spring mvc 全注解方式完成spring的装配工作;
废话不多说了上干货,其实我也没怎么理解不过简单的运行了一个spring mvc 全注解项目,也不能说是全注解,因为保留了web.xml和spring-serlvet.xml文件,(可能有的童鞋会说,这样配置可能对以后的修改不方便,无法达到只修改配置文件就切换某些环境。其实不是,零配置文件只是修改了类定义的配置,并没有修改之前配置文件的灵活性。我想无论谁也不会在之前的web.xml中去修改某个servlet的配置吧。况且这些所谓的配置文件灵活性,只是针对某个值,我们可以写在我们的properties文件里面,而且Spring对这类配置文件有很好的支持,而且使用很方便,有兴趣的童鞋可以去search一下。所以请打消这个配置不灵活的念头)。
首先我们看一下项目结构
项目采用maven管理,入门的同学应该都知道maven的优点,可以学习一下.
下面看一下核心的配置java类
1 packagecn.edu.lhs.config;2 importorg.springframework.context.annotation.Bean;3 importorg.springframework.context.annotation.ComponentScan;4 importorg.springframework.context.annotation.Configuration;5 importorg.springframework.web.servlet.config.annotation.EnableWebMvc;6 importorg.springframework.web.servlet.view.JstlView;7 importorg.springframework.web.servlet.view.UrlBasedViewResolver;8
9 @Configuration10 @ComponentScan("cn.edu.lhs")11 @EnableWebMvc12 public classwebConfig {13 /**
14 * jsp视图解析器15 */
16 @Bean17 publicUrlBasedViewResolver setupviewResolver(){18 UrlBasedViewResolver resilver=newUrlBasedViewResolver();19 resilver.setPrefix("WEB-INF/views/");20 resilver.setSuffix(".jsp");21 resilver.setViewClass(JstlView.class);22 returnresilver;23
24
25 }26 }
以上代码为配置spring-mvc.xml下的jsp视图解析的
让后就是去web.xml
package cn.edu.lhs.config;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.ServletRegistration.Dynamic;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.web.WebApplicationInitializer;
import org.springframework.web.context.support.AnnotationConfigWebApplicationContext;
import org.springframework.web.servlet.DispatcherServlet;
@ComponentScan("cn.edu.lhs")
public class webInitalizer implements WebApplicationInitializer {
public void onStartup(ServletContext servletContext)throws ServletException{
AnnotationConfigWebApplicationContext ctx=new AnnotationConfigWebApplicationContext();
ctx.register(webConfig.class);
ctx.setServletContext(servletContext);
Dynamic servlet=servletContext.addServlet("dispatcher", new DispatcherServlet(ctx));
servlet.addMapping("/");
servlet.setLoadOnStartup(1);
}
}
这里以webApplicationINitializer接口,利用AnnotationCOnfigwebApplicationCOntext 类
寄存器
public void register(Class ... annotatedClasses)
注册要处理的一个或多个注释类。
注册配置类
现在就可以删除web.xml里的东西了
项目代码:https://github.com/tsxylhs/spring-mvc
java spring mvc_java spring mvc 全注解相关推荐
- Spring MVC 全注解配置 (十一)
完整的项目案例: springmvc.zip 目录 实例 项目结构: 父级的pom配置: <?xml version="1.0" encoding="UTF-8&q ...
- spring+hibernate+Struts2 整合(全注解及注意事项)
最近帮同学做毕设,一个物流管理系统,一个点餐系统,用注解开发起来还是很快的,就是刚开始搭环境费了点事,今天把物流管理系统的一部分跟环境都贴出来,有什么不足的,请大神不吝赐教. 1.结构如下 2.jar ...
- spring boot(7)-mybatis全注解化
关于配置数据库可以参考上一篇文章,这里只讲mybatis pom.xml [html] view plaincopyprint? <!-- 引入mybatis --> <depend ...
- Spring学习day02-通过全注解模式实现CRUD
前言 1.为什么要学习纯注解开发? 2.纯注解开发的优势? 3.使用纯注解开发达到的目标 4.实现纯注解开发的步骤 一.纯注解开发 1.为什么要学习纯注解开发? 因为后续将要学习的SpringBoot ...
- Java持久层框架MyBatis全注解详解
org.apache.ibatis.annotations包下有着 mybatis 所有的注解,让我们一文打尽! 1 @Mapper MyBatis映射器的标记接口 从mybatis3.4.0开始加入 ...
- java 框架mvc_JAVA框架-MVC模式
MVC MVC 模式代表 Model-View-Controller(模型-视图-控制器) 模式.这种模式用于应用程序的分层开发. Model(模型) - 模型代表一个存取数据的对象或 JAVA PO ...
- spring-102-spring全注解快速实现事务
之前使用jdbc操作数据库,并使用事务的时候是这样操作: Connection connection = null;try {//connection = getConnection(....);// ...
- JAVA面试--史上最全 69 道 Spring 面试题和答案
2019独角兽企业重金招聘Python工程师标准>>> Spring 概述 1. 什么是spring? Spring 是个java企业级应用的开源开发框架.Spring主要用来开发J ...
- springmvc3.2+spring+hibernate4全注解方式整合(一)
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http:// ...
最新文章
- 输出超限怎么解决 oj_三菱PLC输出指示灯输出模块不亮怎么解决
- SAP物料标准成本估算结果
- python摄像头人脸识别代码_python 实现摄像头人脸识别
- MTV: Django眼中的MVC
- Java 锁之 CAS
- 如何为每个URL连接设置自定义SSLSocketFactory的TrustManager
- 单片机片外程序存储器数据存储器操作命令
- exp参数feedback_Oracle数据库逻辑增量备份恢复之exp/imp参数inctype
- MyEclipse添加Mybatis generator插件
- python使用梯度下降方法实现线性回归算法_python实现线性回归梯度下降算法
- linux c自写时钟,关于internal_add_timer函数(linux/kernel/timer.c中定义的)的一个问题
- 概率统计Python计算:单个正态总体均值的双侧区间估计
- 必应暗藏戏精模式,拿捏名人说话语气口头禅!官方还自推三种个性供挑选
- 图片上怎么加文字?看完就你知道了
- Windows获取系统唯一标识UUID
- 09-Hadoop编程
- 一个有用的数据库:中国研究数据服务平台(CNRDS)
- 前程无忧网站,职位信息一步到位函数爬取!!!真一步到位
- 权重衰退之罚(规则项)
- 大学生创新创业计划书参考
热门文章
- c语言简答程序源代码,C语言简答题答案
- 血栓清道夫机器人_血栓“清道夫”找到了!木耳排第三,排在第一很多人都并不知道...
- des和aes相比较有哪些特点_栓流气力输送相比较传统的高速气力输送方式而言,有哪些优势?...
- springboot urlresource_Spring Boot上传文件+部署到Tomcat
- c语言的一段程序,C语言第一个程序(入门)
- 怎么提升笔记本显卡性能
- ElasticSearch的update_by_query使用
- 机器视觉 光学工程专业_瑞士Idonus MEMS制造设备 创新技术 机器视觉测量(远心光学)...
- c语言’内存清除函数,c语言常用内存处理函数
- java thrift连接池_由浅入深了解Thrift之客户端连接池化