1、搭建和測試MyBatis的環境mysql
1. 在web項目中編寫mybatis-config.xml的配置文件,編寫核心配置文件web
<?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> <properties resource="db.properties" /> <environments default="mysql"> <environment id="mysql"> <transactionManager type="JDBC"></transactionManager> <dataSource type="POOLED"> <!-- 數據庫驅動 --> <property name="driver" value="${jdbc.driver}"></property> <!-- 鏈接數據庫 --> <property name="url" value="${jdbc.url}"></property> <!-- 鏈接數據庫的用戶名 --> <property name="username" value="${jdbc.username}"></property> <!-- 鏈接數據庫的密碼 --> <property name="password" value="${jdbc.password}"></property> </dataSource> </environment> </environments> <mappers> <!--該包下全部的dao接口均可以使用--> <package name="cn.itcast.dao"/> </mappers> </configuration>
2.在AccountDao接口的方法上添加註解,編寫SQL語句spring
3.編寫測試的方法sql
public class Demo1 { @Test public void run1() throws Exception{ // 加載配置文件 InputStream inputStream= Resources.getResourceAsStream("mybatis-config.xml"); //建立工廠 SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(inputStream); // 建立sqlSession對象 SqlSession session = factory.openSession(); //獲取代理對象 AccountDao dao=session.getMapper(AccountDao.class); //調用查詢方法 List<Account> list= dao.findAll(); for(Account account:list){ System.out.println(account); } //釋放資源 session.close(); inputStream.close(); } }
2、Spring整合Mybatis框架數據庫
1. 目的:把Mybatis-config.xml配置文件中的內容配置到applicationContext.xml配置文件中session
<!--Spring整合MyBatis框架--> <!--配置鏈接池--> <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"> <property name="driverClass" value="com.mysql.jdbc.Driver"/> <property name="jdbcUrl" value="jdbc:mysql://localhost:3306/test"/> <property name="user" value="root"/> <property name="password" value="root"/> </bean> <!--配置SqlSessionFactory工廠--> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource" /> </bean> <!--配置AccountDao接口所在包--> <bean id="mapperScanner" class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="basePackage" value="cn.itcast.dao"/> </bean>
注意:表現層調用業務處理層,業務處理層調用dao層;mybatis
2. 在AccountDao接口中添加@Repository註解app
3. 在service中注入dao對象,進行測試框架
在表現層的代碼以下:ide
@Autowired private AccountService accountService; /* * 查詢全部的數據 * @return * */ @RequestMapping("findAll") public String findAll(){ System.out.println("表現層:查詢全部帳戶"); List<Account> list= accountService.findAll(); for(Account account:list){ System.out.println(account); } return "list"; }
2. Spring整合MyBatis框架1. 目的:把SqlMapConfig.xml配置文件中的內容配置到applicationContext.xml配置文件中2. 在AccountDao接口中添加@Repository註解