2019独角兽企业重金招聘Python工程师标准>>>

环境的准备

安装JDK

  • 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html 选择 JDK7u80

  • 安装JDK

  • 配置 JAVE_HOME CLASSPATH PATH 环境变量

安装tomcat

  • 下载地址:http://tomcat.apache.org/download-80.cgi
  • 解压到规划的目录

安装eclipse for j2ee

  • 下载地址:http://www.eclipse.org/downloads/
  • 选择Eclipse IDE for Java EE Developers
  • 解压到规划目录

下载spring-framework

  • 下载地址:http://repo.springsource.org/libs-release-local/org/springframework/spring/
  • 选择版本4.1.8.RELEASE
  • 解压到规划目录

下载依赖包

  • 下载commons-logging,地址:http://commons.apache.org/proper/commons-logging/download_logging.cgi

  • 下载log4j,地址:http://logging.apache.org/log4j/1.2/download.html

配置开发环境

  • 启动eclipse
  • 配置tomcate。windows-->preferences-->server-->runtime environments。add tomcat,安装地址为tomcat8的解压目录,jre选择jre7

开发Hello World

新建web工程

  • 新建 Dynamic Web Project

target runtime 选择 Apache Tomcat v8.0

Dynamic web module version 选择 3.1。注意 tomcat7,不支持高版本

Configuration 选择 Tomcat v8.0

  • 添加 source folder

  • 配置 web module

勾选 Generate web.xml deployment descriptor

添加工程内容

  • 添加依赖包

将spring-framework的包拷贝到WebContent/WEB_INF/lib下。

将commons-logging的包拷贝到WebContent/WEB_INF/lib下。

将log4j的包拷贝到WebContent/WEB_INF/lib下。

  • 修改web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns="http://xmlns.jcp.org/xml/ns/javaee"xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"id="WebApp_ID" version="3.1"><display-name>SpringMVC</display-name><welcome-file-list><welcome-file>index.html</welcome-file><welcome-file>index.htm</welcome-file><welcome-file>index.jsp</welcome-file><welcome-file>default.html</welcome-file><welcome-file>default.htm</welcome-file><welcome-file>default.jsp</welcome-file></welcome-file-list><servlet><servlet-name>SpringMVC</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><load-on-startup>1</load-on-startup></servlet><servlet-mapping><servlet-name>SpringMVC</servlet-name><url-pattern>/</url-pattern></servlet-mapping>
</web-app>
  • 添加servlet 在WebContent/WEB_INF下添加 SpringMVC-servlet.xml文件,内容如下:
<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-4.1.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.1.xsd"><context:component-scan base-package="com.tutorialspoint" /><beanclass="org.springframework.web.servlet.view.InternalResourceViewResolver"><property name="prefix" value="/WEB-INF/jsp/" /><property name="suffix" value=".jsp" /></bean></beans>
  • 添加jsp文件 在WebContent/WEB_INF/jsp下添加 hello.jsp,内容如下:
<%@ page contentType="text/html; charset=UTF-8" %>
<html>
<head><title>Hello World</title>
</head>
<body><h2>${message}</h2>
</body>
</html>
  • 添加controller 在src下添加class文件:HelloController.java,内容如下:
package org.springtest;import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.ui.ModelMap;@Controller
public class HelloController{@RequestMapping(value = "/hello", method = RequestMethod.GET)public String printHello(ModelMap model) {model.addAttribute("message", "Hello Spring MVC Framework World!");return "hello";}
}

运行工程

  • 新建tomcat server 在servers视图中新建一个server

直接点击finish

  • 配置tomcat server

选择server,然后右键,可以看到有 open start stop restart等操作

  • 运行spring工程

右键web porject, Run As --> Run on Server.

在eclipse的浏览器,或者本机的浏览器地址栏输入:http://localhost:808/SpringMVC/hello 就可以看到输出的内容

调试

当修改了java的内容后,等上几秒钟就会重新编译,并且推送到tomcat目录下,刷新页面就可以看到变化。

常见问题

访问tomcat 404

是因为在servers视图中创建了server,但是没有配置使用tocat的安装目录导致。

解决方法:在servers视图删除server,并新建,新建后 勾选 “server location” 下的 “use tomcat installation”,并保存

如果“server locations”下为灰色,则删除server后重建,或者多删除几次。

spring工程无法启动

表现为tomcat无法启动

启动spring工程报错,异常信息如下:

严重: A child container failed during start
java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/SpringMVC]]at java.util.concurrent.FutureTask.report(Unknown Source)at java.util.concurrent.FutureTask.get(Unknown Source)at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:916)at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:871)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1408)at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1398)at java.util.concurrent.FutureTask.run(Unknown Source)at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)at java.lang.Thread.run(Unknown Source)
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/SpringMVC]]at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)... 6 more
Caused by: java.lang.NoClassDefFoundError: Lorg/apache/commons/logging/Log;at java.lang.Class.getDeclaredFields0(Native Method)at java.lang.Class.privateGetDeclaredFields(Unknown Source)at java.lang.Class.getDeclaredFields(Unknown Source)at org.apache.catalina.util.Introspection.getDeclaredFields(Introspection.java:106)at org.apache.catalina.startup.WebAnnotationSet.loadFieldsAnnotation(WebAnnotationSet.java:256)at org.apache.catalina.startup.WebAnnotationSet.loadApplicationServletAnnotations(WebAnnotationSet.java:132)at org.apache.catalina.startup.WebAnnotationSet.loadApplicationAnnotations(WebAnnotationSet.java:65)at org.apache.catalina.startup.ContextConfig.applicationAnnotationsConfig(ContextConfig.java:334)at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:774)at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:305)at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5066)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)... 6 more
Caused by: java.lang.ClassNotFoundException: org.apache.commons.logging.Logat org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1332)at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1166)... 20 more

