`
zhoucl
  • 浏览: 50198 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Spring3+Mybatis在Maven环境下的整合

阅读更多

这两天不是很忙,最近自己也一直在看Maven相关的东西,了解下关于Maven提供的一些功能:包的依赖管理等,今天就把Spring3.X+Mybatis在Maven环境下整合了一回,最后mvn test成功!闲话少说,直接上代码。

1、新建一个maven project,这个就略过

2、在pom.xml文件中添加依赖

<dependencies>
    <dependency>
		<groupId>junit</groupId>
		<artifactId>junit</artifactId>
		<version>4.7</version>
		<scope>test</scope>
    </dependency>
    <dependency>
		<groupId>org.mybatis</groupId>
		<artifactId>mybatis</artifactId>
		<version>3.0.4</version>
		<type>jar</type>
		<scope>compile</scope>
    </dependency>
    <dependency>
    	<groupId>org.mybatis</groupId>
    	<artifactId>mybatis-spring</artifactId>
    	<version>1.0.0-RC3</version>
    	<type>jar</type>
    	<scope>compile</scope>
    </dependency>
    <dependency>
    	<groupId>mysql</groupId>
    	<artifactId>mysql-connector-java</artifactId>
    	<version>5.1.16</version>
    	<type>jar</type>
    	<scope>compile</scope>
    </dependency>
    <dependency>		<!--commons-dbcp,测试过程中,用1.4版的出现问题,而选择1.2.2版本的没问题-->
    	<groupId>commons-dbcp</groupId>
    	<artifactId>commons-dbcp</artifactId>
    	<version>1.2.2</version>
    	<type>jar</type>
    	<scope>compile</scope>
    </dependency>
    <dependency>
    	<groupId>commons-collections</groupId>
    	<artifactId>commons-collections</artifactId>
    	<version>3.2.1</version>
    	<type>jar</type>
    	<scope>compile</scope>
    </dependency>
</dependencies>

 2、编写测试代码:src/test/java/org/clzps/main/MybatisSpringTest.java,肯定不通过

public void testMain() 
{
	ApplicationContext context = new ClassPathXmlApplicationContext("spring-ds.xml");
	UserDAO userMapper = (UserDAO)context.getBean("userDAO");
	System.out.println(userMapper.getClass().getName());
	User user = userMapper.queryUserById(1);
	System.out.println(user.getUsername());
}

 3、增加Spring的资源文件:src/main/resources/spring-ds.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-3.0.xsd">
	<bean id="userDAO" class="org.clzps.dao.impl.UserDAOImpl">
		<property name="sqlSessionFactory" ref="sqlSessionFactory" />
	</bean>
	
	<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
		<property name="driverClassName" value="com.mysql.jdbc.Driver"/>
		<property name="url" value="jdbc:mysql://localhost:3306/maven?characterEncoding=UTF-8" />
		<property name="username" value="root" />
		<property name="password" value="root" />
	</bean>
	
	<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
		<property name="dataSource" ref="dataSource" />
		<property name="configLocation" value="ibatis/sqlMapConfig.xml" />
	</bean>	
</beans>

 4、增加src/main/resources/ibatis/sqlMapConfig.xml,即mybatis的配置文件之一

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
	<typeAliases>
		<typeAlias alias="User" type="org.clzps.model.User" />  <!--配置别名,是在Mapper中使用别名-->
	</typeAliases>
	<mappers>
		<mapper resource="ibatis/UserMapper.xml"/>
	</mappers>
</configuration>

 5、在增加UserMapper.xml之间,在Java代码中生成对应的model,即src/main/java/org/clzps/model/User.java

 

public class User {
	private int id;
	private String username;
	private String password;
	private int age;
	
	//... ...getter and setter
}

 6、增加/src/main/resources/ibatis/UserMapper.xml,对应与Model的Mapper文件

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="org.clzps.model.UserMapper">  <!--mybatis的namespace是必须的-->
	<select id="queryUserByID" parameterType="int" resultType="User">  <!--resultType使用的是简称-->
		SELECT * 
		FROM maven.User
		WHERE id = #{id}
	</select>
</mapper>

 7、建立src/main/java/org/clzps/dao包,建立interface文件,UserDAO.java

public interface UserDAO {
	public User queryUserById(int id);
}

 8、实现UserDAO接口:src/main/java/org/clzps/dao/impl/UserDAOImpl.java,并且调用UserMapper中的select

public class UserDAOImpl extends SqlSessionDaoSupport implements UserDAO {

	public User queryUserById(int id) {
		return (User)this.getSqlSession().selectOne("org.clzps.model.UserMapper.queryUserByID", id);
	}
}

 9、至此代码编写完成,运行mvn test;更多功能挖掘,待以后完善...

分享到:
评论

相关推荐

    SpringMvc+Spring+Mybatis+Maven+注解方式=整合

    "SpringMvc+Spring+Mybatis+Maven+注解方式"是一个经典的Java后端技术栈,它整合了四个关键组件,为开发人员提供了强大的工具和框架支持。下面将详细讲解这四个组件及其整合方式。 1. **Spring Framework**: ...

    SpringMvc+Spring+Mybatis+Maven整合.part10

    通过SpringMvc+Spring+Mybatis+Maven整合,学习用maven搭建框架

    springMVC+Spring+Mybatis+Maven整合代码案例

    3、技术框架:Spring 4.1.4.RELEASE、Spring MVC 4.1.4.RELEASE、MyBatis 3.2.8 二、整合思路: 1、设计数据库:设计好表结构,最好符合3NF,使用Generator自动生成Mybatis相关表信息 2、创建Maven项目,按需映入...

    Java Spring SpringMVC+MyBatis+Maven+easyUI整合代码

    在IT行业中,Spring框架是Java企业级应用开发的首选,而SpringMVC和MyBatis则是Spring框架下常用于构建Web应用的两个重要模块。EasyUI则是一个基于jQuery的前端UI库,它提供了丰富的组件,使得开发者可以快速构建...

    Spring+SpringMVC+Mybatis+Maven+bootstrap+ajax+jQuery整合开发简单的员工后台管理系统

    在本项目中,"Spring+SpringMVC+Mybatis+Maven+bootstrap+ajax+jQuery整合开发简单的员工后台管理系统",我们看到一个基于Java技术栈的Web应用开发实例。这个系统利用了多个核心技术来构建一个功能完备的员工管理...

    springmvc+spring+Mybatis+Maven整合

    在本项目中,这三个框架通过 Maven 进行了整合,使得项目的构建、依赖管理和模块化更加方便。下面将详细介绍这三个框架以及它们如何与 Maven 结合使用。 1. Spring MVC: Spring MVC 是 Spring 框架的一部分,主要...

    SpringMvc+Spring+MyBatis+Maven整合视频源码+数据库

    本资源提供的"SpringMvc+Spring+MyBatis+Maven整合视频源码+数据库"是针对这四个框架的集成实践,通过源码分析,有助于开发者深入理解它们的协同工作方式。 Spring MVC 是Spring框架的一部分,它作为控制器,负责...

    整合Spring+SpringMVC+Mybatis+Maven+Mysql项目实例

    整合搭建Spring+SpringMVC+Mybatis+Maven+Mysql开发实例

    springmvc+spring+mybatis+maven整合源码

    【标题】"springmvc+spring+mybatis+maven整合源码"所涉及的知识点主要集中在企业级Java开发中常用的四个框架的集成应用上。这四个框架分别是Spring MVC、Spring、MyBatis和Maven,它们在Java Web开发中各有其重要...

    SpringMVC+Spring+mybatis+maven整合视频教程源码+视频地址.rar

    《SpringMVC+Spring+Mybatis+maven整合详解》 在现代Java开发中,Spring框架以其强大的企业级应用支持和高度模块化的特性,成为开发者首选的框架之一。本教程将深入探讨SpringMVC、Spring、Mybatis以及Maven这四个...

    Spring mvc+mybatis+maven+velocity+mysql整合实例

    本篇文章将通过一个简单显示用户信息的实例整合Spring mvc+mybatis+Maven+velocity+mysql. 一、.Maven工程目录 二、Spring mvc + mybatis +maven实现 1.Mysql数据库表数据

    spring+springMVC+myBatis+maven项目整合

    【标题】"spring+springMVC+myBatis+maven项目整合"是一个常见的Java Web开发技术栈,这个项目集成了Spring框架(用于依赖注入和管理)、SpringMVC(用于处理HTTP请求和视图渲染)、MyBatis(作为持久层框架)以及...

    activiti+spring+srping Mvc+mybatis+maven整合

    本项目是关于"activiti+spring+spring Mvc+mybatis+maven"的整合,旨在创建一个基于Activiti工作流引擎、Spring、Spring MVC、MyBatis以及Maven的开发环境。下面将详细介绍这些技术及其整合过程。 首先,`activiti`...

    spring+springmvc+mybatis+maven 整合当前最流行框架,本项目为mars,IntelliJ IDEA,eclplse直接引用

    spring+springmvc+mybatis+maven 整合当前最流行框架,本项目为mars项目原型框架,IntelliJ IDEA,eclplse直接引用pom.xml, 使用方法: 1.解压后与pom.xml 同一目录有sql,执行sql就可以连接数据库! 2.IntelliJ IDEA,...

    springmvc + spring + mybatis + maven整合配置文件

    3. **MyBatis-Spring整合**:使MyBatis与Spring无缝集成,通过Spring的DAO支持自动管理SqlSession和Mapper实例。 **Maven** Maven是一个项目管理和综合工具,通过POM(Project Object Model)文件管理项目的依赖...

    SpringMVC+Spring4+Mybatis3 Maven整合源码

    SpringMVC+Spring4+Mybatis3 Maven整合教程 SpringMVC+Spring4+Mybatis3 Maven整合教程 SpringMVC+Spring4+Mybatis3 Maven整合教程

    maven+springmvc+redis+mybatis整合

    本项目以“maven+springmvc+redis+mybatis整合”为主题,旨在提供一个基于这些技术的集成框架,特别强调了利用Redis作为缓存来提升应用性能。下面将详细阐述这个框架中的各个组成部分以及它们之间的协作。 首先,...

    spring mvc + mybatis + maven + easyui + oracle 数据库实现增删改查.rar

    这个项目"spring mvc + mybatis + maven + easyui + oracle 数据库实现增删改查"就是一个典型的例子,它整合了五个关键组件来完成常见的CRUD(创建、读取、更新和删除)操作。以下是对这些技术及其相互作用的详细...

    SpringMvc+Spring+MyBatis+Maven整合实例

    SpringMvc+Spring+MyBatis+Maven整合实例代码,教程见:http://www.cnblogs.com/NaughtyBaby/p/4754881.html 该教程是通过看: ... 《SpringMvc+Spring+Mybatis+Maven整合视频教程1》 编写供学习使用的。

    spring+mybatis+maven

    当我们将Spring、MyBatis和Maven整合在一起时,可以创建一个高效的工作流程: 1. **依赖管理**:在Maven的POM.xml文件中,我们可以声明Spring和MyBatis的依赖,Maven会自动下载并管理这些依赖,确保版本的兼容性。 ...

Global site tag (gtag.js) - Google Analytics