1.导入依赖
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.30</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.6</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>5.3.1</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.9.6</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>2.0.6</version>
</dependency>
</dependencies>
2.编写pojo类
public class User {
private int id;
private String name;
private int age;
private String gradeid;
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 int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getGradeid() {
return gradeid;
}
public void setGradeid(String gradeid) {
this.gradeid = gradeid;
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", name='" + name + '\'' +
", age=" + age +
", gradeid='" + gradeid + '\'' +
'}';
}
}
3.操作pojo类,编写操作实体类接口
public interface UserMapper { public List<User> selectUser(); }
4.实现接口xml:UserMapper.xml
<?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.ld.maper.UserMapper">
<select id="selectUser" resultType="aaa">
select * from mysql_dong.cb_user;
</select>
</mapper>
5.编写mybatis-config.xml配置文件
其中typeAliases是配置别名
其中有<mapper class="com.ld.maper.UserMapper"/> 标签,
<mapper resource="com/ld/maper/UserMapper.xml"/>
<?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">
<!--mybatis核心配置文件-->
<configuration>
<typeAliases>
<typeAlias type="com.ld.pojo.User"/>
</typeAliases>
</configuration>
6.编写spring-dao.xml配置文件
<?xml version="1.0" encoding="GBK"?> <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-2.5.xsd">
<!-- 配置数据源-->
<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/mysql_dong?useSSL=true&useUnicode=true&characterEncoding=UTF-8"/>
<property name="username" value="root"/>
<property name="password" value="root"/>
</bean>
<!-- sqlSessionFactory-->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="datasource"/>
<property name="configLocation" value="classpath:mybatis-config.xml"/>
<property name="mapperLocations" value="classpath:com/ld/maper/*.xml"/>
</bean>
<bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate">
<constructor-arg index="0" ref="sqlSessionFactory"/> </bean>
<bean id="userMapperImpl" class="com.ld.maper.UserMapperImpl">
<property name="sqlSession" ref="sqlSession"/>
</bean>
</beans>
7.编写UserMapper接口实现类
public class UserMapperImpl implements UserMapper { private SqlSessionTemplate sqlSession; public void setSqlSession(SqlSessionTemplate sqlSession) { this.sqlSession = sqlSession; } public List<User> selectUser() { UserMapper mapper = sqlSession.getMapper(UserMapper.class); return mapper.selectUser(); } }
8.方法实现
@Test public void test2(){ ApplicationContext context = new ClassPathXmlApplicationContext("spring-dao.xml"); UserMapperImpl userMapperImpl = context.getBean("userMapperImpl", UserMapperImpl.class); for (User user : userMapperImpl.selectUser()) { System.out.println(user); } }
方式二:(继承sqlSessionDaoSupport)
1.继承
public class UserMapperImpl2 extends SqlSessionDaoSupport implements UserMapper { public List<User> selectUser() { return getSqlSession().getMapper(UserMapper.class).selectUser(); } }
2.在applicationContext.xml中添加bean
<?xml version="1.0" encoding="GBK"?> <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-2.5.xsd"> <import resource="spring-dao.xml"/> <bean id="userMapperImpl2" class="com.ld.maper.UserMapperImpl2"> <property name="sqlSessionFactory" ref="sqlSessionFactory"/> </bean> </beans>
3.方法实现
@Test public void test3(){ ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml"); UserMapperImpl2 userMapperImpl = context.getBean("userMapperImpl2", UserMapperImpl2.class); for (User user : userMapperImpl.selectUser()) { System.out.println(user); } }