Spring中添加新的配置表,并对新的配置表进行处理
实习过程中boss交代的任务(以下出现的代码以及数据只给出小部分,提供一个思路)
目的:Spring中添加新的配置表,并对新的配置表进行处理;替换的新的配置表要友好,同时保证替换前后功能不能发生变化。
需要处理的配置表数据:
很明显,原配置表中的数据都是以Json的格式给出的,那么很容易在处理的过程中出现错误,现在需要将配置表换成一个友好的格式,同时保证使用Postman调试接口时,得到的响应不变。
第一步:将原配置表数据生成为一个友好的格式,我采取的格式如下:
这种方式能够通过id来合理的取到name和isNotEdit。格式转换后需要添加配置文件到配置文件list中:
其中shop_services.properties配置文件是我添加的。
第二步:在配置文件中添加<bean>方法
第三步:添加处理配置文件的类以及类的成员方法
其中最关键的部分就是try块中的处理函数,最终返回的list为ArrayList<String>类型
第四步:重写接口中的方法,从而来对配置信息进行处理
第五步:对接口进行调试
接口信息:
DataResult<GetServiceListRestResponse> getServiceList(GetServiceListRestRequest restRequest);
调试结果:接口以Json格式进行输出
总结:
(一)基本功能完成了,其中缺点有,没有进行异常处理的抛出;
(二)对于第三步可以进行优化,不需要返回ArrayList<String>,而直接以一个对象进行返回;
(三)配置文件可以进行优化,因为当增加一项时,需要修改service_json_id以及name与isNotEdit;
优化思路:https://www.cnblogs.com/jayinnn/p/9561121.html
Spring中添加新的配置表,并对新的配置表进行处理的更多相关文章
- spring中添加google的guava缓存(demo)
1.pom文件中配置 <dependencies> <dependency> <groupId>org.springframework</groupId> ...
- spring中添加redis缓存
1.单机版的添加 spring里面配置 <bean id="redisClient" class="redis.clients.jedis.JedisPool&qu ...
- Spring中多个工程停多个资源文件ignoreUnresolvablePlaceholders配置
http://www.imooo.com/ruanjiangongcheng/software-architecture-design/667686.htm
- spring 手动添加 bean 到容器,例子 :多数据源配置
package com.thunisoft.spsjsb.config.db.decrypt; import com.alibaba.druid.pool.DruidDataSource; impor ...
- 配置python+mod_wsgi+apache 时 在浏览器中访问服务器时报错:Invalid HTTP_HOST header: 'XXXXX'. You may need to add u'XXXXX' to ALLOWED_HOSTS,在setting.py中添加‘*”无效的原因
配置python+mod_wsgi+apache 时 在浏览器中访问服务器时报错:Invalid HTTP_HOST header: 'XXXXX'. You may need to add u'XX ...
- spring中@param和mybatis中@param使用差别
spring中@param /** * 查询指定用户和企业关联有没有配置角色 * @param businessId memberId * @return */ int selectRoleCount ...
- spring中@param和mybatis中@param使用区别
spring中@param /** * 查询指定用户和企业关联有没有配置角色 * @param businessId memberId * @return */ int selectRoleCount ...
- Spring框架学习(10)Spring中如何使用事务?
内容源自:Spring中如何使用事务? 一.为什么要使用事务? 如果我们一个业务逻辑只执行一次sql,是不需要使用事务的.但如果要执行多条sql语句才能完成一个业务逻辑的话,这个时候就要使用事务了. ...
- Spring中AOP相关源码解析
前言 在Spring中AOP是我们使用的非常频繁的一个特性.通过AOP我们可以补足一些面向对象编程中不足或难以实现的部分. AOP 前置理论 首先在学习源码之前我们需要了解关于AOP的相关概念如切点切 ...
随机推荐
- 题解——loj6278 数列分块入门2 (分块)
查询小于k的值 注意lower_bound一定要减去查找的起始位置得到正确的位置 调了快两天 淦 #include <cstdio> #include <algorithm> ...
- 【论文笔记】Zero-shot Recognition via semantic embeddings and knowledege graphs
Zero-shot Recognition via semantic embeddings and knowledege graphs 2018-03-31 15:38:39 [Abstrac ...
- (转) GAN论文整理
本文转自:http://www.jianshu.com/p/2acb804dd811 GAN论文整理 作者 FinlayLiu 已关注 2016.11.09 13:21 字数 1551 阅读 1263 ...
- GTK 菜单的创建详解
1 定义 1.1 菜单由菜单条和菜单项组成,它们的定义如下所示: 菜单项(GtkMenuItem):添加到菜单条或下拉菜单中构件 顶层菜单项:添加到菜单条上的菜单项称为顶层菜单项 下拉菜单(GtkMe ...
- QLineEdit响应回车时避免Button同时响应
pButton->setAutoDefault(false);
- 解决:springmvc中接收date数据问题
这里提供三种解决方案. 一.局部转换 :只是对当前Controller类有效 springMVC.xml中添加: <bean class="org.springframework.we ...
- SVN服务器搭建和使用教程
安装SVNserver 点击Next下一步,如下: 然后再点击Next项,下一步,如下: 点击[Next] 如下: Location是指VisualSVN Server的安装目录,Repository ...
- Codeforces 629 E. Famil Door and Roads
题目链接:http://codeforces.com/problemset/problem/629/E 询问这个简单环的期望.考虑将这个环拆成两部分. 令${deep[x]>=deep[y]}$ ...
- Linux CentOS 7 安装mongoDB(4.0.6)
在官网下载安装包: https://www.mongodb.com/download-center/community 或者通过wget下载 wget https://fastdl.mongodb.o ...
- ip字符串,二进制转十进制输出
题目: 输入: 第一行输入字符串个数n,余下几行输入ip二进制字符串 输出: 按*.*.*.*格式输出十进制ip 代码实现: package ip; import java.util.Scanner; ...