当前位置: 首页 > news >正文

怀远做网站成都seo优化

怀远做网站,成都seo优化,2021年手机能看的网站,建行官网官网网站吗简单讲述业务需求 业务需要根据不同的类型返回不同的用户列表,比如按角色查询用户列表、按机构查询用户列表,用户信息需要从数据库中查询,因为不同的类型查询的逻辑不相同,因此简单用工厂模式来设计一下; 首先新建一个…

简单讲述业务需求

业务需要根据不同的类型返回不同的用户列表,比如按角色查询用户列表、按机构查询用户列表,用户信息需要从数据库中查询,因为不同的类型查询的逻辑不相同,因此简单用工厂模式来设计一下;

首先新建一个返回用户列表的接口

/*** 定义一个返回的用户列表接口* @author sinder* @date 2024/5/7 22:15*/
public interface ReturnUser {List<String> getUserByType();
}

再分别新建返回机构用户列表和角色用户列表的实现类

这里简化一下,执行的sql操作是测试表的,返回的数据固定的;

/*** @author sinder* @date 2024/5/7 22:29*/
@Component
public class OrgUserImpl implements ReturnUser {@Autowiredprivate TbTestMapper tbTestMapper;/*** 返回按机构返回的用户* @return*/@Overridepublic List<String> getUserByType() {System.out.println("按机构返回用户列表");ArrayList<String> list = new ArrayList<>();list.add("org1");list.add("org2");list.add("org3");List<TbTest> tbTests = tbTestMapper.getList();System.out.println(tbTests);return list;}
}
/*** 用户工厂实现类* @author sinder* @date 2024/5/7 22:14*/
@Component
public class RoleUserImpl implements ReturnUser {@Autowiredprivate TbTestMapper tbTestMapper;/*** 按角色用户返回* @return*/@Overridepublic List<String> getUserByType() {System.out.println("按角色返回用户列表");ArrayList<String> list = new ArrayList<>();list.add("role1");list.add("role2");list.add("role3");List<TbTest> tbTests = tbTestMapper.getList();System.out.println(tbTests);return list;}
}

然后新建一个工厂类

/*** 返回用户工厂* @author sinder* @date 2024/5/7 22:31*/
@Component
public class ReturnUserFactory {@Autowiredprivate RoleUserImpl roleUser;@Autowiredprivate OrgUserImpl orgUser;public ReturnUser getUserList(String module) {switch (UserType.customValueOf(module)) {case ROLE:return roleUser;case ORG:return orgUser;default:return null;}}
}

这里用到了枚举,并重写了valueOf(),以下:

/*** @author sinder* @date 2024/5/7 22:33*/
public enum UserType {ORG("org"),ROLE("role");private final String name;UserType(String name) {this.name = name;}// 重写valueOf方法public static UserType customValueOf(String text) {for (UserType userType : UserType.values()) {if (userType.name.equalsIgnoreCase(text)) {return userType;}}throw new IllegalArgumentException("No constant with name " + text + " found");}}

测试

@Testpublic void testReturnUser() {List<String> orgList = returnUserFactory.getUserList("org").getUserByType();List<String> roleList = returnUserFactory.getUserList("role").getUserByType();System.out.println(orgList);System.out.println(roleList);}


简单应用一下设计模式,具体关于工厂模式和单例模式的介绍和使用可以看以下详细博客说明

(超详细)JAVA设计模式:单例模式和工厂模式


简单记录,有更好的想法可以评论区指导一波!!!

http://www.yidumall.com/news/39027.html

相关文章:

  • 网站开发运营费用短视频营销的发展趋势
  • 杜集网站建设今日早间新闻
  • 企业网站源码mba77cm什么网站都能进的浏览器
  • 潍坊做网站联系方式中国突然宣布大消息
  • 网站建设推广合同深圳推广公司推荐
  • 网站建设银川石家庄热搜
  • 西安政府网站建设公司友链交易平台
  • 网站后台建设教程软文营销范文
  • 网页搜索是什么意思seo是什么平台
  • 网页游戏网站有哪些百度登录页面
  • 三网合一企业网站网站推广和seo
  • 将网站发布到微信小程序怎么做百度指数查询移动版
  • 免费网站空间10gseo查询seo
  • 杭州做网站哪家好seo网站推广培训
  • 南宁物流公司网站建设百度浏览器官网入口
  • 秦皇岛网站推广联系电话站内搜索工具
  • 百度广州给做网站公司百度推广找谁
  • 专做网页的网站广州网络营销的推广
  • 政府网站开发招标seo引擎优化教程
  • 北京市城乡建设委员会门户网站发布推广信息的网站
  • 广州专业的网站建设百度指数官方版
  • 珠海网站建设厚瑜官网排名优化方案
  • 福建省建设厅网站 登录广州网站运营
  • 网站被黑应该怎么做企业网站优化技巧
  • 南京网站设南京网站设计计百度获客
  • 做外贸网站用什么空间网络营销策略都有哪些
  • 怎么快速做网站搜索关键词排名
  • 微信公众号登录wordpress网站seo线上培训多少钱
  • 网站建设维护一年费用网络营销竞价推广
  • 电子商务网站建设作文网络营销方法有几种类型