Maven+spring+mybatis整合

maven+spring+mybatis整合

在这里插入图片描述

1、pom.xml文件导入依赖包

mybatis-spring整合包
mybatis依赖包
mysql驱动包
spring依赖包
c3p0连接池依赖包
其中spring_mvc没有导入
在这里插入图片描述

<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>com.wbzkc</groupId>
  <artifactId>MavernSpring--Mybatis</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <properties>
	    <!-- 版本可以自己选择 -->
		<spring.version>4.2.4.RELEASE</spring.version>
	</properties>
   <dependencies>
   		<!-- mybatis和spring集成插件 -->
   		<dependency>
		    <groupId>org.mybatis</groupId>
		    <artifactId>mybatis-spring</artifactId>
		    <version>1.1.1</version>
		</dependency>
	    <!-- mybatis依赖包 -->
		<dependency>
		    <groupId>org.mybatis</groupId>
		    <artifactId>mybatis</artifactId>
		    <version>3.2.7</version>
		</dependency>
		<dependency>
		    <groupId>org.mysql</groupId>
		    <artifactId>mysql</artifactId>
		    <version>5.1.7</version>
		</dependency>
	   <!-- spring依赖包 -->
	   <dependency>
		<groupId>org.springframework</groupId>
		<artifactId>spring-context</artifactId>
		<version>${spring.version}</version>
		</dependency>
		<dependency>
		<groupId>org.springframework</groupId>
		<artifactId>spring-aop</artifactId>
		<version>${spring.version}</version>
	</dependency>
	<dependency>
		<groupId>org.springframework</groupId>
		<artifactId>spring-tx</artifactId>
		<version>${spring.version}</version>
	</dependency>
  	<dependency>
		<groupId>org.springframework</groupId>
		<artifactId>spring-core</artifactId>
		<version>${spring.version}</version>
	</dependency>
	<dependency>
		<groupId>org.springframework</groupId>
		<artifactId>spring-expression</artifactId>
		<version>${spring.version}</version>
	</dependency>
	<dependency>
		<groupId>org.springframework</groupId>
		<artifactId>spring-jdbc</artifactId>
		<version>${spring.version}</version>
	</dependency>
	<dependency>
		<groupId>org.aspectj</groupId>
		<artifactId>aspectjweaver</artifactId>
		<version>1.8.9</version>
	</dependency>
	<!-- 数据库连接池 -->
	   <dependency>
	   	<groupId>c3p0</groupId>
	   	<artifactId>c3p0</artifactId>
	   	<version>0.9.1</version>
	   </dependency>
  </dependencies>
</project>

2、mybatis配置文件Configuration.xml

扫描所有的pojo文件

<?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>
		 <package name="com.wbzkc.pojo"/>
	</typeAliases>
</configuration>

3、spring配置文件applicationContext.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:context="http://www.springframework.org/schema/context"
       xmlns:aop="http://www.springframework.org/schema/aop"
       xmlns:tx="http://www.springframework.org/schema/tx"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans.xsd
           http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
           http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd
           http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd">
    <!-- 开启IOC注解 -->
	<context:component-scan base-package="com.wbzkc"/>
	<!-- 开启aop注解 -->
	<aop:aspectj-autoproxy/>
	<!-- 导入外部数据文件 -->
	<context:property-placeholder location="datasource.properties"/>
	<bean id="sqlSessionFaction" name="sqlSessionFaction" class="org.mybatis.spring.SqlSessionFactoryBean">
		<!-- 告知spring mybatis的配置文件在哪 -->
		<property name="configLocation" value="Configuration.xml"/>
		
		<property name="dataSource" ref="dataSource"></property>
	</bean>
	<!-- 数据库链接 -->
	<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
			<property name="driverClass" value="${db.driver}"/>
			<property name="jdbcUrl" value="${db.url}"/>
			<property name="user" value="${db.username}"/>
			<property name="password" value="${db.password}"/>
	</bean>
	<!-- 生成mapper代理对象 -->
	<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
		<property name="basePackage" value="com.wbzkc.mapper"/>
		
		<property name="sqlSessionFactoryBeanName" value="sqlSessionFaction"/>
	</bean>
	
	<!-- 配备事务管理器 -->
	<bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
		<property name="dataSource" ref="dataSource"/>
	</bean>
	<tx:annotation-driven transaction-manager="txManager"/>
</beans>

3、javabean Dept.java

package com.wbzkc.pojo;

public class Dept {
	private int dno;
	private String dname;
	private String dloc;
	public int getDno() {
		return dno;
	}
	public void setDno(int dno) {
		this.dno = dno;
	}
	public String getDname() {
		return dname;
	}
	public void setDname(String dname) {
		this.dname = dname;
	}
	public String getDloc() {
		return dloc;
	}
	public void setDloc(String dloc) {
		this.dloc = dloc;
	}
	public String toString() {
		return "Dept [dloc=" + dloc + ", dname=" + dname + ", dno=" + dno + "]";
	}
}

4、DeptMapper.java和DeptMapper.xml

public interface DeptMapper {
	Dept getByNo(int deptNo);
}

<?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="com.wbzkc.mapper.DeptMapper">
	<resultMap type="Dept" id="DeptMap">
		<id property="dloc" column="dloc"/>
		<result property="dname" column="dname"/>
		<result property="dloc" column="dloc"/>
	</resultMap>
	
	<select id="getByNo" parameterType="int" resultMap="DeptMap">
		select 
			dno,dname,dloc
			from department
			where dno=#{deptNo}
	</select>
</mapper>

5、DeptService和DeptServiceImpl

public interface DeptService {
	Dept getByNo(int deptNo);
}
package com.wbzkc.service.impl;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.wbzkc.mapper.DeptMapper;
import com.wbzkc.pojo.Dept;
import com.wbzkc.service.DeptService;

@Service("deptService")
public class DeptServiceImpl implements DeptService{
	@Autowired
	private DeptMapper deptMapper;
	@Override
	public Dept getByNo(int deptNo) {
		return deptMapper.getByNo(deptNo);
	}

}

6、测试

public class DeptTest {
	public static void main(String[] args) {
		ApplicationContext act = new ClassPathXmlApplicationContext("applicationContext.xml");
		DeptService deptService = (DeptService) act.getBean("deptService");
		System.out.println(deptService.getByNo(80));
	}
}

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值