- 浏览: 969455 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
qq_15946053:
基于spring的项目要导出成jar怎么做呢用eclipse的 ...
Spring项目导出可运行的JAR -
flyfeifei66:
baseservice、dao代码是同一个,但是实例配置多个, ...
Spring通过父类注入公用属性的技巧 -
yuechao4039:
写得不错,望楼主再接再厉
Spring中配置和读取多个Properties文件 -
xinglianxlxl:
psubscribe对我有用
Jedis的Publish/Subscribe功能的运用 -
Fenix87:
js中怎么调用配置文件的参数呢
Spring中配置和读取多个Properties文件
个人学习参考所用,勿喷!
1.搭建一个基于Spring3的MVC应用。
1.1) 建立一个webapp,这里还是采用Maven构建,构建过程参考limingnihao的blog(写得相当的详细!!!): 使用Eclipse构建Maven的SpringMVC项目 。
1.2) 编辑pom.xml,添加Spring3 MVC所必须的jar包,除了Spring基本的core、bean等jar包,这里还需要有web和mvc的相关jar。具体根据需要来。需要哪些jar在附件的工程中都有。需要注意:pom.xml中不用加入el-api.jar和jsp-api.jar两个jar包,因为tomcat目录下有,如果加入了,即使设置scope=provided,也会会产生Unable to read TLD "META-INF/fmt.tld"的Exception。但是如果没有这jsp-api这个jar,会带javax.servlet.jsp.JspException cannot be resolved to a type等Exception。这里不许理会,因为从正常的运行结果来看是正常的。或者添加jar后删除掉tomcat目录下的对应jar来解决问题
1.3) 编辑webapp的web.xml,添加DispatcherServlet入口。以下为到web.xml的根目录的内容和说明:
<!-- 多个Spring的配置文件,要以逗号或者空格分割 --> <context-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/court-service.xml</param-value> </context-param> <!-- 使用监听器ContextLoaderListener加载是上述的多个文件,加载到根应用上下文中--> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <!-- 可以配置多个DispatcherServlet到不同的路径 --> <servlet> <servlet-name>court</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <!-- 相对使用监听器ContextLoaderListener加载,每个DispatcherServlet将其加载到自己的应用上下文, 并且可引用根应用上下文为其上级 。每个DispatcherServlet实例加载上下文可以访问甚至覆盖根应用的上下文中声明的bean(反之不行), 但是每个DispatcherServlet实例加载上下文无法相互访问--> <!-- <init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/court-servlet.xml,/WEB-INF/court-service.xml</param-value> </init-param> --> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>court</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping>
1.4) 创建一个用Spring的annotation标识@Controller表示的控制器,并且用@RequestMapping来映射URL到这个控制器。具体的代码如下:
@Controller // Bind controller to URL /welcome // initial view will be resolved to the name returned in the default GET method @RequestMapping("/welcome") public class WelcomeController { // Controller will always look for a default GET method to call first, irrespective of name // In this case, named welcome to ease identification @RequestMapping(method = RequestMethod.GET) // Method contains Model input to setup date object // NOTE: Model is a Java 5 interface -- newer than the older ModelMap and still older ModelAndView public String welcome(Model model) { Date today = new Date(); // Add date to model so it can be display in view model.addAttribute("today",today); // Return view welcome. Via resolver the view // will be mapped to /WEB-INF/jsp/welcome.jsp return "welcome"; } }
1.5) 创建了控制器并且将应用方法绑定到了相对应URL路径上,那么现在应该来激活这些控制器标识。在WEB-INF下创建court-servlet.xml,虽然在web.xml没有直接配置这个文件,但是ContextLoaderListener会自动的搜索WEB-INF下*-servlet.xml(这里的*是web.xml中配置的配置的DispatcherServlet的名称)。这里court-servlet.xml具体的配置和说明如下:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" 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-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd"> <!-- 激活自动检测注解,自动搜索@Controller和@RequstMapping注解的存在,包括其下面的子包--> <context:component-scan base-package="com.watson.action" /> <!-- 处理类级别的@RequstMapping注解 --> <bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping" /> <!-- 处理方法级别的@RequstMapping注解 --> <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" /> <!-- DispatcherServlet接收到处理程序返回的视图名称,并解析为视图实现以供显示。 --> <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/views/" /> <property name="suffix" value=".jsp" /> </bean> </beans>
1.6) 根据1.5步中对逻辑视图和视图文件的映射关系的设置,这里需要在WEB-INF的view目录下创建一个JSP文件welcome.jsp用来处理上述1.4步中的控制器的返回结果,并返回给浏览器。具体代码如下:
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> <%@page contentType="text/html;charset=UTF-8" pageEncoding="UTF-8" %> <html> <head> <title>Welcome</title> </head> <body> <h2>Welcome to Court Reservation System</h2> Today is <fmt:formatDate value="${today}" pattern="yyyy-MM-dd" />. <hr /> Handling time : ${handlingTime} ms <br /> Locale : ${pageContext.response.locale} </body> </html>
1.7) 最后发布创建的应用到tomcat下,在本地的浏览其中输入http://[host]:[port]/[appname]/welcome,例如楼主的实例中输入如下:http://localhost:7070/Spring3MVC/welcome。浏览器显示的结果如下:
Welcome to Court Reservation System Today is 2012-04-23. Handling time : 0 ms Locale : zh_CN
参考:
juyon的blog:《 spring3 MVC国际化支持之中文乱码 》
Gary Mark等的书籍:《Spring Recipes》2ed
发表评论
-
Spring项目导出可运行的JAR
2013-09-05 20:01 16229一、在使用MAVEN的打包插件。 1.背景 ... -
Spring Security3实践总结
2013-07-22 18:12 19199在线项目最近要对管理系统进行细粒度的权限控 ... -
Spring中配置和读取多个Properties文件
2013-05-31 16:45 61517一个系统中通常会存在如下一些以Properties形式存在 ... -
Spring多数据源的配置和使用(2)
2012-11-22 11:40 18674本文以Spring2.5 + Hibernat ... -
Spring定时任务的多种使用方法总结
2012-08-04 17:34 10383这里使用的是Spring2.5,需要的jar包:sprin ... -
Spring多数据源的配置和使用(1)
2012-08-04 14:51 22572最近开发一个数据同步的小功能,需要从A主机的Ora ... -
Spring通过父类注入公用属性的技巧
2012-06-19 13:22 29705XML配置方式提取父类 在 ... -
Spring3 MVC
2012-04-24 17:16 0个人学习参考所用,勿喷! 1.搭建一个基于S ... -
Spring3 MVC的最佳实践和理解(9)
2012-04-25 09:10 2492个人学习参考所用,勿喷! 9.创建一个资源多种实现的 ... -
Spring3 MVC的最佳实践和理解(8)
2012-04-25 09:10 2285个人学习参考所用,勿喷! 8.Bean的注解式 ... -
Spring3 MVC的最佳实践和理解(7)
2012-04-25 09:09 4086个人学习参考所用, ... -
Spring3 MVC的最佳实践和理解(6)
2012-04-25 09:09 1993个人学习参考所用, ... -
Spring3 MVC的最佳实践和理解(5)
2012-04-24 17:01 22023个人学习参考所用, ... -
Spring3 MVC的最佳实践和理解(4)
2012-04-24 16:59 4783个人学习参考所用,勿喷! 4.区域解析和外部化区 ... -
Spring3 MVC的最佳实践和理解(3)
2012-04-24 16:56 4475个人学习参考所用,勿喷! 3.使用拦截器 Sp ... -
Spring3 MVC的最佳实践和理解(2)
2012-04-24 16:55 5038个人学习参考所用,勿 ... -
Spring RESTful服务接收和返回JSON最佳实践
2012-04-16 17:13 108457个人学习参考所用,勿喷! 返回JSON ... -
Spring的JNDI数据源连接池配置示例及Spring对JNDI实现分析
2012-04-10 16:00 89423个人学习参考所用,勿喷! 在使用 Tomcat服 ... -
Spring属性注入和构造函数注入参考
2012-02-25 23:23 4380个人学习参考所用,勿喷! 1.Pojo如下: ...
相关推荐
SSM(Spring + Spring MVC + MyBatis)框架作为Java开发中的黄金组合,为开发者提供了强大的技术支持和丰富的功能。本系列资料将带您从零基础开始,逐步掌握SSM的核心技术和最佳实践,助您在Java Web开发领域更上一...
Spring教程合集.zip Spring开发指南 SpringGuide 在Spring中配置Hibernate事务 Struts+Spring+Hibernate开发实例 Struts+Hibernate+Spring练习 Struts+Spring+Hibernate快速入门 ...Spring Framework最佳实践
SSM(Spring + Spring MVC + MyBatis)框架作为Java开发中的黄金组合,为开发者提供了强大的技术支持和丰富的功能。本系列资料将带您从零基础开始,逐步掌握SSM的核心技术和最佳实践,助您在Java Web开发领域更上一...
SSM(Spring + Spring MVC + MyBatis)框架作为Java开发中的黄金组合,为开发者提供了强大的技术支持和丰富的功能。本系列资料将带您从零基础开始,逐步掌握SSM的核心技术和最佳实践,助您在Java Web开发领域更上一...
SSM(Spring + Spring MVC + MyBatis)框架作为Java开发中的黄金组合,为开发者提供了强大的技术支持和丰富的功能。本系列资料将带您从零基础开始,逐步掌握SSM的核心技术和最佳实践,助您在Java Web开发领域更上一...
SSM(Spring + Spring MVC + MyBatis)框架作为Java开发中的黄金组合,为开发者提供了强大的技术支持和丰富的功能。本系列资料将带您从零基础开始,逐步掌握SSM的核心技术和最佳实践,助您在Java Web开发领域更上一...
SSM(Spring + Spring MVC + MyBatis)框架作为Java开发中的黄金组合,为开发者提供了强大的技术支持和丰富的功能。本系列资料将带您从零基础开始,逐步掌握SSM的核心技术和最佳实践,助您在Java Web开发领域更上一...
SSM(Spring + Spring MVC + MyBatis)框架作为Java开发中的黄金组合,为开发者提供了强大的技术支持和丰富的功能。本系列资料将带您从零基础开始,逐步掌握SSM的核心技术和最佳实践,助您在Java Web开发领域更上一...
SSM(Spring + Spring MVC + MyBatis)框架作为Java开发中的黄金组合,为开发者提供了强大的技术支持和丰富的功能。本系列资料将带您从零基础开始,逐步掌握SSM的核心技术和最佳实践,助您在Java Web开发领域更上一...
你想掌握分析源代码的最佳实践吗?..., 本书赞誉:, 作为一个有近10年历史的成功框架,Spnng在Java开发中具有举足轻重的作用。本书从源代码分析入手,对Spring的架构原理和设计思想进行了全面剖析,不仅能让我们更...
SSM(Spring + Spring MVC + MyBatis)框架作为Java开发中的黄金组合,为开发者提供了强大的技术支持和丰富的功能。本系列资料将带您从零基础开始,逐步掌握SSM的核心技术和最佳实践,助您在Java Web开发领域更上一...
SSM(Spring + Spring MVC + MyBatis)框架作为Java开发中的黄金组合,为开发者提供了强大的技术支持和丰富的功能。本系列资料将带您从零基础开始,逐步掌握SSM的核心技术和最佳实践,助您在Java Web开发领域更上一...
SSM(Spring + Spring MVC + MyBatis)框架作为Java开发中的黄金组合,为开发者提供了强大的技术支持和丰富的功能。本系列资料将带您从零基础开始,逐步掌握SSM的核心技术和最佳实践,助您在Java Web开发领域更上一...
它详细介绍了Java编程中的有效实践和最佳实践,如何避免常见的错误和陷阱。 《深入理解Java虚拟机》:这本书是Java虚拟机编程的经典教材,适合中级和高级开发者。它详细介绍了Java虚拟机的原理和内部实现,以及如何...
通过实践,逐步掌握SSM框架的使用技巧和Java Web开发的最佳实践。 参考项目文件和笔记:项目文件和笔记提供了丰富的背景信息和开发经验。在学习的过程中,不妨参考这些资料,以帮助你更好地理解和学习。 动手实践:...
通过实践,逐步掌握SSM框架的使用技巧和Java Web开发的最佳实践。 参考项目文件和笔记:项目文件和笔记提供了丰富的背景信息和开发经验。在学习的过程中,不妨参考这些资料,以帮助你更好地理解和学习。 动手实践:...
通过实践,逐步掌握SSM框架的使用技巧和Java Web开发的最佳实践。 参考项目文件和笔记:项目文件和笔记提供了丰富的背景信息和开发经验。在学习的过程中,不妨参考这些资料,以帮助你更好地理解和学习。 动手实践:...
通过实践,逐步掌握SSM框架的使用技巧和Java Web开发的最佳实践。 参考项目文件和笔记:项目文件和笔记提供了丰富的背景信息和开发经验。在学习的过程中,不妨参考这些资料,以帮助你更好地理解和学习。 动手实践:...
通过实践,逐步掌握SSM框架的使用技巧和Java Web开发的最佳实践。 参考项目文件和笔记:项目文件和笔记提供了丰富的背景信息和开发经验。在学习的过程中,不妨参考这些资料,以帮助你更好地理解和学习。 动手实践:...
通过实践,逐步掌握SSM框架的使用技巧和Java Web开发的最佳实践。 参考项目文件和笔记:项目文件和笔记提供了丰富的背景信息和开发经验。在学习的过程中,不妨参考这些资料,以帮助你更好地理解和学习。 动手实践:...