您的位置:首页 > 数据库

mybatis 构建SqlSessionFactory的几种方式 以及调用sql映射语句的几种方式

2012-03-04 22:41 811 查看
/****************************************************************/
>mybatis构造SqlSessionFactory的方式
/****************************************************************/
>0.通过xml配置文件SqlSessionFactoryBuilder创建数据库连接会话对象
///////////////////////////////////////////////////////////////////////////////////////
//public static void mybatis_conn() {
//		try {
//			Reader reader = Resources.getResourceAsReader("mybatis.xml");
//			SqlSessionFactory sf = new SqlSessionFactoryBuilder().build(reader);
//			SqlSession session = sf.openSession();
//			/** 得到sql映射器 */
//			CustomerMapper mapper = (CustomerMapper) session
//					.getMapper(CustomerMapper.class);
//
//			List<Customer> cList = mapper.list();
//			System.out.println(cList.size());
//
//			for (int i = 0; i < cList.size(); i++) {
//				Customer cc = cList.get(i);
//				System.out.println(cc.getCid() + " " + cc.getCname() + " "
//						+ cc.getOid());
//			}
//
//		} catch (Exception e) {
//			e.printStackTrace();
//		}
//	}
////////////////////////////////////////////////////////////////////////////////////////

>1.通过java对象配置mybatis得到SqlsessionFactory
////////////////////////////////////////////////////////////////////////////////////////
//public static void obj_config() {
//		TransactionFactory transactionFactory = new JdbcTransactionFactory();//事物管理器
//		MysqlDataSource dataSource = new MysqlDataSource();
//
//		/** 使用mysql驱动包实现的数据源实现 */
//		dataSource.setUrl(url);
//		dataSource.setPassword(password);
//		dataSource.setDatabaseName("test");
//		dataSource.setUser(username);
//
//		Environment environment = new Environment("dev", transactionFactory,
//				dataSource);
//		Configuration cfg = new Configuration(environment);
//
//		// 将在xml中配置的映射语句映射到对象
//		cfg.addMapper(CustomerMapper.class);
//		/** 映射文件中描述的动作的映射对象 */
//
//		// 通过SqlSessionFactoryBuilder构建SqlSessionFactory
//		SqlSessionFactoryBuilder sfb = new SqlSessionFactoryBuilder();
//		SqlSessionFactory sf = sfb.build(cfg);
//
//		SqlSession ss = sf.openSession();
//		// 映射器是创建映射绑定语句的接口
//		// 映射器实例类
//		CustomerMapper mapper = ss.getMapper(CustomerMapper.class);
//		List<Customer> cList = mapper.list();
//		System.out.println(cList);
//		for (int i = 0; i < cList.size(); i++) {
//			Customer cc = cList.get(i);
//			System.out.println(cc.getCid() + " " + cc.getCname() + " "
//					+ cc.getOid());
//		}
//	}
////////////////////////////////////////////////////////////////////////////////////////

>3.调用被描述的sql映射语句的几种方式
////////////////////////////////////////////////////////////////////////////////////////
//>3.1//直接调用到语句
//<mapper namespace="com.zyb.persistence.CustomerMapper">
//<select id="list" resultType="ctm">select cid,cname,oid from customer</select>
//session.selectList("com.zyb.persistence.CustomerMapper.list");
//
//>3.2//先生成sql映射器通过sql映射器接口调用
//先生成映射器然后在调用映射器实现类中的方法
//CustomerMapper mapper = session.getMapper(CustomerMapper.class);
//mapper.list();// 和上面的效果一样
////////////////////////////////////////////////////////////////////////////////////////
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: