1. 新建一个项目

 
Paste_Image.png

我们用eclipse新建项目,选择Dynamic Web Project(动态的Web项目)。

点击Next

 
Paste_Image.png

Project name里面写上 springmvc,这就是我们项目的名称,其他不用改,直接点击Finish 。

 
Paste_Image.png

OK,项目就建好了。

接下来一定要将项目的字符集改为UTF-8

右键项目——properties

 
Paste_Image.png

改为UTF-8,点击OK。

2. 编写 web.xml

当我们打开WebContent/WEB-INF目录的时候,发现里面只有一个lib目录,这是存放各种jar包的地方。我们知道一个web项目必须要有一个web.xml文件才行。

既然没有,我们自己写一个咯。

右键WEB-INF——new——file,新建一个web.xml文件。

点击Finish

将以下内容填进去即可。

<?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" > <servlet>
<!-- 声明Dispatcher,告诉Web容器我们将使用springMVC的DispatcherServlet -->
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<!-- DispatcherServlet在加载时会需要SpringMVC的配置文件,因此需要声明该配置文件的位置。 -->
<!-- 如果不配置该项,则应用会默认的去WEB-INF下寻找名字为[servlet-name]-servlet.xml的文件。 -->
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/springmvc-config.xml</param-value>
</init-param>
</servlet>
<!-- 配置url-pattern,设置为 / 拦截所有的URL请求,并映射到dispatcher -->
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
</web-app>

在WebContent->Web-INF下新建springmvc-config.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" xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.3.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.3.xsd">
<!-- 配置自定义扫描的包 -->
<context:component-scan base-package="com.controller"></context:component-scan> <mvc:annotation-driven>
<mvc:message-converters>
<bean class="org.springframework.http.converter.StringHttpMessageConverter"/>
<bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"/>
</mvc:message-converters>
</mvc:annotation-driven>
<!-- Date日期转换问题的解决 -->
<bean
class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter">
<property name="messageConverters">
<list>
<ref bean="stringHttpMessageConverter" />
</list>
</property>
</bean>
<!-- String类型解析器,允许直接返回String类型的消息 -->
<bean id="stringHttpMessageConverter"
class="org.springframework.http.converter.StringHttpMessageConverter" /> <!-- 配置视图解析器:如何把handler方法返回值解析为实际的物理视图(路径) -->
<!-- <bean
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/views/"></property>记住前后都需要加斜杠
<property name="suffix" value=".jsp"></property>
</bean> -->
</beans>

3.然后在src下新建control层的类

package com.controller;

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List; import javax.servlet.http.HttpServletRequest; import org.springframework.beans.propertyeditors.CustomDateEditor;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.WebDataBinder;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody; import com.dl.common.CSVTool;
import com.dl.common.Result;
import com.dl.common.ResultUtil; @Controller
@RequestMapping(value="/app")
public class ReadData { @org.springframework.web.bind.annotation.InitBinder
public void InitBinder(WebDataBinder binder){
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
CustomDateEditor dateEditor = new CustomDateEditor(df, true);
binder.registerCustomEditor(Date.class,dateEditor);
} @RequestMapping(value = "/getGPSPoints", method = RequestMethod.POST,produces = "application/json;charset=UTF-8")
@ResponseBody
public Result getGPSPoints(HttpServletRequest request) {
try {
List<Point> result =null;
String csvPath="C:\\Users\\SWEETGUO\\Desktop\\毕业设计论文\\数据\\zyh.csv"; result=CSVTool.loadData(csvPath);
return ResultUtil.success(result);
} catch (Exception e) {
return ResultUtil.error(e.getMessage());
}
} }

涉及的相关类:

Result类

package com.dl.common;

