标签:
1、Mybatis的SQLSession获取MapperDao,有两种
1.1、独立框架使用
全局配置文件(SqlMapConfig.xml)+SqlSession获取方式+MapperDao
SqlSession获取语句
String config="SqlMapConfig.xml"; Reader reader=Resources.getResourceAsReader(config); SqlSessionFactoryBuilder sfb=new SqlSessionFactoryBuilder(); SqlSessionFactory factory=sfb.build(reader); SqlSession session=factory.openSession(); //获取映射Dao //<mappers>:<mapper>:‘resource‘表示mappers元素下mapper元素下属性resource--> SqlMapConfig.xml--><mappers>:<mapper>:‘resource‘-->CostMapperDao; //取得session之后: EmpMapDao empDao=session.getMapper(EmpMapDao.class);
SqlMapConfig.xml
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//ibatis.apache.org//DTD Config 3.0//EN" "http://ibatis.apache.org/dtd/ibatis-3-config.dtd"> <configuration> <environments default="environment"> <environment id="environment"> <transactionManager type="JDBC" /> <dataSource type="POOLED"> <property name="driver" value="com.mysql.jdbc.Driver" /> <property name="url" value="jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8" /> <property name="username" value="root" /> <property name="password" value="123456" /> </dataSource> </environment> <!-- Oracle数据库 --> <!-- <environment id="environment"> <transactionManager type="JDBC" /> <dataSource type="POOLED"> <property name="driver" value="oracle.jdbc.OracleDriver" /> <property name="url" value="jdbc:oracle:thin:@192.168.0.23:1521:tarena10g"/> <property name="username" value="demo" /> <property name="password" value="demo" /> </dataSource> </environment> --> </environments> <!-- 加载SQL语句的xml文件 --> <mappers> <mapper resource="com/jams/ibatis/entity/CostSQL.xml" /> <mapper resource="com/jams/ibatis/entity/UserSql.xml" /> <mapper resource="com/jams/ibatis/entity/EmpSql.xml" /> </mappers> </configuration>
1.2、与springmvc框架集成获取
spring配置文件+MapperDao(不需要Mybatis的全局配置文件了)
applicationContext.xml
<!-- SqlSessionFactory --> <!-- dbcp --> <bean id="dbcp" class="org.apache.commons.dbcp.BasicDataSource"> <property name="username" value="root"/> <property name="password" value="123456"/> <property name="url" value="jdbc:mysql://localhost:3306/mynote?useUnicode=true&characterEncoding=utf8"/> <property name="driverClassName" value="com.mysql.jdbc.Driver"/> </bean> <bean id="ssf" class="org.mybatis.spring.SqlSessionFactoryBean"> <!-- 参数1dbcp --> <property name="dataSource" ref="dbcp"/> <!-- 参数2mapper文件位置 --> <property name="mapperLocations" value="classpath:com/jams/note/mapper/*.xml"/> </bean> <!-- mapperScanner,扫描MapperDao,实例Dao只需要@Resource注入,按照第一位小写就可以使用 --> <bean id="mapperScanner" class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <!-- 基础包 --> <property name="basePackage" value="com.jams.note.dao"/> <!-- SqlSessionFactory --> <!-- <property name="sqlSessionFactory" ref="ssf"/> --> <!-- 限制访问 --> <!-- <property name="annotationClass" value=""/> --> </bean>
获取MapperDao的实例
bookDao=ac.getBean("noteBookMapperDao", NoteBookMapperDao.class); 或 @Resource private NoteBookMapperDao noteBookMapperDao; method{ //noteBookMapperDao.... }
2、Hibernate框架获取Session
2.1、框架单独使用
String config="hibernate.cfg.xml"; Configuration conf=new Configuration(); conf.configure(); //获取sessionFactory sf=conf.buildSessionFactory(); //获取session Session session=sf.openSession();
标签:
原文地址:http://www.cnblogs.com/jamsbwo/p/4893339.html