- 博客(35)
- 收藏
- 关注
原创 删除pom文件中不需要的依赖
今天在调试项目时,有个demo.jar包造成A项目起不来,于是就在A项目的pom文件里面将对demo.jar依赖注释掉了,但是demo.jar还是会被引用。通过在树结构中查找,发现很多项目都引用了demo.jar,最后确定原来是父项目(P项目)引用了该jar包。为了去掉该依赖,就去maven仓库找到了父项目(P项目)的pom文件,进行了修改。然后回到A项目,执行maven-update project 命令,重启Tomcat就好了。...
2022-05-05 13:14:13
2699
原创 子组件与父组件
1.组件的定义1.定义组件并引用2.父组件向子组件传值3.子组件向父组件传值什么是组件1.Html中有组件,是一段可以被复用的结构代码2.Css中有组件,是一段可以被复用的样式3.Js中有组件,是一段可以被复用的功能4.Vue中也有组件,指的就是一个模块,是一个独立的,完整的(包含html,css,js等),可以直接拿来用的组件特性1.组件的实例化对象,跟vue实例化对象一样,因此,我们也可以将vue实例化对象看成组件2.组件间是独立的,因此数据要独立存储,方法要独立定义, 彼此间不能
2021-09-26 15:40:11
531
原创 Source Map基础
1.生产环境遇到的问题前端项目在投入生产环境之前,都需要对JavaScript源代码进行压缩混淆,从而减小文件的体积,提高文件的加载效率。此时就不可避免的产生了另一个问题:对压缩混淆之后的代码除错( debug)是一件极其困难的事情变量被替换成没有任何语义的名称空行和注释被剔除2.什么是Source MapSource Map就是一个信息文件,里面储存着位置信息。也就是说,Source Map文件中存储着代码压缩混淆前后的对应关系。馆有了它,出错的时候,除错工具将直接显示原始代码,而不是转换后
2021-08-24 23:37:35
125
原创 webpack基础
1.小白眼中的前端开发vs实际的前端开发小白眼中的前端开发:●会写HTML + CSS + JavaScript就会前端开发●需要美化页面样式,就拽一个bootstrap过来需要操作DOM或发起Ajax请求,再拽一个 jQuery过来需要渲染模板结构,就用art-template等模板引擎实际的前端开发:●模块化(js的模块化、CsS 的模块化、其它资源的模块化)组件化(复用现有的UI结构、样式、行为)规范化(目录结构的划分、编码规范化、接口规范化、文档规范化、Git 分支管理)●自动化
2021-08-24 23:02:32
73
原创 Promise的基本概念
①Promise 是一个构造函数●我们可以 创建Promise的实例const p = new Promise()●new 出来的Promise实例对象,代表- -个异步操作②Promise.prototype. 上包含- -个.then()方法( 100%●每一次new Promise()构造函数得到的实例对象,●都可以通过原型链的方 式访问到.then() 方法,例如p.then()③.then() 方法用来预先指定成功和失败的回调函数●p.then(成功 的回调函数,失败的回调函数)
2021-08-22 19:18:59
168
原创 ES6模块化基本语法
默认导出与默认导入按需导出与按需导入直接导入并执行模块中的代码默认导出:export default默认导出的成员注意事项:每个模块中,只允许使用唯一的一次export default,否则会报错。默认导入:语法:import接收名称from ‘模块标识符’注意事项:默认导入时的接收名称可以任意名称,只要是合法的成员名称即可。按需导出:语法:export 按需导出的成员按需导入:语法:import{s1} from’模块标识符’注意事项:①每个模块中可以使用多次按需.
2021-08-19 13:46:52
122
原创 CommonJS规范
1、CommonJs规范的出发点:JS没有模块系统、标准库较少、缺乏包管理工具;为了让JS可以在任何地方运行,以达到Java、C#、PHP这些后台语言具备开发大型应用的能力;2、在CommonJs规范中:一个文件就是一个模块,拥有单独的作用域;普通方式定义的变量、函数、对象都属于该模块内;通过require来加载模块;通过exports和modul.exports来暴露模块中的内容;3、所有代码都运行在模块作用域,不会污染全局作用域;模块可以多次加载,但只会在第一次加载的时候运行一次,然
2021-08-19 11:14:37
78
原创 [vue/no-parsing-error] Parsing error: x-invalid-end-tag.eslint-plugin-vue 解决方法
搜索vetur.validation.template,把勾取消掉,报错即可消失
2021-08-04 11:38:44
281
转载 【IDEA】IDEA2019.2版本找不到Registry...选项,打不开修改不了注册配置解决办法
Spring boot 在IDEA中热部署 Registry最近遇到了左边shift双击弹出搜索全局的烦恼,因为我是用shift切换中英文,很容易就误触了.百度倒是找到了方法,要打开IDEA内的注册表.用Ctrl+Shift+A打开全局搜索搜registry但是我的版本根本没有这个选项!在一位大神的SrpingBoot热部署帖子里找到了新的快捷键CTRL+ALT+SHIFT+/ 组合键才发现原来是打了汉化包以后,registry变成了注册的中文字!重新用Ctrl+Shift+A查找 “注册”,
2021-08-02 21:59:33
2085
原创 maven的下载安装配置
想要实现一个优秀的项目,光靠自己一个码农是很难的,我们需要引入别人已经集成好的类包来帮助我们优化项目,这个时候就需要使用maven了。一、maven是什么Maven是基于项目对象模型(POM project object model),可以通过一小段描述信息(配置)来管理项目的构建,报告和文档的软件项目管理工具。通俗的讲maven就是专门用于构建和管理项目的工具,他可以帮助我们去下载我们所需要jar包,帮助我们去管理项目结构,帮助我们去实现项目的维护、打包等等…二、maven的下载这里提供两种下载
2021-08-02 20:55:12
106
原创 软件设计模式与体系结构课后作业汇总
一、在简单工厂方法模式、工厂方法模式与抽象工厂模式中,哪个模式符合开闭原则?为什么?哪个模式一般不符合开闭原则?或者说明在哪种情况下,开闭原则成立,哪种情况下,开闭原则不成立。答:简单工厂模式一般不符合开闭原则。在简单工厂模式中,如果要增加一个新产品类,相应地在工厂类中也要增加一个条件语句,用于创建新的产品类的对象。也就是说,必须修改工厂类的源代码。工厂方法模式和抽象工厂模式符合开闭原则。因为在工厂方法模式和抽象工厂模式中,无需修改或者重新编译已经存在的代码,就可以添加新的产品类。开闭模式是指对扩展开
2021-07-05 19:16:45
12154
4
原创 工厂方法模式、抽象工厂模式与生成器模式的比较
工厂方法模式、抽象工厂模式与生成器模式的比较工厂方法模式可以看作为生成器模式的一个简化版本。在工厂方法模式中,工厂方法负责根据需要创建一个类的不同子类的对象,用户类不需要知道哪个确切的子类的对象被创建了在生成器模式中,生成器也使用一个创建者方法创建不同的子类的对象,但是即使使用的是同样的子类,这些子类的对象的组合也可能不同。生成器模式与抽象工厂模式的相似之处如下:它们都是创建类型的模式。它们都创建并且返回了产品的(一些对象组成的)对象。生成器模式与抽象工厂模式的区别如下:生成器模式关注按照
2021-07-02 21:28:44
867
转载 使用Sqlite保存数据
使用Sqlite保存数据定义bean类定义契约类编写常量类编写常量类使用SQL工具创建数据库编写操作数据的Dao类测试类定义bean类public class XGMessage { public int msgType; //消息类型. 0--链接(有url--打开网页, 没有url--打开app); 1-报警 public String content; //消息内容 public String url; //消息url public String receiveT
2021-07-01 21:41:52
729
原创 Python学习笔记(二)
Pop 不带参数,默认返回最后一个元素并删除List.index 返回参数所在位置,后面两个参数是划定范围逆序函数 reverse排序函数 sort(默认从小到大) 若要从大到小可以使用 sort(reverse=True)函数...
2021-06-28 23:21:50
73
原创 C++定义不定长度数组方法
#include <iostream>#include <vector>using namespace std; int main(){ int sum=0,value=0; vector<int>test; //实际上非数字就会结束循环 cout<<"以*号作为结束;"; while(cin>>value) test.push_back(value); vector<
2021-06-28 00:01:46
5437
原创 vue页面之间相互传值的方法
1、使用query传值–地址栏可见比如从a.vue跳转至b.vue,传name=‘jack’,代码如下:this.$router.push({ path: "/result", query: { name: 'jack' } });在b.vue通过地址栏的url 进行接收参数;我是在created这个函数里面进行接收的,var name = this.$route.query.name;就可以接收到name这个参数了;2、使用params传
2021-06-25 17:01:19
6310
原创 软件体系结构与设计模式之外观模式的应用
实验七 外观模式的应用实验目的实验环境实验内容模式UML图模式代码(Java语言实现)运行截图实验小结实验目的掌握外观模式(Facade)的特点分析具体问题,使用外观模式进行设计。实验环境Eclipse实验内容电源总开关现在考察一个电源总开关的例子,以便进一步说明外观模式。为了使用方便,一个电源总开关可以控制四盏灯、一个风扇、一台空调和一台电视机的启动和关闭。通过该电源总开关可以同时控制上述所有电器设备,使用外观模式设计该系统。用JAVA语言实现 (或C#控制台应用程序实现)。绘制该
2021-06-25 15:28:48
390
原创 项目设计
二手交易网站功能模块本系统分为前台和后台两个部分设计。前台主要用于实现会员登陆注册,查看商品,添加商品等功能;后台主要用于实现会员管理,订单管理等功能。本系统的前台和后台功能如图所示:用户类和特征(1)管理员: 公告的增加、修改、删除、查看 网站维护 (2)买家: 留言发表 留言查看 购买商品 订单信息查看 确认收货 订单取消 公告查看 会员登录 商品搜索 商品浏览 (2)卖家:个人信息管理(个人信息查看、个人信息修改) 会员登录 订单管
2020-12-30 14:53:47
661
原创 软件工程:结构化软件设计方法 VS 面向对象软件设计方法
一、基本概念1、结构化方法结构化方法是一种传统的软件开发方法,它是由结构化分析、结构化设计和结构化程序设计三部分有机组合而成的。基本思想:把一个复杂问题的求解过程分阶段进行,而且这种分解是自顶向下,逐层分解,使得每个阶段处理的问题都控制在人们容易理解和处理的范围内。2、面向对象方法面向对象方法是一种把面向对象的思想应用于软件开发过程中,指导开发活动的系统方法,简称OO,是建立在“对象”概念基础上的方法学。对象是由数据和容许的操作组成的封装体,与客观实体有直接对应关系,一个对象类定义了具有相似性质的
2020-12-26 10:19:28
8325
原创 软件工程复习
典型的软件体系结构风格数据流风格调用/返回风格独立构建风格虚拟机风格仓库风格面向数据结构的设计方法面向数据结构的设计方法通常在详细设计阶段使用。比较流行的面向数据结构的设计方法有:Jackson方法、Warnier方法。Jackson方法把数据结构分为3种基本类型:顺序型结构、选择型结构、循环型结构。顺序结构中,数据由一个或多个元素组成,每个元素按照确定的次序出现一次。运用Jackson图进行程序设计的优点:可以清晰地表达层次结构,易于对自顶向下的结构进行描述。结构易懂、易用,
2020-12-25 10:31:11
318
1
原创 软件工程复习
什么是面向对象技术?面向对象方法的特点有哪些?答:面向对象技术就是将数据抽象为一个对象的技术。特点有:多态、继承、封装。UML的作用和优点有哪些?答:首先UML是一种统一的、标准化的建模语言,它能为许许多多参与软件设计和开发的人提供一种公共“语言”,使他们能够基于共同的“模型”来理解业务、需求,理解软件和架构如何构造。其次UML是一种应用面很广泛的建模语言,它不仅可以用于软件系统建模,还可以用于业务流程、业务知识、数据库、嵌入式等多个领域;而且对于不同的领域,其所采用的本质元素是相同的。这样:不同的
2020-12-24 16:53:01
333
2
原创 web动态验证码的实现
运行结果:如果输入错误,鼠标在输入框之外点击则输入正确则不会显示出点击提交跳转到成功的页面,注意此时搜索栏已经变化算法实现动态验证码实现首先得有一个算法。定义一个数组用来存放生成的验证码String ver[] = new String[62];第一种,定义一个字符串数组,由0-9,a-z,A-Z组成,共62public void init(){ for(int i = 0;i < 10;i ++){ ver[i] = new In
2020-12-01 21:40:56
477
原创 使用Intellij IDEA编写一个简单的Servlet项目
创建新项目填写项目名称项目创建成功后的目录初始结构配置(1) 在WEB-INF目录下创建classes和lib目录classes :用于存放编译后的classlib :用于存放依赖包(2)File->Project structure配置compiler output(也可以用Ctrl+Alt+Shift+S快捷键打开Project structure)(3)接着配置依赖包到现在基本都配置好了5. 编写一个Servlet(1)创建Servle..
2020-11-08 18:47:15
189
原创 内置对象Session与httpSession对象
Session对象Session对象是一个JSP内置对象,它在第一个JSP页面被装载时自动创建,完成会话期管理。从一个客户打开浏览器并连接到服务器开始,到客户关闭浏览器离开这个服务器结束,被称为一个会话。当一个客户访问一个服务器时,可能会在这个服务器的几个页面之间切换,服务器应当通过某种办法知道这是一个客户,就需要Session对象。Session对象的ID当一个客户首次访问服务器上的一个JSP页面时,JSP引擎产生一个Session对象,同时分配一个String类型的ID号,JSP引擎同时将这换个I
2020-11-03 19:50:24
113
原创 使用Intellij Idea 创建一个JDBC连接数据库的程序步骤
使用Intellij Idea 创建一个JDBC连接数据库的程序步骤:创建一个目录,用来放mysql的驱动包,类似eclipse的lib目录:JDBCDemo->New->Directory把mysql的jar包复制过来把jar包添加到项目里,类似eclipse的add to build path功能,快捷键:Ctrl+Alt+Shift+S,弹出图示菜单。选择第一项:JARs or directories。找到刚才添加的jar包,点击确定。...
2020-11-03 19:14:07
250
原创 MVP与MVC的异同
MVP与MVC的异同一句话概括:代码逻辑有没有写在View中的,有就是MVC,没有就是MVPMVP模式:View不直接与Model交互,而是通过与Presenter交互来与Model间接交互Presenter与View的交互是通过接口来进行的,更有利于添加单元测试通常View与Presenter是一对一的,但复杂的View可能绑定多个Presenter来处理逻辑MVC模式:View可以与Model直接交互Controller是基于行为的,并且可以被多个View共享可以负责决定显示哪
2020-10-30 12:27:26
98
翻译 Why Software Development Methodologies Suck?
围绕软件开发实践和方法论,总有很多教条式的口水仗。阶段式(phase-gate)方法能够有效管理软件开发过程的风险,还是说只是风险管理中的花哨噱头?TDD真的能够促生出高品质软件?结对编程是代码评审的有效替代抑或只是增加了商议沟通代价?我想说,虽然缺乏证据判断这些论调的谬处,但有两条常用的法则能够帮助我们选择好的实践,同时,提升我们所提供软件的价值:划小开发周期以及提升反馈效率。Michael Feathers给出了以下观点:我认为,到了最后,我们还是得倚重开发者的能力,这才是个更重要的考量因素,而非
2020-10-23 00:24:22
80
原创 What is formal method?
什么是形式化方法?形式化方法英文的名称是formal methods。在逻辑科学中是指分析、研究思维形式结构的方法。它把各种具有不同内容的思维形式(主要是命题和推理)加以比较,找出其中各个部分相互联结的方式,如命题中包含概念彼此间的联结,推理中则是各个命题之间的联结,抽取出它们共同的形式结构;再引入表达形式结构的符号语言,用符号与符号之间的联系表达命题或推理的形式结构。例如,把全称肯定命题,用符号形式化为"SAP";把联言命题、假言命题分别形式化为:"p∧q、“p→q”。又例如:一个具体的假言联言推理
2020-10-23 00:12:50
445
原创 IntelliJ IDEA新建JSP文件
1. 点击左上角File —>Project Structure2. 选中Modules,然后点击上方的“+”号3. 点击+号之后,选择Web选项4.在Web Resoure Directories这里,看到这里有一个目录,然后选择你想在改项目中新建JSP文件的位置,例如我这里是要在main目录下的webapp文件夹下新建JSP文件,就选择该目录5.上一步设置完之后,就可以在想新建JSP文件的目录右键New,就可以看到JSP文件了补充说明1:有时候新建出来的JSP文件是空白的,
2020-10-22 23:53:25
1929
1
原创 IntelliJ IDEA如何新建项目HTML
IntelliJ IDEA如何新建项目HTML1.打开IntelliJ IDEA2.选择create new project(新建项目)3.单击static web-static web-next4.在project name框中输入项目名称,在project location中选择保存路径,finish5.单击右键,New-HTML File6.新建HTML文件:在弹出的提示框中输入HTML名称,一般为index,在选择HTML对应版本。7.即打开了HTML运行。...
2020-10-22 23:51:56
1454
原创 2020-10-20
什么是分而治之?“分而治之”( Divide and conquer)方法(又称“分治术”) ,是有效算法设计中普遍采用的一种技术。就是把一个复杂的算法问题按一定的“分解”方法分为等价的规模较小的若干部分,然后逐个解决,分别找出各部分的解,把各部分的解组成整个问题的解,这种朴素的思想来源于人们生活与工作的经验,也完全适合于技术领域。诸如软件的体系结构设计、模块化设计都是分而治之的具体表现。基本思想分而治之方法与软件设计的模块化方法非常相似。为了解决一个大的问题,可以:把它分成两个或多个更小的
2020-10-20 15:19:45
107
原创 欢迎光临 我们的第一篇博客
Hello CSDN!这是我们的第一篇博客欢迎来到菜鸟软工的世界对软件工程新的认识软件工程方法论欢迎来到菜鸟软工的世界大家好! 这是我们第一次使用CSDN编辑我们的第一篇博客,从这开启我们对软件工程的学习之旅,还请大家多多指教。小组成员:P同学、J同学对软件工程新的认识概念:软件工程是是为了经济地获得可靠地和能在实际机器上高效运行地软件,而建立和使用的健全的工程规则。软件工程这门课程并不是教不怎么会代码的制作程序,软件工程研究的内容包括两方面:1、软件开发技术。主要研究软件开发方法、软件开发过
2020-10-05 15:37:54
175
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人