java springmvc 注册中央调度器代码解析

这篇文章主要介绍了java springmvc 注册中央调度器代码解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

在WEB-INF下的web.xml中配置

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
     version="3.1">
  <!--注册springmvc框架的核心对象DispatcherServlet(中央调度器)-->

  <!--
    在服务器启动的时候,会找/WEB-INF/myweb-servlet.xml ,/WEB-INF/springmvc-servlet.xml
    找的文件命名是: 目录是WEB-INF, 文件名称是: <servlet-name>-servlet.xml

    为什么要找这个文件?
     在DispatcherServlet这个Servlet的init()方法中,会创建springmvc的容器对象WebApplicationContext,
     在创建容器对象时,会加载读取springmvc需要的配置文件,默认查找位置就是/WEB-INF/<servlet-name>-servlet.xml
    springmvc需要的配置文件,可以单独指定的,需要配置参数contextConfigLocation.

  -->
  <servlet>
    <servlet-name>springmvc</servlet-name>
    <!--前端控制器(front controller)-->
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>

    <!--指定springmvc配置文件-->
    <init-param>
      <param-name>contextConfigLocation</param-name>
      <param-value>classpath:springmvc.xml</param-value>
    </init-param>
    <!--在服务器启动的时候,创建Servlet对象-->
    <load-on-startup>1</load-on-startup>
  </servlet>

  <servlet-mapping>
    <servlet-name>springmvc</servlet-name>
    <!--
      <url-pattern> : 表示把请求交给指定的Servlet对象。只有把请求交给DispatcherServlet,
      这样的请求才能使用springmvc框架处理。 使用DispatcherServlet接收用户的请求。
      在框架中url-pattern:
      1.扩展名: *.xxxx , xxxx 就是自定义的扩展名。 例如 *.do , *.action,*.mvc等等,不能使用*.jsp
      2.使用斜杠"/"
    -->
    <url-pattern>*.do</url-pattern>
  </servlet-mapping>
</web-app>

springmvc的核心对象是:DispatcherServlet

springmvc最基本的依赖是:

<?xml version="1.0" encoding="UTF-8"?>

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 <modelVersion>4.0.0</modelVersion>

 <groupId>com.bjpowernode</groupId>
 <artifactId>ch01-primary</artifactId>
 <version>1.0-SNAPSHOT</version>
 <packaging>war</packaging>

 <name>ch01-primary Maven Webapp</name>
 <!-- FIXME change it to the project's website -->
 <url>http://www.example.com</url>

 <properties>
  <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  <maven.compiler.source>1.8</maven.compiler.source>
  <maven.compiler.target>1.8</maven.compiler.target>
 </properties>

 <dependencies>
   <dependency>
     <groupId>javax.servlet</groupId>
     <artifactId>javax.servlet-api</artifactId>
     <version>3.1.0</version>
   </dependency>
   <!--springmvc的依赖-->
   <dependency>
     <groupId>org.springframework</groupId>
     <artifactId>spring-webmvc</artifactId>
     <version>4.3.16.RELEASE</version>
   </dependency>
 </dependencies>

 <build>
   <plugins>
     <plugin>
       <artifactId>maven-compiler-plugin</artifactId>
       <version>3.1</version>
       <configuration>
         <source>1.8</source>
         <target>1.8</target>
       </configuration>
     </plugin>
   </plugins>
 </build>
</project>

在resources文件夹下配置springmvc.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

  <!--springmvc的配置文件: 声明的web相关的对象,例如处理器对象,视图对象等-->
  <!--声明处理器对象, 让容器创建处理器对象,并把请求交给这个对象
    class:处理器类的全限定名称
    id:请求的uri地址,需要以"/"开头。
  -->
  <bean id="/some.do" class="com.bjpowernode.controller.MyController" />

  <!--声明视图解析器:springmvc中的一个对象,处理视图的。能指定视图的路径和扩展名
    InternalResourceViewResolver:内部资源视图解析器,处理jsp,jstl等视图文件
  -->
  <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <!--指定前缀:视图文件目录-->
    <property name="prefix" value="/WEB-INF/view/" />
    <!--指定后缀:视图文件的扩展名-->
    <property name="suffix" value=".jsp" />
  </bean>
