package david.mybatis.demo;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import org.apache.ibatis.session.SqlSession;
import david.mybatis.model.BasicQueryArgs;
import david.mybatis.model.CRUD_Enum;
import david.mybatis.model.Channel;
import david.mybatis.model.PagenateArgs;
import david.mybatis.model.Visitor;
import david.mybatis.model.VisitorWithRn;
import david.mybatis.model.Website;
public class DemoRun {
/*
* 动态查询foreach实例
*/
public static void getListForeachDemo(List<Integer> ids) {
SqlSession session = MybatisUtils.getSqlSession();
IVisitorOperation vOperation = session.getMapper(IVisitorOperation.class);
List<Visitor> ls = vOperation.getListForeachDemo(ids);
for (Visitor visitor : ls) {
System.out.println(visitor);
}
}
/*
* 动态查询where if实例
*/
public static void getListWhereCondition(int id, String name, Date createTime) {
name = name == "" ? null : name;
SqlSession session = MybatisUtils.getSqlSession();
BasicQueryArgs args = new BasicQueryArgs(id, name, createTime);
IVisitorOperation vOperation = session.getMapper(IVisitorOperation.class);
List<Visitor> ls = vOperation.getListWhereDemo(args);
if (ls.size() == 0)
System.out.println("查无匹配!");
else {
for (Visitor visitor : ls) {
System.out.println(visitor);
}
}
}
/*
* 动态查询choose when实例
*/
public static void getListChooseWhenDemo(int id, String name, Date createTime) {
name = name == "" ? null : name;
SqlSession session = MybatisUtils.getSqlSession();
BasicQueryArgs args = new BasicQueryArgs(id, name, createTime);
IVisitorOperation vOperation = session.getMapper(IVisitorOperation.class);
List<Visitor> ls = vOperation.getListChooseWhenDemo(args);
if (ls.size() == 0)
System.out.println("查无匹配!");
else {
for (Visitor visitor : ls) {
System.out.println(visitor);
}
}
}
public static void testBasicQuery(int id) {
SqlSession session = MybatisUtils.getSqlSession();
try {
/*
* 此处的david.mybatis.demo.IVisitorOperation.
* basicQuery必须和下图中配置里面的namespace对应
*/
Visitor visitor = (Visitor) session.selectOne("david.mybatis.demo.IVisitorOperation.basicQuery", id);
MybatisUtils.closeSession(session);
System.out.println(visitor);
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
public static void testBasicQueryByInterfaceWay(int id) {
SqlSession session = MybatisUtils.getSqlSession();
try {
IVisitorOperation vOperation = session.getMapper(IVisitorOperation.class);
Visitor visitor = vOperation.basicQuery(id);
MybatisUtils.closeSession(session);
System.out.println(visitor);
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
/*
* 批量添加访问者记录
*/
public static void addVisitors() {
SqlSession session = MybatisUtils.getSqlSession();
List<Visitor> visitors = Arrays.asList(new Visitor[] { new Visitor("mongodb", "mongodb@gmail.com"),
new Visitor("redis", "redis@gmail.com"), new Visitor("memcached", "memcached@gmail.com"),
new Visitor("CouchDB", "CouchDB@gmail.com"), new Visitor("HBase", "HBase@gmail.com"),
new Visitor("Bigtable", "Bigtable@gmail.com"), new Visitor("Hive", "Hive@gmail.com"),
new Visitor("MapReduce", "MapReduce@gmail.com"), });
for (Visitor visitor : visitors) {
addVisitor(visitor, session);
}
MybatisUtils.closeSession(session);
MybatisUtils.showMessages(CRUD_Enum.List, visitors.size());
}
/*
* 添加访问者信息
*/
@SuppressWarnings("unused")
private static void addVisitor(Visitor visitor, SqlSession session) {
if (session == null)
session = MybatisUtils.getSqlSession();
IVisitorOperation vOperation = session.getMapper(IVisitorOperation.class);
int recordCount = vOperation.add(visitor);
session.commit();
if (session == null)
MybatisUtils.closeSession(session);
MybatisUtils.showMessages(CRUD_Enum.Add, recordCount);
}
/*
* 重载添加访问者
*/
public static void addVisitor(Visitor visitor) {
addVisitor(visitor, null);
}
/*
* 删除访问者信息
*/
public static void deleteVisitor(int id) {
SqlSession session = MybatisUtils.getSqlSession();
IVisitorOperation vOperation = session.getMapper(IVisitorOperation.class);
int recordCount = vOperation.delete(id);
session.commit();
MybatisUtils.closeSession(session);
MybatisUtils.showMessages(CRUD_Enum.Delete, recordCount);
}
/*
* 更新访问者信息
*/
public static void updateVisitor(int id) {
SqlSession session = MybatisUtils.getSqlSession();
IVisitorOperation vOperation = session.getMapper(IVisitorOperation.class);
Visitor visitor = vOperation.query(id);
System.out.println("原始对象:" + visitor);
String name = visitor.getName();
if (name.contains("updated")) {
visitor.setName(name.substring(0, name.indexOf("updated")));
} else {
visitor.setName(name + "updated");
}
int recordCount = vOperation.update(visitor);
session.commit();
MybatisUtils.closeSession(session);
MybatisUtils.showMessages(CRUD_Enum.Update, recordCount);
System.out.println("更新后对象:" + visitor);
}
/*
* 查询访问者信息
*/
public static void queryVisitor(int id) {
SqlSession session = MybatisUtils.getSqlSession();
IVisitorOperation vOperation = session.getMapper(IVisitorOperation.class);
Visitor visitor = vOperation.query(id);
MybatisUtils.closeSession(session);
MybatisUtils.showMessages(CRUD_Enum.Query, 1);
System.out.println(visitor);
}
/*
* 查询访问者列表
*/
public static void queryVisitorList() {
SqlSession session = MybatisUtils.getSqlSession();
IVisitorOperation vOperation = session.getMapper(IVisitorOperation.class);
List<Visitor> visitors = vOperation.getList();
for (Visitor visitor : visitors) {
System.out.println(visitor);
}
MybatisUtils.closeSession(session);
MybatisUtils.showMessages(CRUD_Enum.List, visitors.size());
}
/*
* 分页参数
*/
public static void queryVisitorListWithPagenate(int pageIndex, int pageSize, String orderField, String orderDire) {
PagenateArgs args = new PagenateArgs(pageIndex, pageSize, orderField, orderDire);
SqlSession session = MybatisUtils.getSqlSession();
IVisitorOperation vOperation = session.getMapper(IVisitorOperation.class);
List<Visitor> visitors = vOperation.getListByPagenate(args);
for (Visitor visitor : visitors) {
System.out.println(visitor);
}
MybatisUtils.closeSession(session);
MybatisUtils.showMessages(CRUD_Enum.List, visitors.size());
}
/*
* 带rownum的显示的分页
*/
public static void queryVisitorListWithRnPagenate(int pageIndex, int pageSize, String orderField, String orderDire) {
PagenateArgs args = new PagenateArgs(pageIndex, pageSize, orderField, orderDire);
SqlSession session = MybatisUtils.getSqlSession();
IVisitorOperation vOperation = session.getMapper(IVisitorOperation.class);
List<VisitorWithRn> visitors = vOperation.getListByPagenateWithRn(args);
for (VisitorWithRn visitor : visitors) {
System.out.println(visitor);
}
MybatisUtils.closeSession(session);
MybatisUtils.showMessages(CRUD_Enum.List, visitors.size());
}
/*
* 添加Website
*/
@SuppressWarnings("unused")
private static void addWebsite(Website site, SqlSession session) {
if (session == null)
session = MybatisUtils.getSqlSession();
IWebsiteOperation wOperation = session.getMapper(IWebsiteOperation.class);
int count = wOperation.add(site);
session.commit();
if (session == null)
MybatisUtils.closeSession(session);
MybatisUtils.showMessages(CRUD_Enum.Add, count);
}
public static void addWebsite(Website site) {
addWebsite(site, null);
}
/*
* 批量添加网站
*/
public static void addWebsites() {
SqlSession s
没有合适的资源?快使用搜索试试~ 我知道了~
Mybatis系列学习源码
共380个文件
class:14个
java:14个
xml:8个
5星 · 超过95%的资源 需积分: 10 257 下载量 115 浏览量
2013-12-31
13:45:02
上传
评论 3
收藏 6.5MB ZIP 举报
温馨提示
Mybatis系列学习源码 详细学习系列请参考http://www.cnblogs.com/daviddai/p/3485574.html
资源推荐
资源详情
资源评论
收起资源包目录
Mybatis系列学习源码 (380个子文件)
013f87b50f8c3943550a1c86bbd411448b3069 76B
01ac5638ba12c6858226229a9c2fd8711b0680 202B
02be118703ffa17efc59df92162a0be363d6b2 109B
02d1e7b9c9b955029abd3d1882e8c85beede6d 149B
0316de1d5b59d952303f2b1d6f961cdf5ca2b8 5KB
0340c385fd13d9d2155d6e7240292801e52836 464B
052d8d988409c4d4b9a05e2827fe9c892d6ab8 49B
057fc2c48ee2d61eba3214406bcf10431171f3 202B
060c92d0892bbaf652b5ca48a8b52efc005cd7 49B
06c655ae8eabec9c899d1843e8c02ce7731d47 794B
06d9dc3888e4903e56d85693aaea795842231e 447B
07f9c18fd571e8c51f848d067383c84e177333 512B
096743cc413e3646bedff80ac2b6242d7e7fc1 108B
097f8c77e1c59482a43cadc0642a0a0513d982 308B
0980f3249105dcc39036e3c7fbb18875da547c 231B
0a16e628648116435bc47448f2024e3f3adfd0 558B
0a37f5e4240d3383c70ef6c60e1b384ab39bcd 577B
0b1181daeacf60b41cd4e1f2d2ddf3a126ecff 568B
0b781123c74e48ab586dde21435966a617895a 76B
0c282c9f118c18529ee63e11c3e85c6c20173f 229B
0c9df0cd2fec01aec442acb60ad8c21634f7e3 75B
0cbe5cc1565e7b9c5c8faac6cd1afe872c56e9 55B
0d97ba4c3786da45f360b033e20278b963705d 155B
0e30d9f4bfa4110cea5b2befa9e83a910ed544 49B
10088c478b0176732cfcb4c9867789f7039194 49B
10bdc95a8a2fa993bb9199800bf334a14fc6b7 107B
112b19c1697bfedb8b5be5488e295241ded695 202B
11f4b9e986a7019e851cfc498a7091e60f82fb 126B
14f95fb8afbc416be4057e119587ad5b2a9bc5 68B
1585300709e177da0f6e85737d3cec4e6b893f 550B
16344efa885487a1b34097f3a2d792d768fa67 75B
1ab731247d825d308707123ce5cf51c7bf09fa 915B
1abdfa67b4623a6bd68859df716e2b9d7fe2ac 149B
1af6693fe3cba4fca3a245c4665f8065e6449a 812B
1b3bbe4702e87d5288576706d71339d0886585 921B
1b6aba09468c356ad1d0f8c5c1d75fb225bf7d 2KB
1d18d6423090fc860b0f08112a2de20da14931 108B
1e2029342be3488a498b707e672269d4f7b5b3 328B
1e5675e48a9e66fbd868f5f44d2db9ec215dbf 108B
1e9339bf48951da89d117a1c9a75af3b216aa0 799KB
1f2c7496143c3efa3b1d8a8c6bc0cce64fc17f 50B
2057ab9207c0283af739d2cbaa170a6810a24a 785B
218e87104e82fc4da2832968d842ef50a4d174 87B
21de561ccdeaf1331a3ef61589a0eacb4e7331 584B
22308399ccb7648d6572278bf63958d6847e67 232B
24c9cb9dc7db721093203f3cecbf4d1a36f137 586B
268d769e1cc40d897365a5b6a91e76be443006 126B
269816573939a2339c70bfc80d661734118b9d 5KB
26f863492bf51e30f8ef50fa5e1b6391ca0787 75B
2b1c75f15d9d404d6f840ddcd0aee2eb1d8caf 529B
2b6adc7d9035b7533725a7ca1a154c1cda7daf 226B
2be462e0f4014800fe3e83b9d3a133e46e9c4a 290B
2d90b456cebc70e8dc8ac98b08346244e93944 49B
2dbafc2ad8a90021a72a31a5adcfebde633690 301B
2f4d7bc620431a932171d40f22d4850a9e6fb7 232B
2f7452100a7fab32985314f3158627fe480c23 240B
2ff32fff03ab4e5d5e89dd69c5ce4764aef055 68B
30121ad5c185917ed99bf6454b41391cf65b3d 807B
30282adae700fa6920e2d658dc8c7a9328b4d3 75B
30af8378062ab90b0f17819b0e16295486b7c4 644B
3126bb9a88eb7da8a5ebf0b327ea301d6a9fd6 774B
31c4c88bf7112d8b124673cd62aa97b021865a 229B
32111aafb11dd64b0b2f7b5f642f1e8fddc2e2 75B
32272bd8e8e0de2dec75d243c18d75516f3ab9 783B
329288e800922139ff38cf8c40f5bf9139ed6a 49B
3302461c2ecfe8830f325a9f86821bee81ed33 117B
337f1186bd99adff8956ebf6e397b63ed1a785 5KB
361bfd25522a12286e1b765da0b0dc478f885b 110B
362b08275ab11919c19d794e6a213ec298238c 1KB
37da6f14bc3944b553e8ebb6b54697275b630b 2KB
38196e0e32c051a28dee135374b214e5cebd26 126B
388f6893176a10a8639ecdb4b94fbeb58639b4 464B
38a15b43da1daa9e867bcba99e98711b182ac1 160B
38bb10c28a3d3ea09bb532997892c104dbd5e9 68B
3b21ae58691e0c9c14efae3b71d8dd372ceddc 420B
3b514c041b07715e723524e5c0f4cd958e3e53 1KB
3be3620a10b60021b82a683ba8c9539e44fed0 202B
3be5bbea9532980e524d99860059b863ef531c 39B
3c34faa233534fe081e2f506ecc4a6169be834 387B
3cb0b7e9ed3eb615f750ae8c10cd0d5449be89 209B
3cc48b060749bf435d2c1e1983046934e691e0 202B
3d081e0bfd4d3bc02f175793ab1af22b3efb03 108B
3d6d34477a50e55be5f71f69583622bac4df0c 148B
3e5ab07938ba18325a4a3a6a0e4ca82922ce23 226B
3e7aa4e9358c66f4be6d852662e2cb975f0593 461B
3eb914816a427bc63e3a96089fb8cbb7ff65d0 49B
3f061abac7ab7a050dac0098238bbea7dded03 75B
415c0d22cf3a2041ca5bc4d775a9fba21304ec 2KB
41b206bad76b0df193b8968f803fffb7ecb74d 520B
42e7540f4ad9ec0017b46cb39aee6816999798 107B
43702b94530ce455b3722ce1e65b527addff8b 75B
439c5cd01729e6d20d2b763d9b073d26d66ea7 202B
44e6e52ad56ada6b4bc507ca41351f32ddbc00 423B
460f6637471303daa4a0127a5d5d7a3b9ee584 5KB
465047fd79324fe2bade0e2395e4788f6ef171 160B
466f0420133a7e684cfccd5ffaa0f9a00f8eb3 307B
47163df61119f61ae610517ee15ab62fb7084e 254B
4744ec0705ea58a37470f7269a0734a927a3e8 68B
48411d860689cbd73daa30301ea7b61e41725f 88B
48543669b0b4fc3973300bf651952d3a4ba35e 62B
共 380 条
- 1
- 2
- 3
- 4
davidcoffee
- 粉丝: 23
- 资源: 11
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
- 3
- 4
- 5
- 6
前往页