发表于: 2019-10-29 12:10:21

1 1029


今日想法:


1.在跟艾老师和张老师的沟通交流时发现严重问题。

1.1.漏写轮播图接口和接口实现。

1.2.漏写作品留言接口接口实现。

1.3.表设计有缺陷,达不到项目要求分级。

1.4.因表的缺陷,至分级查询也达不到项目要求。


2.立刻以最快的速度,重新思考,整新思路,大改特改。

2.1.重新设计表。(轮播图,留言,集合,工作室,成员,作品)

2.2.根据新设计的表,重新写项目表格类。

2.3.重新写持久层的接口和接口实现。

2.4.重新写业务层的接口和接口实现。

2.5.重新写控制层的接口实现。


今日作为:


我突然意识到一个事情,如果我把SQL语句简化,并且将大量且复杂的操作,全部通过业务层去实现就好。

那么,我用多张表也可以,因为我不把复杂的多表查询用SQL语句实现。

那么,我就可以解决单表数据复杂且混乱的问题。

并且多表的话,每张表的字段也控制在简单够用,便于维护管理,提升复用性。

也算是在单表和多表之间做了一个不错的这种,该照顾的都照顾到了。

经过分类和拆分,分出各个表,字段少,够用,易维护,易管理。


轮播图表:

id(编号/父类ID)url(轮播图跳转地址)img(轮播图地址)

留言表:

id(编号)ip(留言者IP)content(留言内容)pid(子类ID/关联某个作品)

第一层:

id(编号/父类ID)name(名称:工作室集/成员集/作品集)

第二层:

id(编号/父类ID)name(名称:工作室)introduction(介绍文案)img(工作室logo图地址)pid(子类ID)

第三层:

id(编号/父类ID)name(名称:成员)introduction(介绍文案)img(成员照片地址)pid(子类ID)

第四层:

id(编号/父类ID)name(名称:作品)introduction(介绍文案)img(作品图片地址)pid(子类ID)

表格总结:

banner = 轮播图表

message = 作品留言表

work = 第一层 分类表

workshop = 第二层 工作室表

worker = 第三层 成员表

works = 第四层 作品表


各类表格建成后,就开始重新写项目的各个接口,配置文件不用改,怕改了又跑不通。

轮播图的表格类

package com.clxs.pojo;

//轮播图表
public class Banner {

//    编号/父类ID
   private Integer id;

//    轮播图跳转地址
   private String url;

//    轮播图片地址
   private String img;

@Override
   public String toString() {
return "Banner{" +
"id=" + id +
", url='" + url + '\'' +
", img='" + img + '\'' +
'}';
}

public Integer getId() {
return id;
}

public void setId(Integer id) {
this.id = id;
}

public String getUrl() {
return url;
}

public void setUrl(String url) {
this.url = url;
}

public String getImg() {
return img;
}

public void setImg(String img) {
this.img = img;

   }


}

留言的表格类

package com.clxs.pojo;

//留言表
public class Message {

//    编号/父类ID
   private Integer id;

//    留言者IP
   private String ip;

//    留言内容
   private String content;

//    子类ID/关联某个作品
   private Integer pid;

@Override
   public String toString() {
return "Message{" +
"id=" + id +
", ip='" + ip + '\'' +
", content='" + content + '\'' +
", pid=" + pid +
'}';
}

public Integer getId() {
return id;
}

public void setId(Integer id) {
this.id = id;
}

public String getIp() {
return ip;
}

public void setIp(String ip) {
this.ip = ip;
}

public String getContent() {
return content;
}

public void setContent(String content) {
this.content = content;
}

public Integer getPid() {
return pid;
}

public void setPid(Integer pid) {
this.pid = pid;
}

}

合集的表格类

package com.clxs.pojo;

//合集表
public class Work {

//    编号/父类ID
   private Integer id;

//    名称
   private String name;

@Override
   public String toString() {
return "Work{" +
"id=" + id +
", name='" + name + '\'' +
'}';
}

public Integer getId() {
return id;
}

public void setId(Integer id) {
this.id = id;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

}

工作室的表格类

package com.clxs.pojo;

//工作室表
public class Workshop {

//    编号/父类ID
   private Integer id;

//    工作室名称
   private String name;

//    介绍文案
   private String introduction;

//    工作室logo图地址
   private String img;

//    子类ID
   private Integer pid;

@Override
   public String toString() {
return "Workshop{" +
"id=" + id +
", name='" + name + '\'' +
", introduction='" + introduction + '\'' +
", img='" + img + '\'' +
", pid=" + pid +
'}';
}

public Integer getId() {
return id;
}

public void setId(Integer id) {
this.id = id;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public String getIntroduction() {
return introduction;
}

public void setIntroduction(String introduction) {
this.introduction = introduction;
}

public String getImg() {
return img;
}

public void setImg(String img) {
this.img = img;
}

public Integer getPid() {
return pid;
}

public void setPid(Integer pid) {
this.pid = pid;
}

}

成员的表格类

package com.clxs.pojo;

//成员表
public class Worker {

//    编号/父类ID
   private Integer id;

//    成员名称
   private String name;

//    介绍文案
   private String introduction;

//    成员照片地址
   private String img;

//    子类ID
   private Integer pid;

@Override
   public String toString() {
return "Workshop{" +
"id=" + id +
", name='" + name + '\'' +
", introduction='" + introduction + '\'' +
", img='" + img + '\'' +
", pid=" + pid +
'}';
}

public Integer getId() {
return id;
}

public void setId(Integer id) {
this.id = id;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public String getIntroduction() {
return introduction;
}

public void setIntroduction(String introduction) {
this.introduction = introduction;
}

public String getImg() {
return img;
}

public void setImg(String img) {
this.img = img;
}

public Integer getPid() {
return pid;
}

public void setPid(Integer pid) {
this.pid = pid;
}

}

作品的表格类

package com.clxs.pojo;

//作品表
public class Works {

//    编号/父类ID
   private Integer id;

//    作品名称
   private String name;

//    介绍文案
   private String introduction;

//    作品图片地址
   private String img;

//    子类ID
   private Integer pid;

@Override
   public String toString() {
return "Workshop{" +
"id=" + id +
", name='" + name + '\'' +
", introduction='" + introduction + '\'' +
", img='" + img + '\'' +
", pid=" + pid +
'}';
}

public Integer getId() {
return id;
}

public void setId(Integer id) {
this.id = id;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public String getIntroduction() {
return introduction;
}

public void setIntroduction(String introduction) {
this.introduction = introduction;
}

public String getImg() {
return img;
}

public void setImg(String img) {
this.img = img;
}

public Integer getPid() {
return pid;
}

public void setPid(Integer pid) {
this.pid = pid;
}

}

轮播图的持久层接口

package com.clxs.dao;

import java.util.List;

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

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

}

作品留言的持久层接口

package com.clxs.dao;

import java.util.List;

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

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

}

第一层分类的持久层接口

package com.clxs.dao;

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

//    查询所有分类
   WorkDao SelectByAll ();

}

第二层工作室的持久层接口

package com.clxs.dao;

import java.util.List;

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

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

}

第三层成员的持久层接口

package com.clxs.dao;

import java.util.List;

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

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

}

第四层作品的持久层接口

package com.clxs.dao;

import java.util.List;

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

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

}

轮播图的业务层接口

package com.clxs.service;

import java.util.List;

//轮播图的业务层接口
public interface BannerService {

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

}

轮播图的业务层接口实现类

package com.clxs.service.impl;

import com.clxs.service.BannerService;

import java.util.List;

//轮播图的业务层接口实现类
public class BannerServiceimpl implements BannerService {

//查询所有的轮播图
   @Override
   public List<BannerService> SelectByAll() {
return null;
}

}

留言的业务层接口

package com.clxs.service;

import com.clxs.pojo.Message;

import java.util.List;

//留言的业务层接口
public interface MessageService {

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

}

留言的业务层接口实现类

package com.clxs.service.impl;

import com.clxs.pojo.Message;
import com.clxs.service.MessageService;

import java.util.List;

//留言的业务层接口实现类
public class MessageServiceimpl implements MessageService {

//    根据pid进行父子查询
   @Override
   public List<Message> SelectByPid() {
return null;
}

}

那么目前简单能做的,我都做完,接下来把核心的内容填充上,还有最重要的分级查询和全表模糊查询。

接下来的顺序就是:mapper→serviceimpl→service→controller


(难是难在调用多个表的多个接口,通过遍历查询在业务层接口和接口实现类中,整合到一起。实现最终的全表模糊查询和分级查询)


今日问题:


把多个表的多个接口,在业务层的接口实现中整合到一起,实现全表的模糊查询和分级查询。

(没事,很快就能解决,之前有过经验,知道怎么搞。)


明日想法:


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

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

2.1.实现全表的模糊查询。

2.2.实现全表的分级查询。

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

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

4.测试,改错,跑通。


返回列表 返回列表
评论

    分享到