<!--解決辦法:mybatis的3.4.0及以上版本用mybatis-spring1.3.0及以上版本; mybatis的3.4.0如下版本用mybatis-spring1.3.0如下版本。--> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.4.6</version> </dependency> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>1.3.2</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.38</version> </dependency> <!--spring--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>4.3.4.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>4.3.4.RELEASE</version> </dependency>
conf.xmljava
<?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> </configuration>
注意:保持基本配置便可;mysql
applicationContext.xmlgit
<?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" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd"> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql://127.0.0.1:3306/mybatis"/> <property name="username" value="root"/> <property name="password" value="root"/> </bean> <!-- MyBatis配置 --> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource"/> <property name="configLocation" value="classpath:conf.xml"/> <property name="mapperLocations" value="classpath:mapper/**/*Mapper.xml"/> </bean> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <!--UserMapper接口所在位置--> <property name="basePackage" value="meng.mybatis.test"/> <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/> </bean> </beans>
userMapper.xmlgithub
<?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="meng.mybatis.test.UserMapper"> <!-- resultType能夠定義簡稱 --> <select id="findUserByUserid" parameterType="int" resultType="meng.mybatis.test.User"> select * from users where id = #{id} </select> <select id="findUsers" resultType="meng.mybatis.test.User"> select * from users </select> </mapper>
meng.mybatis.test.UserMapper類spring
public interface UserMapper { List<User> findUsers(); User findUserByUserid(int id); }
ApplicationContext context = new ClassPathXmlApplicationContext("classpath:applicationContext.xml"); UserMapper userMapper = context.getBean(UserMapper.class); userMapper.findUsers();
github地址sql