public class Result<T> {
/* 错误码 */
private Integer code;
/* 提示信息 */
private String msg;
/* 具体的对象*/
private T data;
/* 返回对象集合/数组 */
/*private List<T> list;*/ public Integer getCode() {
return code;
} public void setCode(Integer code) {
this.code = code;
} public String getMsg() {
return msg;
} public void setMsg(String msg) {
this.msg = msg;
} public T getData() {
return data;
} public void setData(T data) {
this.data = data;
} }

ResultUtil 类:
package com.dl.common;

public class ResultUtil {
//查询单个实体数据用
public static Result success(Object object) {
Result result = new Result();
result.setCode(200);
result.setMsg("success");
result.setData(object);
System.out.println("success:"+object);
return result;
}
/* //查询单个实体数据用
public static Result success(List<Object> list) {
Result result = new Result();
result.setCode(200);
result.setMsg("success");
result.setData(object);
return result;
}*/ //插入、删除、更新数据库用D
public static Result success() {
return success(null);
}
//后台抛出异常用
public static Result error(String msg) {
Result result = new Result();
result.setCode(500);
result.setMsg(msg);
System.out.println(msg);
return result;
} /* public static Result error(Integer code, String msg) {
Result result = new Result(); if(code!=0) {
result.setCode(code);
}else {
result.setCode(500);
} if(msg!="") {
result.setMsg(msg);
}else {
result.setMsg("fail");
}
//result.setData(object);
return result;
}*/ }

Point 类:
package com.controller;

import java.util.Date;

import org.springframework.format.annotation.DateTimeFormat;

import com.fasterxml.jackson.annotation.JsonFormat;

public class Point {
private double x;
private double y;
private double speed;
private double direction;
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")//鎺ュ彈鍓嶅彴鐨勬椂闂存牸寮� 浼犲埌鍚庡彴鐨勬牸寮�?
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")//浣滅敤锛氬悗鍙扮殑鏃堕棿 鏍煎紡鍖�? 鍙戦�佸埌鍓嶅彴
private Date date;
public double getX() {
return x;
}
public void setX(double x) {
this.x = x;
}
public double getY() {
return y;
}
public void setY(double y) {
this.y = y;
}
public double getSpeed() {
return speed;
}
public void setSpeed(double speed) {
this.speed = speed;
}
public double getDirection() {
return direction;
}
public void setDirection(double direction) {
this.direction = direction;
}
public Date getDate() {
return date;
}
public void setDate(Date date) {
this.date = date;
} }

目录结构:

SpringMVC 搭建的更多相关文章

  1. springMVC搭建

    springMVC搭建 1.Spring特点: 方便耦合,简化开发,提升性能 AOP面向切面的编程 声明式事务支持 方便程序的调试 方便集成各大优秀的框架 Java源代码学习的典范 2.Java的面向 ...

  2. 使用SpringMVC搭建第一个项目

    概述 使用SpringMVC搭建第一个项目,入门教程,分享给大家. 详细 代码下载:http://www.demodashi.com/demo/10596.html 一.概述 1.什么是Spring ...

  3. springMVC学习总结(一) --springMVC搭建

    springMVC学习总结(一) --springMVC搭建 搭建项目 1.创建一个web项目,并在项目中的src文件夹下创建一个包com.myl.controller. 2.添加相应jar包 3.在 ...

  4. 初学springMVC搭建框架过程及碰到的问题

    刚刚开始学spring框架,因为接了一个网站的项目,想用spring+springMVC+hibernate整合来实现它,现在写下搭建框架的过程及碰到的问题.希望给自己看到也能让大家看到不要踏坑. 一 ...

  5. SpringMVC搭建+实例

    想做一点自己喜欢的东西,研究了一下springMVC,所以就自己搭建一个小demo,可供大家吐槽. 先建一个WEB工程,这个相信大家都会,这里不在多说. 去网上下载spring jar包,然后在WEB ...

  6. springMVC---业务处理流程图和最简单的springMvc搭建截图说明

    一.springMVC业务处理流程图: 二.如何搭建springMvc框架 1.建立web工程 2.引入jar包 3.创建web.xml文件 4.创建springMvc-servlet.xml文件 5 ...

  7. eclipse+maven springMVC搭建

    1.新建项目: 选择Maven Project 选择项目位置,这里我选择的是C:\Users\admin\workspace\practice 选择maven项目类型,这里选择webapp: 填写Gr ...

  8. 【JavaEE】Springmvc搭建方法及example

    现在介绍SSH的文章很多,但是适合自己需求的却经常找不到,这些东西呢,会了之后总会感觉别人的程序哪里哪里别扭,会之前呢就感觉很混乱,而且SSH的官方文档,至少在我看来是“会者勉强能看.不会者一片迷茫” ...

  9. 三分钟学会用SpringMVC搭建最小系统(超详细)_转载

    前言 做 Java Web 开发的你,一定听说过SpringMVC的大名,作为现在运用最广泛的Java框架,它到目前为止依然保持着强大的活力和广泛的用户群. 本文介绍如何用eclipse一步一步搭建S ...

  10. MyBatis整合Spring+SpringMVC搭建一个web项目(SSM框架)

    本文讲解如何搭建一个SSM架构的web站点 [工具] IDEA.SqlYog.Maven [简述] 该项目由3个模块组成:dao(数据访问层).service(业务处理层).web(表现层) dao层 ...

