整合SpringMVC框架+Mybatis框架開發人力資源管理系統(五)
阿新 • • 發佈:2019-01-08
部署DAO層
對前面實現的DAO元件的呼叫有兩種方式實現:
一是通過SqlSession物件的getMapper()方法獲取介面例項,程式碼如下:
try( InputStream is=Resources.getRessourceAsStream("mybatis-config.xml"); ){ SqlSessionFactory sqlSessionFactory=new SqlSessionFactoryBuilder().build(is); SqlSession sqlSession=sqlSessionFactory.openSession(); UserDao userDao=sqlSession.getMapper(UserDao.class); }catch(Exception e){ e.printStacktrace(); }
二是利用spring框架的依賴注入功能,實現對DAO元件的生成與管理。具體的步驟是:
1、新增資料來源C3P0所需jar包,包含c3p0-0.9.5.2.jar、先新增整合Mybatis-Spring中介軟體jar包mybatis-spring-1.3.1.jar,hibernate-c3p0-5.2.10.Final.jar、mchange-commons-java-0.2.11.jar三個jar包。建立資料來源檔案db.properties:
dataSource.driverClass=com.mysql.jdbc.Driver dataSource.jdbcUrl=jdbc:mysql://localhost:3306/hrm_db dataSource.user=root dataSource.password=root dataSource.maxPoolSize=20 dataSource.maxIdleTime=2000 dataSource.minPoolSize=6 dataSource.initialPoolSize=5
2、整合Mybatis-Spring框架,新增mybatis-spring-1.3.1.jar包。
3、新增MySQL資料庫驅動,WEB-INF/lib資料夾下新增jar包mysql-connector-java-5.1.41-bin
4、建立applicationContext.xml檔案放在WEB-INF/lib路徑下:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:mybatis="http://mybatis.org/schema/mybatis-spring" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:p="http://www.springframework.org/schema/p" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:mvc="http://www.springframework.org/schema/mvc" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd http://mybatis.org/schema/mybatis-spring http://mybatis.org/schema/mybatis-spring.xsd "> <!-- mybatis:scan會掃描org.fkit.hrm.dao包裡的所有介面當做Spring的bean配置,之後可以進行依賴注入 --> <mybatis:scan base-package="org.fkit.hrm.dao"/> <!-- 掃描org.fkit.包下的java檔案,若有Spring的相關注解的類,則把這些類註冊為Spring的bean --> <context:component-scan base-package="org.fkit.hrm"/> <!-- 使用PropertyOverrideConfigurer後處理器載入資料來源引數 --> <context:property-override location="classpath:db.properties"/> <!-- 配置c3po資料來源 --> <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"/> <!--配置SqlSessionFacctory,org.mybatis.spring.SqlSessionFactoryBean是Mybatis社群開發用於整合Sring的bean --> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean" p:dataSource-ref="dataSource"/> <!-- JDBC事務管理 --> <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager" p:dataSource-ref="dataSource"/> </beans>
這樣就基本上算是對DAO元件部署完成了。