</beans>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Java框架搭建之Maven、Mybatis、Spring MVC整合搭建(图文)

    本文主要介绍了Java框架搭建之Maven.Mybatis.Spring MVC整合搭建(图文),分享给大家,具体如下: SSM(Spring+SpringMVC+Mybatis),目前较为主流的企业级架构方案.标准的MVC设计模式,将整个系统划分为显示层.Controller层.Service层.Dao层四层,使用SpringMVC负责请求的转发和视图管理,Spring实现业务对象管理, MyBatis作为数据对象持久化引擎. 框架详情 Spring 是一个轻量级的Java开发框架,它是为了解

  • Java的作业调度类库Quartz基本使用指南

    一.常用接口: 1.Job接口:该接口只有一个方法 void execute(JobExecutionContext context) 开发者实现该接口定义需要执行的任务.JobExecutionContext类提供调度上下文的各种信息 2.JobDetail:用于描叙Job实现类及其他的一些静态信息 3.Trigger:描叙触发Job执行的时间触发规则 4.Calendar:定义了一个关联Trigger可能(或者不可能)触发的时间空间.它没有定义触发的真实时间,而是用在在普通的Schedule

  • java定时调度器(Quartz)使用实例

    1.Quartz定时器执行流程Quartz需要定义执行任务.触发器,在任务中指定执行的类对象及对象的方法,触发器中定义执行的时间.执行的任务. 2.在WEB环境中的配置 复制代码 代码如下: <!--定义任务类 --><bean id = "tmpTask" class="com.tmp.task.BcdTask"/><!-- 定义调用对象和调用对象的方法, tmpWork为BcdTask中的一个方法--><bean id=

  • Java Spring MVC 上传下载文件配置及controller方法详解

    下载: 1.在spring-mvc中配置(用于100M以下的文件下载) <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"> <property name="messageConverters"> <list> <!--配置下载返回类型--> <bean class="or

  • Java SSM框架(Spring+SpringMVC+MyBatis)搭建过程

    摘要: 这段时间搭建ssm环境,并测试几个下载的项目demo 安装相关文件: MyEclipse界面: 测试项目简单增删改: ssm+mysql+easyui项目: SSM+MYSQL+EXTJS项目 总结 以上所述是小编给大家介绍的Java SSM框架(Spring+SpringMVC+MyBatis)搭建过程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的.在此也非常感谢大家对我们网站的支持!

  • Spring MVC配置双数据源实现一个java项目同时连接两个数据库的方法

    前言 本文主要介绍的是关于Spring MVC配置双数据源实现一个java项目同时连接两个数据库的方法,分享出来供大家参考学习,下面来看看详细的介绍: 实现方法: 数据源在配置文件中的配置 <pre name="code" class="java"><?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.spring

  • Java编程实现springMVC简单登录实例

    Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面.Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块.使用 Spring 可插入的 MVC 架构,从而在使用Spring进行WEB开发时,可以选择使用Spring的SpringMVC框架或集成其他MVC开发框架,如Struts1,Struts2等. 1.新建web项目:springmvc 2.导入springmvc需要的jar包 3.配置web.xml文件(核心代码)

  • Java Spring中Quartz调度器详解及实例

    一.Quartz的特点 * 按作业类的继承方式来分,主要有以下两种: 1.作业类继承org.springframework.scheduling.quartz.QuartzJobBean类的方式 2.作业类不继承org.springframework.scheduling.quartz.QuartzJobBean类的方式 注:个人比较推崇第二种,因为这种方式下的作业类仍然是POJO. * 按任务调度的触发时机来分,主要有以下两种: 1.每隔指定时间则触发一次,对应的调度器为org.springf

  • java springmvc 注册中央调度器代码解析

    这篇文章主要介绍了java springmvc 注册中央调度器代码解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 在WEB-INF下的web.xml中配置 <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="htt

  • 深入理解SpringMVC中央调度器DispatcherServlet

    目录 SpringMVC请求处理过程: SrpingMVC容器和spring IOC容器关系 基于maven创建的一个springmvc工程. 1.创建maven项目中使用到了自动创建骨架 2.配置java 文件 和资源文件 3.添加jar包** 4.springMVC项目web.xml初始化配置中央调度器以及自定义springmvc.xml文件 web.xml: springMVC是spring的一个模块,专门做web的. SpringMVC请求处理过程: 请求发送,根据url-pattern

  • Java实现一个简单的定时器代码解析

    定时的功能我们在手机上见得比较多,比如定时清理垃圾,闹钟,等等.定时功能在java中主要使用的就是Timer对象,他在内部使用的就是多线程的技术. Time类主要负责完成定时计划任务的功能,就是在指定的时间的开始执行某个任务. Timer类的作用是设置计划任务,而封装任务内容的类是TimerTask类.此类是一个抽象类,继承需要实现一个run方法. 利用java制作定时器比较简单,有现成的接口帮助实现.java中制作定时器使用的是Timer和TimerTask,是util包的.java.util

  • java中幂指数值的运算代码解析

    说到幂指数的运算我们就会用到Math.pow(doublea,doubleb),返回的结果是a的b次方. 在Java中,当我们计算2的n次方时,可以直接用Math.pow来计算.非常方便. 但是,已知一个幂的结果为M和幂的底数a,现在要求幂的指数n.Math中提供的有log(double)方法,但是只能传入一个参数,即M.那么问题来了,如何简单.方便.快捷的达到我们的要求呢?答案如下: n=Math.log(M)/Math.log(a); 这个方法可以满足我们大多数幂指数的计算,但是每次访问的值

  • JAVA StringBuffer类与StringTokenizer类代码解析

     StringBuffer类提供了一个字符串的可变序列,类似于String类,但它对存储的字符序列可以任意修改,使用起来比String类灵活得多.它常用的构造函数为: StringBuffer() 构造一个空StringBuffer对象,初始容量为16个字符. StringBuffer(Stringstr) 构造一个StringBuffer对象,初始内容为字符串str的拷贝. 对于StringBuffer类,除了String类中常用的像长度.字符串截取.字符串检索的方法可以使用之外,还有两个较为

  • java避免死锁的常见方法代码解析

    死锁 索是一个非常有用的工具,运用场景非常多,因为它使用起来非常简单,而且易于理解.但同时它也会带来一些困扰,那就是可能会引起死锁,一旦产生死锁,就会造成系统功能不可用.让我们先来看一段代码,这段代码会引起死锁,使线程 thread_1 和线程 thread_2 互相等待对方释放锁. package thread; public class DeadLockDemo { private static String A = "A"; private static String B = &

  • java中的异或问题代码解析

    java的位运算符中有一个叫异或的运算符,用符号(^)表示,其运算规则是:两个操作数的位中,相同则结果为0,不同则结果为1.下面看一个例子: public class TestXOR{ public static void main(String[] args){ int i = 15, j = 2; System.out.println("i ^ j = " + (i ^ j)); } } 运行结果是:i^j=13. 分析上面程序,i=15转成二进制是1111,j=2转成二进制是00

  • 通过java记录数据持续变化时间代码解析

    这篇文章主要介绍了通过java记录数据持续变化时间代码解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1.需求:获取count为null和不为null的持续变化 [{count=0, time=0}, {count=10, time=1000}, {count=20, time=2000}, {count=30, time=3000}, {count=40, time=4000}, {count=null, time=5000}, {cou

  • java字符串的截取方法substring()代码解析

    这篇文章主要介绍了java字符串的截取方法substring()代码解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 返回位于 String 对象中指定位置的子字符串. public class StringTest { public static void main(String[] args) { String name="jason"; System.out.println(name.substring(0,1)); //结果

  • Python 装饰器代码解析

    前言: 以往看到我博客的小伙伴可能都知道,我的前言一般都是吐槽和讲废话环节,哈哈哈哈.今天难得休息,最近可真是太忙了,博主已经连续一年都在996了,所以最近没怎么学习新东西,只能回顾以往的旧知识了,上周一起工作的小伙伴扛不住996离职了,我们三人的小团队也正式解散了,哎.原本想着找时间好好整理一个关于关于接口自动化测试或ceph相关的东西.但由于篇幅过长这里目前可能不会着手写这方面东西.其实啊写是很简单的,主要例子难找.哈哈哈哈. 好了回归正题吧.看过我以往博客的小伙伴肯定见我用过@parame

随机推荐