1准备环境
导入相应的包##
- mysql
- mybatis
- druid //使用的是阿里巴巴的连接池
- log4j
- junit
- slf4j-log4j12 //用于整合log4j,将spring自带的日志工具替换掉
- spring-context //spring基础包
- spring-jdbc
- mybatis-spring
2.创建Dao
package com.tyf.dao;
import com.tyf.domain.User;
import java.util.List;
public interface IUserDao {
public User login(User user);
public List<User> findAll();
}
3.创建实体类
实体类名称最好与数据库的属性名对应
4.创建service对象
service接口
package com.tyf.service;
import com.tyf.domain.User;
import java.util.List;
public interface IUserService {
public List<User> findAll();
}
service实现类
package com.tyf.service.impl;
import com.tyf.dao.IUserDao;
import com.tyf.domain.User;
import com.tyf.service.IUserService;
import java.util.List;
public class UserService implements IUserService {
private IUserDao userDao;
public IUserDao getUserDao() {
return userDao;
}
public void setUserDao(IUserDao userDao) {
this.userDao = userDao;
}
public List<User> findAll(){
return userDao.findAll();
}
}
5.配置文件的配置
1.获取数据库连接对象
// 配置文件内容
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/数据库名
jdbc.username=root
jdbc.password=123456
//获取连接的配置文件
<context:property-placeholder location="classpath:/jdbcConfig.properties"/>
//配置连接
<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource">
<property name="driverClassName" value="${jdbc.driverClassName}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</bean>
2.创建SqlSessionFactoryBean对象
<bean id="sqlSession" class="org.mybatis.spring.SqlSessionFactoryBean">
<!--连接池对象-->
<property name="dataSource" ref="dataSource"></property>
<!--指定实体类所在的包 为之对应的类起别名-->
<property name="typeAliasesPackage" value="com.tyf.domain"></property>
<!--指定配置文件所在的位置-->
<property name="mapperLocations">
<list>
<value>com.tyf.mapper/*Mapper.xml</value>
</list>
</property>
</bean>
3.获取Dao
<!--Dao接口 用于获取Dao对应的实现-->
<bean id="scanner" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<!--SqlSessionFactoryBean-->
<property name="sqlSessionFactoryBeanName" value="sqlSession"></property>
<!--Dao接口对应的包位置-->
<property name="basePackage" value="com.tyf.dao"></property>
</bean>
4.配置service类
<bean id="userService" class="com.tyf.service.impl.UserService">
<property name="userDao" ref="IUserDao"></property>
</bean>
6.Dao 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="com.tyf.dao.IUserDao">
//sql语句
<select id="findAll" resultType="user">
select * from user ;
</select>
</mapper>
7.编写测试类
ApplicationContext cxt = new ClassPathXmlApplicationContext("applicationContext.xml");
IUserService userService = (IUserService) cxt.getBean("userService");
List<User> users = userService.findAll();
for (User user : users) {
System.out.println(user);
}