`
Mr_Tank_
  • 浏览: 22548 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

使用Maven构建Spring MVC项目的简单示例

 
阅读更多

1、首先看一下项目结构:


总结:主要是将配置文件配置好之后就不会有什么问题了。在阅读《Maven实战》这本书的时候可以知道有一章是讲解关于继承和聚合的知识,这里主要的是Maven构建SpringMVC项目,所以DAO等这些都写到一起了。因为我也没有只用Maven进行过一个完整项目的实践,所以独立模块开发+聚合可以参考《Maven实战》这本书上面的示例讲解。作为初学者,有很多的东西要学。

附源代码地址:点击打开链接

下面是配置文件及代码:

2、pom.xml

<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/maven-v4_0_0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>MavenTest</groupId>
	<artifactId>tan.maven.springmvc</artifactId>
	<packaging>war</packaging>
	<version>0.0.1-SNAPSHOT</version>
	<name>tan.maven.springmvc Maven Webapp</name>
	<url>http://maven.apache.org</url>
	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<springversion>3.1.1.RELEASE</springversion>
		<junitversion>3.8.1</junitversion>
	</properties>

	<dependencies>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>${junitversion}</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-aop</artifactId>
			<version>${springversion}</version>
			<type>jar</type>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-asm</artifactId>
			<version>${springversion}</version>
			<type>jar</type>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-aspects</artifactId>
			<version>${springversion}</version>
			<type>jar</type>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-beans</artifactId>
			<version>${springversion}</version>
			<type>jar</type>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-context</artifactId>
			<version>${springversion}</version>
			<type>jar</type>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-context-support</artifactId>
			<version>${springversion}</version>
			<type>jar</type>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-core</artifactId>
			<version>${springversion}</version>
			<type>jar</type>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-expression</artifactId>
			<version>${springversion}</version>
			<type>jar</type>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-jdbc</artifactId>
			<version>${springversion}</version>
			<type>jar</type>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-jms</artifactId>
			<version>${springversion}</version>
			<type>jar</type>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-orm</artifactId>
			<version>${springversion}</version>
			<type>jar</type>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-oxm</artifactId>
			<version>${springversion}</version>
			<type>jar</type>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-tx</artifactId>
			<version>${springversion}</version>
			<type>jar</type>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-web</artifactId>
			<version>${springversion}</version>
			<type>jar</type>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-webmvc</artifactId>
			<version>${springversion}</version>
			<type>jar</type>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-test</artifactId>
			<version>${springversion}</version>
			<type>jar</type>
			<scope>compile</scope>
		</dependency>

		<dependency>
			<groupId>javax.servlet</groupId>
			<artifactId>jstl</artifactId>
			<version>1.2</version>
			<type>jar</type>
			<scope>compile</scope>
		</dependency>

		<dependency>
			<groupId>commons-collections</groupId>
			<artifactId>commons-collections</artifactId>
			<version>3.1</version>
		</dependency>

		<dependency>
			<groupId>commons-logging</groupId>
			<artifactId>commons-logging</artifactId>
			<version>1.1</version>
		</dependency>
	</dependencies>

	<build>
		<finalName>tan-springmvc-book</finalName>
	</build>
</project>

3、applicationContext.xml配置

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" 
	   xmlns:aop="http://www.springframework.org/schema/aop" 
	   xmlns:context="http://www.springframework.org/schema/context"
	   xmlns:mvc="http://www.springframework.org/schema/mvc" 
	   xmlns:tx="http://www.springframework.org/schema/tx" 
	   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	   xsi:schemaLocation="http://www.springframework.org/schema/aop 
		http://www.springframework.org/schema/aop/spring-aop-3.0.xsd 
		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 
		http://www.springframework.org/schema/mvc 
		http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd 
		http://www.springframework.org/schema/tx 
		http://www.springframework.org/schema/tx/spring-tx-3.0.xsd">

	<mvc:annotation-driven />
	<context:component-scan base-package="com.tan.*" />

	<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
		<property name="prefix" value="/" />
		<property name="suffix" value=".jsp" />
	</bean>

</beans>

4、web.xml配置

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
	<display-name></display-name>
	<welcome-file-list>
		<welcome-file>index.jsp</welcome-file>
	</welcome-file-list>
	
		<!-- Spring的log4j监听器 -->
	<listener>
		<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
	</listener>
	
	<!-- 核心控制器 -->
	<servlet>
		<servlet-name>book</servlet-name>
		<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
		<init-param>
			<param-name>contextConfigLocation</param-name>
			<param-value>/WEB-INF/applicationContext.xml</param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
	</servlet>
	
	<listener>
		<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
	</listener>
	<servlet-mapping>
		<servlet-name>book</servlet-name>
		<url-pattern>/</url-pattern>
	</servlet-mapping>

</web-app>

5、model:book.java

package com.tan.model;

public class Book {
	private int id;
	private String name;
	private String author;
	public Book(){}
	public Book(int id, String name, String author) {
		super();
		this.id = id;
		this.name = name;
		this.author = author;
	}
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getAuthor() {
		return author;
	}
	public void setAuthor(String author) {
		this.author = author;
	}
	

}

6、Dao:bookDao.java

package com.tan.dao;

import org.springframework.stereotype.Component;

import com.tan.model.Book;
@Component
public class BookDao {

	//模拟数据库操作
	public void add(Book book){
		System.out.print("Add");
	}
	public void update(Book book){
		System.out.print("Update");
	}
}

7、Service:BookService.java

package com.tan.service;

import javax.annotation.Resource;

import org.springframework.stereotype.Component;

import com.tan.dao.BookDao;
import com.tan.model.Book;

@Component
public class BookService {

	private BookDao bookDao;

	public BookDao getBookDao() {
		return bookDao;
	}

	@Resource
	public void setBookDao(BookDao bookDao) {
		this.bookDao = bookDao;
	}
	
	public void add(Book book){
		bookDao.add(book);
	}
	public void update(Book book){
		bookDao.update(book);
	}
	
}

8、controller:BookController.java

package com.tan.controller;

import javax.annotation.Resource;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

import com.tan.model.Book;
import com.tan.service.BookService;

@Controller
@RequestMapping("/book.do")
public class BookController {

	private BookService bookService;
	@RequestMapping(params = "method=add")
	public String add(Book book){
		System.out.println("bookname:"+book.getName());
		System.out.println("author:"+book.getAuthor());
		bookService.add(book);
		return "success";
	}
	@RequestMapping(params = "method=update")
	public String update(Book book) {
		bookService.update(book);
		return "success";
	}
	public BookService getBookService() {
		return bookService;
	}
	@Resource
	public void setBookService(BookService bookService) {
		this.bookService = bookService;
	}
	
}

9、index.jsp

<html>
<body>
<h2>Add Book</h2>
<form method="post" action="<%=request.getContextPath() %>/book.do?method=add">
bookname:<input type="text" name="name" id="name">
author:<input type="text" name="author" id="author">
<input type="submit" value="Add">
</form>
</body>
</html>


分享到:
评论

相关推荐

    使用Eclipse构建Maven的Spring MVC项目的源代码

    本文将详细解析如何使用Eclipse构建一个基于Maven的Spring MVC项目,并探讨相关知识点。 首先,Maven是一个强大的项目管理和构建工具,它通过依赖管理和项目信息管理,使得开发者可以更高效地构建项目。Maven使用一...

    maven + spring mvc整合示例代码下载.zip

    【标题】:“maven + spring mvc整合示例代码下载.zip”是一个包含使用Maven构建并集成Spring MVC框架的示例项目的压缩包。这个项目旨在帮助开发者理解和实践如何在Java Web开发中结合这两个强大的工具。 【描述】...

    maven、spring mvc整合示例代码下载

    【标题】:maven、spring mVC整合示例代码下载 在Java开发中,Maven和Spring MVC是两个至关重要的工具。Maven是一款项目管理工具,它帮助开发者管理和构建Java项目,通过依赖管理和项目信息管理,使得开发过程更加...

    maven spring mvc示例源码

    【标题】"maven spring mvc示例源码"揭示了这是一个基于Maven构建的Spring MVC Java项目的实例。Spring MVC是Spring框架的一部分,用于构建Web应用程序,而Maven则是一个项目管理和综合工具,用于自动化构建、依赖...

    maven搭建spring mvc项目

    在IT行业中,Maven和Spring MVC是两个非常重要...总之,使用Maven搭建Spring MVC项目能帮助开发者高效地管理项目,简化构建过程,同时Spring MVC提供了强大的Web应用开发框架,使得构建功能丰富的Web应用变得简单易行。

    Spring-MVC+Maven构建java项目

    在本文中,我们将深入探讨如何使用Spring MVC和Maven来构建一个Java项目。Spring MVC是Spring框架的一个模块,专门用于构建Web应用程序,而Maven则是一个项目管理工具,用于简化构建、依赖管理和项目文档的生成。 *...

    maven_spring mvc_mina dome

    【标题】"maven_spring mvc_mina dome" 涉及到的是一个整合了Maven、Spring MVC和Mina的示例项目,旨在帮助初学者理解和掌握如何在实际开发中结合这三个技术栈。 【Spring MVC】是Spring框架的一部分,它是一个用于...

    spring MVC简单示例

    - 创建一个新的Maven项目,并添加Spring MVC的相关依赖。 - 编写一个简单的Controller,例如: ```java @Controller public class HelloWorldController { @RequestMapping("/hello") public String ...

    文件上传下载(maven + spring mvc + jetty)

    总结来说,"文件上传下载(maven + spring mvc + jetty)"项目是一个使用现代Java Web技术实现的简单示例,展示了如何利用Maven构建、Spring MVC处理HTTP请求和Jetty作为轻量级服务器。通过对这些技术的掌握,开发者...

    Maven构建Spring3mvc和Hibernate

    本篇将详细介绍如何使用Maven来构建一个结合Spring3 MVC和Hibernate的Web应用。 **一、Maven基础** 1. Maven仓库:Maven通过中央仓库下载项目所需的依赖,包括JAR包、源码、文档等。 2. `pom.xml`:项目对象模型...

    使用IntelliJ IDEA开发基于Maven+Spring MVC的入门Java项目下载

    标题中的“使用IntelliJ IDEA开发基于Maven+Spring MVC的入门Java项目”指的是一个教程或示例项目,旨在帮助初学者了解如何在IntelliJ IDEA这个强大的集成开发环境中使用Maven构建工具和Spring MVC框架来开发Java ...

    maven spring-mvc demo

    【标题】"maven spring-mvc demo"是一个基于Maven构建的Spring MVC示例项目,旨在帮助开发者理解和学习如何在实际开发中整合这两个强大的Java工具。这个项目是按照某个具体的教程(链接已给出)创建的,它展示了如何...

    maven+spring mvc+hibernate+dubbo的demo

    这是一个基于Maven、Spring MVC、Hibernate和Dubbo的示例项目,旨在展示这些技术如何协同工作以构建一个分布式服务架构的应用。以下是对每个组件及其在项目中的作用的详细解释: **Maven**: Maven是一个项目管理和...

    spring4 mvc maven

    标题中的"spring4 mvc maven"指的是一个使用Spring MVC框架和Maven构建工具的Web应用程序项目。这个项目的核心是Spring MVC,它是Spring框架的一部分,专门用于构建Web应用,提供了模型-视图-控制器(MVC)架构模式...

    使用maven简单搭建Spring mvc + redis缓存

    本文将详细讲解如何使用Maven来简单搭建一个集成了Spring MVC和Redis缓存的项目。 首先,让我们从Maven开始。Maven是一个项目管理工具,它帮助开发者管理依赖、构建项目以及执行自动化测试。在创建新项目时,我们...

    基于maven的spring mvc,spring,mybatis框架

    【基于Maven的Spring MVC,Spring,MyBatis框架】是一个经典的Java开发组合,用于构建高效、可维护的Web应用程序。Maven是项目管理和构建工具,它帮助开发者管理依赖、构建流程以及执行测试,使得开发过程更为规范和...

    基于测试驱动开发方法构建 Spring MVC 应用的示例项目(含多种实现方式).zip

    本示例项目采用测试驱动开发(TDD)方法构建了一个Spring MVC应用,包含多种实现方式,旨在提供一个可运行、可交互的学习资源。TDD是一种软件开发技术,强调先编写测试用例,再编写能够通过这些测试的代码。这种方法...

    maven整合Spring MVC Mybatis(包括mybatis反向生产代码*适合新手,高手请自动忽略)

    总结来说,这个项目提供了一个学习如何将Maven、Spring MVC、Mybatis和未来可能的CXF整合的基础示例,帮助初学者理解Java Web开发中的核心组件以及它们之间的协作。对于进一步提升,你可以探索更复杂的数据访问策略...

    Maven+Sprint MVC简单例子

    Maven 是一个项目管理和综合工具,主要用于构建、依赖管理和项目信息管理,而 Spring MVC 是 Spring 框架的一部分,用于构建 Web 应用程序。这个简单的例子将帮助我们理解如何将这两个强大的工具结合在一起,创建一...

Global site tag (gtag.js) - Google Analytics