资讯专栏INFORMATION COLUMN

基于策略模式下的作业调度

eternalshallow / 2716人阅读

摘要:最近操作系统布置了一个实验要求做一个作业调度实验,而我又刚好在学设计模式,所以常常会在想,这个系统要用什么模式来设计呢策略模式是什么首先给大家看一下该项目的类图表示这里四个算法了一个方法接口,并且重写了他的方法。

最近操作系统布置了一个实验要求做一个作业调度实验,而我又刚好在学java设计模式,所以常常会在想,这个系统要用什么模式来设计呢?
策略模式是什么
首先给大家看一下该项目的类图表示

这里四个算法implement了一个方法接口,并且重写了他的方法。而策略类简单说就是通过一个策略接口,重写每一个策略方法来达到想实现的策略。这里不对四个算法进行详细剖析,只是来讲讲我在编写过程中遇到的问题。
问题1:

前两天看设计模式,当中讲到了原型模式,指对象的引用过程有深复制和浅复制两种。浅复制指复制后的对象会随原来被复制对象的变化而变化,深复制则不会。刚好我在写这个实验时就出现了这个问题。首先在我的作业实体类中定义了许多属性,而在我返回对象里我除了想返回作业实体类外还想返回一个List属性。代码如下



而我对所有进程进行初始化的时候就出现了问题。

图中的代码是正确代码,错误的地方就在第35行注释的那一句将原来的对象clone到了JobResponse对象中,所以不管你的Jobs怎么变化,JobResponse里的job会随着变化而变化,解决方法就是新new一个对象temp,并将它set到JobResponse中
问题2:

程序写完后将前端代码打包到resource/static下的目录,跑起来后发现出现了跨域问题。

解决方法就是要进行SpringMvc的跨域的配置,即增加一个SpringContextMVC文件,重写addCorsMappings方法,不过这里有个疑问就是为什么在本机上需要解决跨域问题,难道是因为前端封装好了跨域的解决,所以在Springboot也需要配置?

以上就是我在编写这个实验遇到的问题和解决方法了,具体的实现结果如下,源码地址:源码

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/72415.html

相关文章

  • 阿里云HPC助力新制造 | 上汽仿真计算云SSCC

    摘要:摘要据了解,借助阿里云,上汽乘用车实现了工程开发仿真能力升级,仿真计算效率提升了,使工程开发人员更加专注于产品设计和性能优化,打造出世界级产品的高品质。 摘要: 据了解,借助阿里云,上汽乘用车实现了工程开发仿真能力升级,仿真计算效率提升了25%,使工程开发人员更加专注于产品设计和性能优化,打造出世界级产品的高品质。今年北京车展上全球首秀的概念车MG X-Motion,其量产车的卓越整车...

    stackvoid 评论0 收藏0
  • 终于等到你!阿里正式向 Apache Flink 贡献 Blink 源码

    摘要:阿里妹导读如同我们去年月在峰会所约,阿里巴巴内部版本将于年月底正式开源。基于的计算平台于年正式上线。截至目前,阿里绝大多数的技术部门都在使用。在那之后,阿里巴巴将直接使用用于生产,并同时协助社区一起来维护。 showImg(https://segmentfault.com/img/remote/1460000018041567); 阿里妹导读:如同我们去年12月在 Flink Forw...

    yzd 评论0 收藏0

发表评论

0条评论

eternalshallow

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<