随机推荐

  1. history.back();谷歌浏览器,iframe后退问题

    history.back();谷歌浏览器,iframe后退直接会后退父页面. 使用以下方式即可//document.referrer是获取上一页的urllocation.href=document.r ...

  2. selenium+python爬虫环境搭建

    前言: 准备使用selenium爬取网站数据,先搭建selenium+python爬虫环境搭建 系统环境: 64位win10系统,同时装python2.7和python3.6两个版本,IDE为pych ...

  3. Eclipse 00: 常用快捷键

    Eclipse常用快捷键 1几个最重要的快捷键 代码助手:Ctrl+Space(简体中文操作系统是Alt+/)快速修正:Ctrl+1单词补全:Alt+/打开外部Java文档:Shift+F2 显示搜索 ...

  4. [tldk][dpdk][dev] TLDK--基于dpdk的用户态协议栈传输层组件简单调研

    如题,以下是一份简单的快速调研. TLDK: Transport Layer Development Kit 一 什么是TLDK transport layer development kit 处理t ...

  5. androidj基础:从网上下载图片

    一.布局文件 设置界面,添加一个ImageView,和两个Button按钮,设置其属性及id <ImageView android:id="@+id/ImageView" a ...

  6. Storm UI说明

    一.Storm ui 首页主要分为4块: Cluster Summary,Topology summary,Supervisor summary,Nimbus Configuration Cluste ...

  7. java框架之SpringCloud(6)-Zuul路由网关

    介绍 Zuul 包含了对请求的路由和过滤两个最重要的功能: 其中路由功能服务将外部请求转发到具体的微服务实例上,是实现外部访问统一入口的基础.而过滤的功能则负责对请求的处理过程进行干预,是实现请求校验 ...

  8. [摘抄] Bezier曲线、B样条和NURBS

    Bezier曲线.B样条和NURBS,NURBS是Non-Uniform Rational B-Splines的缩写,都是根据控制点来生成曲线的,那么他们有什么区别了?简单来说,就是: Bezier曲 ...

  9. 010 Editor - Binary Templates

        010 Editor是一款非常强大的文本/十六进制编辑器,除了文本/十六进制编辑外,还包括文件解析.计算器.文件比较等功能,但它真正的强大之处还在于文件的解析功能.我们可以使用010Edito ...

  10. 斐讯面试记录—TCP滑动窗口及拥塞控制

    TCP协议作为一个可靠的面向流的传输协议,其可靠性是由流量控制和滑动窗口协议保证,而拥塞控制则由控制窗口结合一系列的控制算法实现. 一.滑动窗口协议 1. “窗口”对应的是一段可以被发送者发送的字节序 ...