1.sqlMapConfig的propeties屬性(很雞肋)-------指明外部屬性
propeties定義的一些屬性,下面都可以直接用,用於賦值等,適合相同值的修改
或者讀入外部文件
2.sqlMapConfig的typealiases屬性-------起別名
注意:
3.sqlMapConfig的mapper屬性
4.sqlMapConfig的resuletMap結果集屬性—解決返回值不對稱問題(例如數據庫表中屬性值爲name,而javabean中爲username)
column不一定爲列名,若sql語句中有別名出現則與別名一致
5.多個參數查詢得出list型結果封裝javabean傳過去
5.構建複雜查詢對象可以獲得一級屬性(例如查詢category.cname和product.cichu條件限制的產品的信息)
/**
* Unit test for simple App.
*/
public class App1Test {
private SqlSessionFactory sqlSessionFactory=null;
@Before
public void init(){
SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
sqlSessionFactory = builder.build(App1Test.class.getClassLoader().getResourceAsStream("SqlMapConfig.xml"));
}
@Test
public void testFindById1() {
SqlSession sqlSession = sqlSessionFactory.openSession();
ProductDao productDao = sqlSession.getMapper(ProductDao.class);
Product product = new Product();
product.setCicun(6);
product.setPrice(3980.99);
List<Product> products = productDao.findByCondition(product);
System.out.println(products);
}
@Test
public void testFindById2() {
SqlSession sqlSession = sqlSessionFactory.openSession();
ProductDao productDao = sqlSession.getMapper(ProductDao.class);
ProductQuery productQuery = new ProductQuery();
Product product = new Product();
product.setCicun(6);
Category category = new Category();
category.setCname("手機數碼");
productQuery.setCategory(category);
productQuery.setProduct(product);
List<Product> products = productDao.findByCondition2(productQuery);
System.out.println(products);
}
}