发表于: 2019-10-30 15:09:29

2 927


今日想法:


1.多个表的多个接口实现,写完。

1.1.每个表都挨个测一下。


2.将多个表的多个接口,在业务层接口实现中整合遍历查询。

2.1.实现全表的模糊查询。(业务层调用多个接口,用遍历或迭代实现)

2.2.实现全表的分级查询。(业务层调用多个接口,用遍历或迭代实现)

2.3.写出自己的整个思路和流程。

3.编写控制层的接口实现。

4.测试,改错,跑通。


今日作为:


重新修改了一下,各个表的各个接口和实现类。


轮播图的接口

package com.clxs.dao;

import com.clxs.pojo.Banner;

import java.util.List;

//轮播图持久层接口
public interface BannerDao {

//    查询所有轮播图
   List<Banner> SelectByAll();

}

轮播图的接口实现

<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >

<mapper namespace="com.clxs.dao.BannerDao">

<sql id="List">
id, url,img,pid
</sql>

<select id="SelectByAll" resultType="com.clxs.pojo.Banner">
select <include refid="List"/>
from banner
</select>

</mapper>

留言的接口

package com.clxs.dao;

import com.clxs.pojo.Message;

import java.util.List;

//作品留言持久层接口
public interface MessageDao {

//    根据pid来进行父子查询
   List<Message> SelectByPid(Integer pid);

}

留言的接口实现

<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >

<mapper namespace="com.clxs.dao.MessageDao">

<sql id="List">
id,ip,content,pid
</sql>

<select id="SelectByPid" resultType="com.clxs.pojo.Message">
select <include refid="List"/>
from message
where pid =#{pid}
</select>

</mapper>

第一层的接口

package com.clxs.dao;

import com.clxs.pojo.Work;

import java.util.List;

//第一层分类的持久层接口
public interface WorkDao {

//    查询所有分类
   List<Work> SelectByAll ();

}

第一层的接口实现

<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >

<mapper namespace="com.clxs.dao.WorkDao">

<sql id="List" >
id,name
</sql>

<select id="SelectByAll" resultType="com.clxs.pojo.Work">
select <include refid="List"/>
from work
</select>

</mapper>

第二层的接口

package com.clxs.dao;

import com.clxs.pojo.Workshop;

import java.util.List;

//第二层工作室的持久层接口
public interface WorkshopDao {

//    根据pid来进行父子查询
   List<Workshop> SelectByPid(Integer pid);

}

第二层的接口实现

<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >

<mapper namespace="com.clxs.dao.WorkshopDao">

<sql id="List" >
id,name,introduction,img,pid
</sql>

<select id="SelectByPid" resultType="com.clxs.pojo.Workshop">
select <include refid="List"/>
from workshop
where pid =#{pid}
</select>

</mapper>

第三层的接口

package com.clxs.dao;

import com.clxs.pojo.Worker;

import java.util.List;

//第三层成员的持久层接口
public interface WorkerDao {

//    根据pid来进行父子查询
   List<Worker> SelectByPid(Integer pid);

}

第三层的接口实现

<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >

<mapper namespace="com.clxs.dao.WorkerDao">

<sql id="List" >
id,name,introduction,img,pid
</sql>

<select id="SelectByPid" resultType="com.clxs.pojo.Worker">
select <include refid="List"/>
from worker
where pid =#{pid}
</select>


</mapper>

第四层的接口

package com.clxs.dao;

import com.clxs.pojo.Works;

import java.util.List;

//第四层作品的持久层接口
public interface WorksDao {

//    根据pid来进行父子查询
   List<Works> SelectByPid(Integer pid);

}

第四层的接口实现

<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >

<mapper namespace="com.clxs.dao.WorksDao">

<sql id="List" >
id,name,introduction,img,pid
</sql>

<select id="SelectByPid" resultType="com.clxs.pojo.Works">
select <include refid="List"/>
from works
where pid =#{pid}
</select>

</mapper>


今日问题:


1.暂时还没想到留言表中,如何获取到该留言者的IP地址。

2.多表的模糊查询和分级查询,这“两个大接口”到使用for循环或者迭代器,进行层层遍历。我还在看这部分的知识,不过已经有了眉目了。

3.因为“两个大接口”会层层遍历不同的list结果集,我准备使用map来进行保存,因为map是键值对的结构,可以存放多种不同类型的不同数据。但如果使用了map,我的sql语句或者配置文件,或者哪些地方需要改动呢?

4.我的持久层接口又和mapper无法对应上了。(还在找原因)


明日想法:


1.把每个表的每个接口都进行测试。

2.解决留言表获得留言者IP的问题。

3.解决“两个大接口”里调用多个表的小接口,用循环的方式层层遍历。

4.测试,改错,跑通,贴结果。


返回列表 返回列表
评论

    分享到