mybatis学习笔记.docx
- 文档编号:9175303
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:22
- 大小:19.52KB
mybatis学习笔记.docx
《mybatis学习笔记.docx》由会员分享,可在线阅读,更多相关《mybatis学习笔记.docx(22页珍藏版)》请在冰豆网上搜索。
mybatis学习笔记
第十六章回顾SQL99中的连接查询
1)内连接
2)外连接
3)自连接
第十七章回顾hibernate多表开发
1)一对一
2)一对多
3)多对多
第十八章mybatis一对一映射【学生与身份证】
1)参见<<一对一图示.JPG>>
2)创建和
droptablestudents;
droptablecards;
createtablecards(
idint(5)primarykey,
numvarchar(20)
);
createtablestudents(
idint(5)primarykey,
namevarchar(10),
cidint(5),
constraintcid_fkforeignkey(cid)referencescards(id)
);
insertintocards(id,num)values(1,'111');
insertintostudents(id,name,cid)values(1,'哈哈',1);
3)创建和
publicclassCard{
privateIntegerid;
privateStringnum;
privateStudentstudent;
publicCard(){}
publicIntegergetId(){
returnid;
}
publicvoidsetId(Integerid){
=id;
}
publicStringgetNum(){
returnnum;
}
publicvoidsetNum(Stringnum){
=num;
}
publicStudentgetStudent(){
returnstudent;
}
publicvoidsetStudent(Studentstudent){
=student;
}
}
publicclassStudent{
privateIntegerid;
privateStringname;
privateCardcard;
publicStudent(){}
publicIntegergetId(){
returnid;
}
publicvoidsetId(Integerid){
=id;
}
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringname){
=name;
}
publicCardgetCard(){
returncard;
}
publicvoidsetCard(Cardcard){
=card;
}
}
4)创建和
DOCTYPEmapperPUBLIC"-
etNum());
}
}
第十九章mybatis一对多映射【班级与学生】
1)参见<<一对多图示.JPG>>
2)创建和
droptablestudents;
droptablegrades;
createtablegrades(
gidint(5)primarykey,
gnamevarchar(10)
);
createtablestudents(
sidint(5)primarykey,
snamevarchar(10),
sgidint(5),
constraintsgid_fkforeignkey(sgid)referencesgrades(gid)
);
insertintogrades(gid,gname)values(1,'java');
insertintostudents(sid,sname,sgid)values(1,'哈哈',1);
insertintostudents(sid,sname,sgid)values(2,'呵呵',1);
3)创建和
/**
*班级(单方)
*@authorAdminTC
*/
publicclassGrade{
privateIntegerid;
privateStringname;
privateList
publicGrade(){}
publicIntegergetId(){
returnid;
}
publicvoidsetId(Integerid){
=id;
}
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringname){
=name;
}
publicList
returnstudentList;
}
publicvoidsetStudentList(List
=studentList;
}
}
/**
*学生(多方)
*@authorAdminTC
*/
publicclassStudent{
privateIntegerid;
privateStringname;
privateGradegrade;
publicStudent(){}
publicIntegergetId(){
returnid;
}
publicvoidsetId(Integerid){
=id;
}
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringname){
=name;
}
publicGradegetGrade(){
returngrade;
}
publicvoidsetGrade(Gradegrade){
=grade;
}
}
4)创建和
DOCTYPEmapperPUBLIC"-
etId()+":
"+().getName());
}
Gradegrade=("哈哈");
":
"+());
}
}
第二十章mybatis多对多映射【学生与课程】
1)参见<<多对多图示.JPG>>
2)创建和和
droptablemiddles;
droptablestudents;
droptablecourses;
createtablestudents(
sidint(5)primarykey,
snamevarchar(10)
);
createtablecourses(
cidint(5)primarykey,
cnamevarchar(10)
);
createtablemiddles(
sidint(5),
cidint(5),
primarykey(sid,cid)
);
insertintostudents(sid,sname)values(1,'哈哈');
insertintostudents(sid,sname)values(2,'呵呵');
insertintocourses(cid,cname)values(1,'java');
insertintocourses(cid,cname)values(2,'net');
insertintomiddles(sid,cid)values(1,1);
insertintomiddles(sid,cid)values(1,2);
insertintomiddles(sid,cid)values(2,1);
insertintomiddles(sid,cid)values(2,2);
select*fromstudents;
select*fromcourses;
select*frommiddles;
3)创建和
/**
*学生(多方)
*@authorAdminTC
*/
publicclassStudent{
privateIntegerid;
privateStringname;
privateList
publicStudent(){}
publicIntegergetId(){
returnid;
}
publicvoidsetId(Integerid){
=id;
}
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringname){
=name;
}
publicList
returncourseList;
}
publicvoidsetCourseList(List
=courseList;
}
}
/**
*课程(多方)
*@authorAdminTC
*/
publicclassCourse{
privateIntegerid;
privateStringname;
privateList
publicCourse(){}
publicIntegergetId(){
returnid;
}
publicvoidsetId(Integerid){
=id;
}
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringname){
=name;
}
publicList
returnstudentList;
}
publicvoidsetStudentList(List
=studentList;
}
}
4)创建和
DOCTYPEmapperPUBLIC"-///DTDMapper/EN"
"dtd/">
select,
fromstudentss,middlesm,coursesc
where=
and=
and=#{name}
DOCTYPEmapperPUBLIC"-///DTDMapper/EN"
"dtd/">
select,
fromstudentss,middlesm,coursesc
where=
and=
and=#{name}
5)创建和和
publicclassStudentCourseDao{
/**
*查询哈哈选学的【课程】
*/
publicList
SqlSessionsqlSession=null;
try{
sqlSession=();
return("",name);
}catch(Exceptione){
();
throwe;
}finally{
();
}
}
/**
*查询java课程有哪些【学生】
*/
publicList
SqlSessionsqlSession=null;
try{
sqlSession=();
return("",name);
}catch(Exceptione){
();
throwe;
}finally{
();
}
}
publicstaticvoidmain(String[]args)throwsException{
StudentCourseDaodao=newStudentCourseDao();
//List
//for(Coursec:
courseList){
//":
"+());
//}
List
for(Students:
studentList){
":
"+());
}
}
}
第二十一章spring+mybatis+mysql/oracle开发
1)创建一个spring-mybatis-mysql这么一个javaweb或java工程
2)导入spring-ioc,spring-aop,spring-transaction,mybatis,c3p0,mysql/oracle相关的jar包和spring整合mybatis的jar包
3)创建
--mysql
createtablestudents(
sidint(5)primarykey,
snamevarchar(10),
ssaldouble(8,2)
);
4)创建
/**
*学生
*@authorAdminTC
*/
publicclassStudent{
privateIntegerid;//编号
privateStringname;//姓名
privateDoublesal;//薪水
publicStudent(){}
publicStudent(Integerid,Stringname,Doublesal){
=id;
=name;
=sal;
}
publicIntegergetId(){
returnid;
}
publicvoidsetId(Integerid){
=id;
}
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringname){
=name;
}
publicDoublegetSal(){
returnsal;
}
publicvoidsetSal(Doublesal){
=sal;
}
}
5)创建
DOCTYPEmapperPUBLIC"-///DTDMapper/EN"
"dtd/">
insertintostudents(sid,sname,ssal)values(#{id},#{name},#{sal})
6)创建
publicclassStudentDao{
privateSqlSessionFactorysqlSessionFactory;
publicvoidsetSqlSessionFactory(SqlSessionFactorysqlSessionFactory){
=sqlSessionFactory;
}
publicvoidinsert(Studentstudent){
SqlSessionsqlSession=();
("",student);
//inti=10/0;
}
publicstaticvoidmain(String[]args){
ApplicationContextac=newClassPathXmlApplicationContext(newString[]{""});
StudentDaostudentDao=(StudentDao)("studentDaoID");
(newStudent(1,"哈哈",7000D));
}
}
7)在src目录下创建
DOCTYPEconfigurationPUBLIC"-///DTDConfig/EN"
"dtd/">
8)在src目录下创建
xmlns="" xmlns: xsi="" xmlns: context="" xmlns: aop="" xmlns: tx="" xmlns: mvc="" xsi: schemaLocation=" "> --配置C3P0连接池(即管理数据库连接)--> "/> --配置SqlSessionFactoryBean(即替代MyBatisUtil工具类的作用)--> "/> --配置事务管理器(即使用JDBC事务管理器)--> --配置事务通知(即哪些方法需要事务)--> adviceid="tx"transaction-manager="dataSourceTransactionManagerID"> attributes> methodname="*"propagation="REQUIRED"/> attributes> advice> --配置事务切面(即哪些包中的类需要事务通知)--> config> pointcutid="pointcut"expression="execution(*"/> advisora
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- mybatis 学习 笔记
![提示](https://static.bdocx.com/images/bang_tan.gif)