摘要: 栗子回顾 简单工厂模式: "https://www.cnblogs.com/call me devil/p/10926633.html" 运算类使用工厂方法模式实现 UML图 代码实现 工厂接口 运算基础类 为节省篇章,详见 "简单工厂模式" ,此处省略。 以下加减乘除运算类(OperationAd 阅读全文
posted @ 2019-07-07 15:42 callmeDevil 阅读(444) 评论(0) 推荐(0) 编辑
摘要: 举个栗子 故事是这样的... 一个小伙子喜欢上了隔壁班的一个妹子,但是又不认识,也害羞不好意思主动去说话,于是拜托了同样在这个班的一个朋友去传递自己想要送的礼物。。。 代码实现 该模式就不上什么简单实现了,直奔完整实现。 被追求者 想要送的礼物 追求者 代替追求者的人 测试 测试结果 代理模式 定义 阅读全文
posted @ 2019-06-29 18:33 callmeDevil 阅读(572) 评论(0) 推荐(0) 编辑
摘要: 举个栗子 问题描述 可以给人搭配嘻哈服或白领装的程序。 简单实现 代码 测试结果 存在缺陷 如果需要增加“超人”装扮,会导致需要修改“Person”类,违背了 开放 封闭原则 简单实现进化版 代码 测试结果 存在问题 现在如果要加超人装扮,只要增加子类就可以了,但是这么做虽然把“服装”类和“人”类分 阅读全文
posted @ 2019-06-23 17:53 callmeDevil 阅读(366) 评论(0) 推荐(0) 编辑
摘要: 单一职责原则 英文:Single Responsibility Principle,简称 SRP 。 定义 就一个类而言,应该仅有一个引起它变化的原因。 描述 如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或者抑制这个类完成其他职责的能力。这种耦合会导致脆弱的设计,当 阅读全文
posted @ 2019-06-16 14:43 callmeDevil 阅读(453) 评论(0) 推荐(0) 编辑
摘要: 举个栗子 问题描述 商场收银软件,营业员根据客户所购买的商品单价和数量,向客户收费。 简单实现 问题2 商品搞促销,打八折,也可能打七折,甚至五折。 数组实现 上述方式存在问题 有很多重复代码,就 switch 语句来说,如果计算方式比较复杂,那么这里就会显得非常冗余,必须考虑重构,抽出共性代码。而 阅读全文
posted @ 2019-06-01 12:40 callmeDevil 阅读(521) 评论(0) 推荐(0) 编辑
摘要: 概要 一个好的程序猿/媛敲出来的代码应该是 可维护、可复用、可扩展的 ,也就是具有较好的灵活性。 为了达到以上目的,在还没敲代码之前,需要事先考虑通过何种方式能够使自己的程序的 耦合度降低 ,最基本的便是面向对象的 封装、继承、多态 。 但这往往是不够的,需要根据实际情况选择合适的 设计模式 使得程 阅读全文
posted @ 2019-05-26 17:27 callmeDevil 阅读(558) 评论(0) 推荐(0) 编辑
摘要: 一、选中JavaEE视图 因为在普通的Java视图下,窗口下方没有server选项卡 二、双击Tomcat 注意:可能很多人当然包括我一开始的时候,都是喜欢 右键 Tomcat然后 Add and remove ,以后千万不要养成这个习惯,否则每次都会被卡的想死的心都有,不管你电脑配置多高,内存多大 阅读全文
posted @ 2018-03-19 15:52 callmeDevil 阅读(22909) 评论(3) 推荐(3) 编辑
摘要: 环境准备 添加两个jar包   commons fileupload 1.2.2.jar   commons io 2.4.jar 配置要求 在springmvc.xml中配置multipart类型解析器 前台表单 细节:一定要记得加上 enctype 属性 阅读全文
posted @ 2018-03-15 08:31 callmeDevil 阅读(336) 评论(0) 推荐(0) 编辑
摘要: 二话不说先上代码 细节说明 1. 这段代码可用plsql工具new菜单栏下的sql window执行,如果不想创建存储过程 procedure ,可以直接用job window创建,只是此时生成的脚本无法使用sql window执行。该方法用工具操作很简单,此处就不举例啦(啊喂,要学会举一反三好不, 阅读全文
posted @ 2018-03-14 11:38 callmeDevil 阅读(2245) 评论(0) 推荐(0) 编辑