mybatis的一些优化
一. 可以把数据源的信息抽取到properties文件中
创建一个属性文件内容如下
再配置文件中引入属性文件
**二、**实体的属性和数据库表的字段不一致
(1)为查询的结果起别名-----与属性名一致。
(2)使用resultMap来创建属性与字段的映射关系
三、mybatis联表查询
多对一``
(1)表与表之间的关系------->外键【逻辑外键】
```java
CREATE TABLE teacher(
t_id INT PRIMARY KEY AUTO_INCREMENT,
t_name VARCHAR(20)
);
//teacher class 一对多
CREATE TABLE class(
c_id INT PRIMARY KEY AUTO_INCREMENT,
c_name VARCHAR(20),
teacher_id INT -- 外键
);
ALTER TABLE class ADD CONSTRAINT fk_teacher_id FOREIGN KEY (teacher_id)
REFERENCES teacher(t_id);
INSERT INTO teacher(t_name) VALUES('LS1');
INSERT INTO teacher(t_name) VALUES('LS2');
INSERT INTO class(c_name, teacher_id) VALUES('bj_a', 1);
INSERT INTO class(c_name, teacher_id) VALUES('bj_b', 2);
(2)java实体类如何维持这种关系。
Teacher {tid, tname}
Class {cid,cname,Teacher teacher}---->class 只包含老师id号。 多对一 可以在多的实体中添加一的实体类对象。
(1)要求根据班级号 查询班级信息并带上老师的信息。
(2) 创建对应的实体类
(3) 映射文件
(4)测试
xml 碰到特殊字符如何处理:
(1)可以使用转移字符;
(2)使用CDATA