观察日志可以看出,是由于缺少了 common-logging 和 log4j的包

访问spring工程报404

访问地址: http://localhost:8080/SpringMVC/hello 报404 是由于在servers视图,没有勾选 “server options” 下的 “publish module contexts to separate XML files”,并保存。

解决办法:勾选“publish module contexts to separate XML files”

转载于:https://my.oschina.net/u/583362/blog/523367

SpringMVC Hello World 实例相关推荐

  1. java spring hiberate_Spring+SpringMVC+Hibernate整合实例讲解

    使用Maven构建项目,用pom.xml引入相应jar,配置以下文件 创建spring.xml: xmlns="http://www.springframework.org/schema/b ...

  2. SpringMVC +Hibernate 学习实例

    做了好久经的spring+hibernate 只是用spring管理hibernate,但一直没有研究SpringMVC +Hibetate,所以 最近有时间 准备用springMVC + Sprin ...

  3. springmvc与mysql实例_Spring+Mybatis+SpringMVC+Maven+MySql搭建实例

    摘要:本文主要讲了如何使用Maven来搭建Spring+Mybatis+SpringMVC+MySql的搭建实例,文章写得很详细,有代码有图片,最后也带有运行的效果. 一.准备工作 1. 首先创建一个 ...

  4. springmvc简述及实例

    一.简述 springmvc是spring的一个模块,一个"小弟",用于web开发,可理解为servlet的升级版 所以了解springmvc必须先了解之前的开发模式 ------ ...

  5. Springmvc的helloworld实例

    1.    新建package Src->new->other->package 输入包名:org.tgb.web.controller 点击"finish" 2 ...

  6. java+springmvc+vo,springmvc+mybatis的实例详解

    前面讲到:Spring+SpringMVC+MyBatis深入学习及搭建(十三)--SpringMVC入门程序(二) 1.需求 使用springmvc和mybatis完成商品列表查询. 2.整合思路 ...

  7. SpringMVC 登录验证实例

    1.pom.xml中加入SpringMVC的依赖 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi=& ...

  8. [SpringMVC]SpringMVC学习笔记一: springmvc原理及实例解析.

    前言: 今天来回顾下SpringMVC的开发原理, 使用图文并茂的方式 来解析其中的内幕, 我相信懂了其中的运行机制后, 对于面试中SpringMVC大家都可以说so easy了. 一, 图示法 第二 ...

  9. springmvc过滤器简单实例

    自定义过滤器 package com.ssm.student.filter;import java.io.IOException; import java.io.PrintWriter;import ...

最新文章

  1. ASP.NET MVC 控制器激活(一)
  2. 学习C语言必须知道的理论知识(第二章-算法)
  3. 我的第一个python web开发框架(3)——怎么开始?
  4. 大数据与智能算法(二-应用级技术)-SMU在线学习笔记
  5. java 实现气泡 源码分析_冒泡排序算法原理及JAVA实现代码
  6. [转载] Java静态绑定与动态绑定
  7. Kubernetes 部署 Traefik Ingress 控制器 (1.7.12)
  8. MEF(可扩展框架)使用总结
  9. AOP (面向切面编程)
  10. 【毕业答辩】你的论文答辩PPT准备好了吗?
  11. python写鼠标宏_最全Pycharm教程(24)——Pycharm编辑器功能之宏定义
  12. 全国大学生数学建模竞赛论文格式规范
  13. 关于Lua的下载以及wlua、luac等文件的解释
  14. 继谷歌之后 雅虎退出中国音乐市场
  15. 在线二进制取余计算机,二进制转十进制和十六进制计算器
  16. 轻松入门腾讯云COS部署 + 配置CDN
  17. LMS自适应波束形成算法(MATLAB)
  18. 数字资产支付行业研究报告 | TokenInsight
  19. 视频转文字怎么操作?快把这些方法收好
  20. 首批最佳骑行路线揭晓

热门文章

  1. DCMTK:DSRTree和DSRTreeNodeCursor类的测试程序
  2. OpenCV SURF FLANN匹配的实例(附完整代码)
  3. OpenCV简单的过滤器平滑的实例(附完整代码)
  4. Qt Creator分析CPU使用率
  5. C++smallest circle 获取外接给定点集的最小圆的中心和半径算法(附完整源码)
  6. C++求最小公倍數LCM的实现算法(附完整源码)
  7. c语言实现队列queue(附完整源码)
  8. C++将“引用”作为函数返回值类型的格式、好处和注意事项?
  9. QT的QRadioButton类的使用
  10. 上海浦东新区计算机学校排名2015,2015年上海市浦东新区初级中学最新排名