`

【持久化框架】SpringMVC+Spring4+Mybatis3集成,开发简单Web项目+源码下载

阅读更多

上篇博文我们介绍了mybatis的基本概念与原理,这篇博文我们通过Spring与Mybatis集成,开发一个简单用户增删改查的Web项目。

 

基本准备工作

 

1、安装JDK1.6以上版本,安装与配置

2、下载mybatis-3.2.0版:https://repo1.maven.org/maven2/org/mybatis/mybatis/

3、下载mybatis-spring-1.2.1版:https://repo1.maven.org/maven2/org/mybatis/mybatis-spring/

4、Spring-4.0.0的版本

5、tomacat6.x以上版本即可

当然,这些jar还不够,还需要MySQL数据库与驱动,log4j的jar等等。下面我们开始今天的旅行:

 

第一步:创建数据库表

 

在Navicat下执行如下sql命令创建数据库mybatis和表t_user

 

CREATE DATABASE IF NOT EXISTS mybatis;
USE mybatis;
create table t_user
(
    user_id int(11) NOT NULL AUTO_INCREMENT,
    user_name varchar(20) not null,
    user_age varchar(20) not null,
    PRIMARY KEY (user_id)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;


我们先看一下项目的完整目录,再继续下面的内容


第二步:添加jar包

 

 

对于下面代码的内容,我们就不再一一贴出来,只是把最重要的内容贴出来,大家可以下载源码。

 

第三步:创建model

创建一个model包并在其下创建一个User.java文件。

 

package com.tgb.model;

/**
 * 用户
 * @author liang
 *
 */
public class User {

	private int id;
	private String age;
	private String userName;
	public User(){
		super();
	}
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getAge() {
		return age;
	}
	public void setAge(String age) {
		this.age = age;
	}
	public String getUserName() {
		return userName;
	}
	public void setUserName(String userName) {
		this.userName = userName;
	}
	public User(int id, String age, String userName) {
		super();
		this.id = id;
		this.age = age;
		this.userName = userName;
	}
}


第四步:创建DAO接口

 


创建一个包mapper,并在其下创建一个UserMapper.java文件作为DAO接口。

 

package com.tgb.mapper;

import java.util.List;

import com.tgb.model.User;

public interface UserMapper {

	void save(User user);
	boolean update(User user);
	boolean delete(int id);
	User findById(int id);
	List<User> findAll();
}


第五步:实现DAO接口

 


在dao包下创建一个UserMapper.xml文件作为上一步创建的DAO接口的实现。

 

<?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">
<!-- 
	namespace:必须与对应的接口全类名一致
	id:必须与对应接口的某个对应的方法名一致
	
 -->
<mapper namespace="com.tgb.mapper.UserMapper">
	
	<insert id="save" parameterType="User">
		insert into t_user(user_name,user_age) values(#{userName},#{age})
	</insert>
	
	<update id="update" parameterType="User">
		update t_user set user_name=#{userName},user_age=#{age} where user_id=#{id}
	</update>
	
	<delete id="delete" parameterType="int">
		delete from t_user where user_id=#{id}
	</delete>
	
	 <!-- mybsits_config中配置的alias类别名,也可直接配置resultType为类路劲 -->  
	<select id="findById" parameterType="int" resultType="User">
		select user_id id,user_name userName,user_age age from t_user where user_id=#{id}
	</select>
	
	<select id="findAll" resultType="User">
		select user_id id,user_name userName,user_age age from t_user
	</select>
	
</mapper>


这里对这个xml文件作几点说明:
1、namespace必须与对应的接口全类名一致。
2、id必须与对应接口的某个对应的方法名一致即必须要和UserMapper.java接口中的方法同名。

 

 

第六步:Mybatis和Spring的整合

 

对于Mybatis和Spring的整合是这篇博文的重点,需要配置的内容在下面有详细的解释。

 

<?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:p="http://www.springframework.org/schema/p"
	xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"
	xsi:schemaLocation="
		http://www.springframework.org/schema/beans
		http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
		http://www.springframework.org/schema/context
		http://www.springframework.org/schema/context/spring-context-4.0.xsd
		http://www.springframework.org/schema/tx
		http://www.springframework.org/schema/tx/spring-tx-4.0.xsd">

	<!-- 1. 数据源 : DriverManagerDataSource -->
	<bean id="dataSource"
		class="org.springframework.jdbc.datasource.DriverManagerDataSource">
		<property name="driverClassName" value="com.mysql.jdbc.Driver" />
		<property name="url" value="jdbc:mysql://localhost:3306/mybatis" />
		<property name="username" value="root" />
		<property name="password" value="123456" />
	</bean>

	<!--
		2. mybatis的SqlSession的工厂: SqlSessionFactoryBean dataSource:引用数据源

		MyBatis定义数据源,同意加载配置
	-->
	<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
		<property name="dataSource" ref="dataSource"></property>
		<property name="configLocation" value="classpath:config/mybatis-config.xml" /> 
	</bean>

	<!--
		3. mybatis自动扫描加载Sql映射文件/接口 : MapperScannerConfigurer sqlSessionFactory

		basePackage:指定sql映射文件/接口所在的包(自动扫描)
	-->
	<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
		<property name="basePackage" value="com.tgb.mapper"></property>
		<property name="sqlSessionFactory" ref="sqlSessionFactory"></property>
	</bean>

	<!--
		4. 事务管理 : DataSourceTransactionManager dataSource:引用上面定义的数据源
	-->
	<bean id="txManager"
		class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
		<property name="dataSource" ref="dataSource"></property>
	</bean>

	<!-- 5. 使用声明式事务
		 transaction-manager:引用上面定义的事务管理器
	 -->
	<tx:annotation-driven transaction-manager="txManager" />

</beans>


第七步: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="com.tgb.model.User" />
	</typeAliases>
	<!-- 实体接口映射资源 -->
	<!--
		说明:如果xxMapper.xml配置文件放在和xxMapper.java统一目录下,mappers也可以省略,因为org.mybatis.spring.mapper.MapperFactoryBean默认会去查找与xxMapper.java相同目录和名称的xxMapper.xml
	-->
	<mappers>
		<mapper resource="com/tgb/mapper/userMapper.xml" />
	</mappers>

</configuration>  



总结

 

Mybatis和Spring的集成相对而言还是很简单的,祝你成功。

 

源码下载:SpringMVC+Spring4+Mybatis3

 

下篇博文我们将Hibernate和Mybatis进行一下详细的对比

 

分享到:
评论

相关推荐

    springmvc+spring+mybatis开发框架搭建代码,已使用,完美运行。

    SSM(Spring MVC + Spring + MyBatis)是Java Web开发中常见的三层架构组合,它将Spring MVC作为表现层框架,Spring作为业务层容器,MyBatis作为数据访问层框架。下面将详细介绍这三个组件以及它们如何协同工作。 *...

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

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

    ZooKeeper+dubbo+spring+springMvc+mybatis实例源码下载

    总结来说,这个项目是一个基于ZooKeeper服务发现、dubbo服务治理、spring依赖注入、springMvc MVC框架和mybatis数据库操作的完整微服务示例。通过对这些技术的深入理解和实践,开发者可以更好地掌握分布式系统的设计...

    idea+spring+springmvc+mybatis搭建源码

    "idea+spring+springmvc+mybatis搭建源码"所涉及的知识点主要集中在Java Web开发领域,使用IntelliJ IDEA(简称IDEA)作为集成开发环境,结合Spring、SpringMVC和MyBatis这三大核心框架构建一个模块化的项目。...

    SSM框架-详细整合教程(Spring+SpringMVC+MyBatis).pdf

    SSM框架,即Spring、SpringMVC和MyBatis的集成,是Java开发中常见的Web应用程序框架组合。这个框架集合提供了完整的后端解决方案,涵盖了依赖注入(DI)、面向切面编程(AOP)、模型视图控制器(MVC)以及持久层操作...

    spring+springMVC+mybatis+quartz动态定时任务创建

    在IT行业中,构建高效、可扩展的Web应用是至关重要的,而"spring+springMVC+mybatis+quartz动态定时任务创建"就是一个常见的技术栈,用于实现这样的目标。这个组合充分利用了各组件的优势,提供了强大的后端服务支持...

    SpringMVC+Mybatis demo

    SpringMVC和MyBatis是Java Web开发中的两个核心框架,它们在构建高效、模块化的应用程序方面发挥着重要作用。SpringMVC是Spring框架的一部分,主要负责处理HTTP请求和响应,而MyBatis则是一个轻量级的持久层框架,...

    Maven搭建Spring+SpringMVC+Mybatis+MySql+SpringSecurity项目源码

    【标题】:“Maven搭建Spring+SpringMVC+Mybatis+MySql+SpringSecurity项目源码” 本项目源码展示了如何使用Maven构建一个完整的Java Web应用,它整合了Spring框架、SpringMVC、Mybatis、MySql数据库以及Spring ...

    使用SpringMVC+Spring+Maven+Mybatis+shiro的框架

    SpringMVC是Spring框架的一部分,它是一个模型-视图-控制器(MVC)架构的Web应用开发框架。它简化了在Java环境下构建可维护、高性能的Web应用程序的过程。SpringMVC通过DispatcherServlet处理HTTP请求,将请求转发给...

    基于SpringMVC+Spring+Mybatis+Mybatis Plus.zip

    本项目"基于SpringMVC+Spring+Mybatis+Mybatis Plus.zip"展示了一个使用SpringMVC、Spring、Mybatis以及Mybatis Plus的集成解决方案,这些技术都是Java Web开发中的关键组件。 **SpringMVC** SpringMVC是Spring框架...

    Mybatis+Spring+SpringMVC 框架项目源码 超市订单管理系统 +数据库脚本

    SSM框架是Java Web开发中常用的一种集成框架,它结合了Spring、SpringMVC和Mybatis三个强大的开源框架。这个“超市订单管理系统”项目就是基于SSM框架实现的一个典型实例,旨在帮助初学者理解并掌握这三个框架的协同...

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

    在SpringMVC+Spring+Mybatis的整合中,Maven通过pom.xml文件定义项目的依赖关系,自动下载所需库,构建项目,确保所有组件都能正确地协同工作。 本教程源码涵盖了整合过程中的各种配置文件,如web.xml(SpringMVC的...

    SSM框架【Spring+SpringMVC+MyBatis】 源码

    SSM框架,全称为Spring、SpringMVC和MyBatis的集成框架,是Java开发Web应用的主流选择。这三个组件协同工作,构建出高效、灵活的后端服务。接下来,我们将详细探讨这三个框架的核心概念、功能及它们如何协同工作。 ...

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

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

    springmvc+spring+mybatis+maven整合源码

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

    Spring3+springmvc+mybatis三大整合

    在Java开发领域,Spring、SpringMVC和MyBatis是三个非常重要的开源框架,它们各自在不同的层次上解决了Web应用中的问题。Spring作为全面的框架,提供了依赖注入(DI)和面向切面编程(AOP)等核心特性;SpringMVC是...

    SpringMVC+Spring+mybatis项目搭建详细过程

    在本文中,我们将深入探讨如何搭建一个基于SpringMVC、Spring和MyBatis的Java Web项目。这是一个常见的技术栈,广泛应用于企业级应用开发。首先,让我们了解这三个框架的核心功能。 1. SpringMVC:SpringMVC是...

    Spring+SpringMVC+Mybatis+easyUI

    【Spring+SpringMVC+Mybatis+easyUI】是一个经典的Java Web开发框架组合,广泛应用于企业级应用系统中。这个组合提供了模型-视图-控制器(MVC)架构模式的实现,以及数据库操作的便捷支持和用户界面的美化。下面我们...

    Spring+SpringMVC+Mybatis框架整合

    SSM框架是Java Web开发中常用的一种组合,由Spring、SpringMVC和Mybatis三大组件构成。这个框架整合为开发者提供了高效、灵活的开发环境,适用于构建复杂的企业级应用。 **1. Spring框架** Spring是Java领域的一个...

    idea创建ssm(spring+springMVC+mybatis+mysql+maven)基础登录框架源码含sql表语句

    SSM框架是Java Web开发中常用的三大框架集成,即Spring、SpringMVC和Mybatis的组合,它们各自负责不同的职责,协同工作以构建强大的企业级应用。Maven作为项目管理和构建工具,使得依赖管理和构建流程更为简洁。在...

Global site tag (gtag.js) - Google Analytics