搜索泥称 发表于 2016-11-28 09:17:02

MyBatis纯java查询和xml配置查询

  首先用纯java的方式写查询方法
  


public class Test1 {
//不使用xml文件创建SqlSessionFactory
public static void main(String[] args) {
//创建获取datasource的类
DataSource dataSource = PersonDataSourceFactory.getDataSource();
//对应XML Transaction
TransactionFactory transactionFactory = new JdbcTransactionFactory();
//对应xml Environment
Environment environment =
new Environment("development", transactionFactory, dataSource);
//对应xml Configuration
Configuration configuration = new Configuration(environment);
configuration.addMapper(PersonMapper.class);
//Reader reader=Resources.getResourceAsReader("configuration.xml");
//SqlSessionFactory sqlmapper=new SqlSessionFactoryBuilder().build(reader);
//XML创建sqlsessionfactory与java创建sqlsessionfactory对比
SqlSessionFactory sqlSessionFactory =new SqlSessionFactoryBuilder().build(configuration);
SqlSession session=sqlSessionFactory.openSession();
PersonMapper mapper=session.getMapper(PersonMapper.class);
Person person=mapper.selectperson(4);
System.out.println(person);
/*Person pm=(Person)session.selectOne("com.struts.test.PersonMapper.selectperson", 4);
System.out.println(pm);*/
}
}

  创建一个获取datasource的类
  


public class PersonDataSourceFactory {
public static DataSource getDataSource() {
com.mysql.jdbc.jdbc2.optional.MysqlDataSource ds= new com.mysql.jdbc.jdbc2.optional.MysqlDataSource();
ds.setServerName("localhost");
ds.setPortNumber(3306);
ds.setDatabaseName("web");
ds.setUser("root");
ds.setPassword("hong1990");
return ds;

}
}
  在来就是创建一个注解的查询类
  


public interface PersonMapper {
@Select("select *from person where id=#{id} ")
Person selectperson(int id);
}
   xml的方式主要就是配置和获取SqlSessionFactory的方法不同,参考其空间其他文章纯java方式文档上说只能用于简单查询。
页: [1]
查看完整版本: MyBatis纯java查询和xml配置查询