- 博客(37)
- 收藏
- 关注
原创 Java设计模式——适配器模式
作用:将一个类的接口转换成另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以在一起工作。你只能通过网线才能上网,但你的电脑只有USB接口,这时你需要用到扩展坞。这个拓展坞就是一个适配器,它两端连接了电脑和网线,使得你的电脑能够上网。角色分析:目标接口:客户所期待的接口,目标可以是具体的或抽象的类,也可以是接口(USB)需要适配的类:需要适配的类或适配者类 (网线)适配器:通过包装一个需要适配的对象,把原接口转换成目标对象 (扩展坞)类形:类适配器:继承被适
2020-05-12 20:52:07
293
原创 Java设计模式——原型模式
原型模式(Prototype Pattern)是用于创建重复的对象,同时又能保证性能。以某个对象为原型进行克隆再进行加工修改。创建复杂对象时,提高效率。优点:性能提高。逃避构造函数的约束。缺点:配备克隆方法需要对类的功能进行通盘考虑,这对于全新的类不是很难,但对于已有的类不一定很容易,特别当一个类引用不支持串行化的间接对象,或者引用含有循环结构的时候。使用场景:类初始化非常复杂,需要大量资源。一个对象多个修改者的场景。原型模式很少单独使用,一般是和工厂模式一起使用,通过 cl
2020-05-11 23:46:37
296
原创 SSM练手小demo——BookShop图书网络销售系统
下载地址https://github.com/superdoog/bookshop项目预览http://49.235.62.115:8080/BookShop 前台http://49.235.62.115:8080/BookShop/backLogin 后台前端账号:test 密码:123456后端账号:admin 密码:admin本demo页面使用Bootstrap搭建,后端使用...
2020-04-26 17:49:59
992
原创 Java设计模式——建造者模式
建造者模式也属于创建型模式,它提供了一种创建对象的最佳方式。定义:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示主要作用:在用户不知道 对象的建造过程和细节 的情况下就可以直接创建复杂的对象。用户只需要给出指定复杂对象的类型和内容,建造者模式负责按顺序创建复杂对象(把内部的建造过程和细节隐藏起来)例子:工厂(建造者模式):负责制造汽车(组装过程和细节在工厂内)...
2020-04-24 15:47:51
197
原创 Java设计模式——工厂模式
工厂模式的作用:实现了创建者和调用者的分离详细分类:简单工厂模式:用来生产同一等级结构中的任意产品(对于增加新的产品需要修改已有代码)工厂方法模式:用来生产同一等级结构中的固定产品(支持增加任意产品)抽象工厂模式:围绕一个超级工厂创建其他工厂。该超级工厂又称为其他工厂的工厂。工厂模式核心本质:事例化对象不使用new,用工厂方法代替。将选择实现类,创建对象统一管理和控制。从而将调...
2020-04-17 17:31:45
162
转载 java并发编程:volatile关键字解析
volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生机。volatile关键字虽然从字面上理解起来比较简单,但是要用好不是一件容易的事情。由于volatile关键字是与Java的内存模型有关的,因此在讲述volatile关键之前,我们先来了解一...
2020-04-14 11:07:13
129
原创 JavaWeb----Filter
Filter:过滤器,用来过滤网站的数据常见场景:处理中文乱码登录验证Filter开发步骤:导包 ( javax.servlet.* )编写过滤器在web.xml配置Filter注意:导包不能出错实现Filter接口,重写对应方法过滤器中的所有代码,在过滤特定请求的时候都会执行必须要让过滤器继续通行public class CharacterEncoding...
2020-02-15 23:51:36
227
原创 JavaWeb----jsp
什么是jspJava Server Pages:java服务器端页面,也和Servlet一样,用于动态web技术特点:写jsp和写HTML类似区别:html只能提供静态的数据jsp页面中可以嵌入Java代码,为用户提供动态数据jsp原理浏览器向服务器发送请求,不管访问什么资源本质上都是在访问servletJSP最终也会被转化为Java类JSP本质上就是Servlet(...
2020-02-15 15:38:57
191
原创 JavaWeb----Cookie | Session
会话会话:用户打开一个浏览器,点击了很多超链接,访问多个web资源,关闭浏览器,这个过程可以称之为会话有状态会话:一个同学来过教室,下次再来教室,我们会知道这个同学,曾经来过,称之为有状态会话一个网站,怎么证明你来过?服务端给客户端一个信件,客户端下次访问客户端带上信件就可以了;cookie服务器登记你来过了,下次你来的时候我来匹配你;session保存会话的两种技术cookie...
2020-02-13 20:03:47
160
原创 JavaWeb----HttpServletRequest | HttpServletResponse
HttpServletResponseweb 服务器接受到客户端到http请求,针对这个请求,分别创建一个代表请求到的 HttpServletRequest 对象,代表响应的一个HttpServletResponse。如果要获取客户端请求过来的参数:HttpServletRequest如果要给客户端响应一些信息:HttpServletResponse方法简单分类负责向浏览器发送数据的...
2020-02-13 14:00:54
291
原创 JavaWeb----servletContext
什么是 ServletContext ?ServletContext 是一个全局的储存信息的空间。web容器在启动的时候,它会为每一个web程序都创建一个对应的 ServletContext 对象,它代表了当前的web应用。ServletContext 的应用1. 共享数据我们在一个 Servlet 中保存的数据,可以在另一个 Servlet 中拿到。setAttribute(Stri...
2020-02-13 12:41:03
165
原创 JavaWeb----servlet mapping
Servlet 部署想要 servlet 能工作必须在 web.xml 文件中去注册。一个 servlet 可以指定一个映射路径<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www....
2020-02-13 11:27:58
337
原创 JavaWeb----servlet原理
什么是 Servlet ?Servlet(Server Applet)是Java Servlet的简称,称为小服务程序或服务连接器,用Java编写的服务器端程序,具有独立于平台和协议的特性,主要功能在于交互式地浏览和生成数据,生成动态Web内容。狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解...
2020-02-13 11:04:46
241
原创 MySQL事务处理与事务隔离
MySQL事物处理与事务隔离什么是事物?事务的四大特性事务处理的结构存储引擎事务隔离事务隔离问题事务隔离级别事务隔离查询与设置什么是事物?多条语句必须同时执行成功或者同时执行失败,是数据库操作的一个执行单元。例如,删除字典中的一个字,需要删除目录中字的索引,同时也必须要删除正文中有关这个字的内容。在逻辑上必须同时增删改的一段命令称之为事物。事务的四大特性事务必须满足 4 个特性( ACID...
2019-07-29 16:40:22
206
原创 逻辑回归 笔记
逻辑回归 Logistic regression什么是逻辑回归?什么是信息熵?损失函数?交叉熵?Sigmoid 函数用逻辑回归做二元分类和多元分类的联系什么是逻辑回归?逻辑回归是一种广义线性回归,本质上与多元线性回归相差无几。相当于将回归的结果带入sigmoid函数进行缩放,使得最终结果为二分类。什么是信息熵?1948年,香农提出了“信息熵”的概念,是指信息的量化度量。即信源的概率越大,该...
2019-07-11 23:04:37
184
原创 MySQL学习笔记(十二)__连接查询(一)
连接查询含义:又称多表查询,当查询的字段来自多个表时,就会用到连接查询笛卡尔乘积现象:表1 有 m 行,表2 有 n 行,结果 = m*n 行发生原因:没有有效的连接条件如何避免:添加有效的连接条件分类:按年代分类: sql192 标准:仅支持内连接 ...
2019-05-21 16:54:20
345
原创 MySQL学习笔记(十一)__分组查询
分组查询语法:SELECT 分组函数,列(要求出现在group by的后面)FROM 表WHERE 筛选条件GROUP BY 分组的列表ORDER BY 子句注意:查询列表比较特殊,要求分组函数和 GROUP BY 后出现的字段特点:分组查询中的筛选条件分为两类~数据源位置关键字分组前筛选原始表GROUP BY子句的前面WHRER分组...
2019-05-20 19:17:42
170
原创 MySQL学习笔记(十)__常见函数之分组函数
分组函数功能:用作统计使用,又称为聚合函数或统计函数或组函数分类: sum 求和 , avg 平均值 , &nbs...
2019-05-11 10:48:55
132
原创 MySQL学习笔记(九)__常见函数之流程控制函数
其他函数SELECT VERSION( );查询版本号SELECT DATABASE ();查询当前数据库SELECT USER();查询当前用户流程控制函数1、 if函数SELECT IF(10>5,‘big’,'small’);#返回bigSELECT last_name, commission_pct,IF( ISNULL( commission_pct...
2019-05-09 20:27:21
126
原创 MySQL学习笔记(八)__常见函数之日期函数
日期函数1、 now 返回当前系统日前+时间SELECT NOW( );2、curate 返回当前系统日期,不包括时间SELECT CURDATE( );3、 curatime 返回当前时间,不包括日期SELECT CURTIME( );4、 可以获取指定的部分,年、月、日、小时、分钟、秒SELECT YEAR( hiredate ) 年 ...
2019-05-08 20:41:48
365
原创 MySQL学习笔记(七)__常见函数之数学函数
数学函数1、 round 四舍五入SELECT ROUND(1.65); #2SELECT ROUND( 1.49 ); #1SELECT ROUND( - 1.49 ); #-1SELECT ROUND( - 1.6 ); #-2SELECT ROUND( 1.567,2); #1.572、 ceil 向上取整 ,...
2019-05-08 19:58:21
141
原创 MySQL学习笔记(六)__常见函数之字符函数
常见函数概念:类似于java的方法,将一组逻辑语句封装在方法中,对外暴露方法名优点:1、隐藏了实现细节 2、提高代码的重用性调用:SELECT 函数名(实参列表) FROM 表;特点:1、函数名 &nbs...
2019-05-07 23:34:50
149
原创 MySQL学习笔记(五)__排序查询
排序查询语法:SELECT 查询列表FROM 表WHERE 筛选条件ORDER BY 排序列表 ASC/DESC;特点:1.asc 升序,desc 降序 不写默认为升序2.order by 子句中支持单个字段、多个字段、表达式、函数、别名3.order by 子句一般在查询语句的最后面,limit子句除外#例子:查询员工信息,要求工资从高到低排序SELECT * ...
2019-04-27 15:33:44
149
原创 MySQL学习笔记(四)__模糊查询
模糊查询特点:1.一般和通配符搭配使用通配符:% 任意多个字符,包含0个字符_ 任意单个字符between andinis null || is not null例子1:查询员工名中包含字符a的员工信息SELECT *FROM employeesWHERE last_name LIKE '%a%';例子2:查询员工名中第三个字符n,第五个字符为l 的员工名和...
2019-04-12 11:52:10
195
原创 MySQL学习笔记(三)__条件查询
条件查询语法:select 查询条件from 表名where 筛选条件;程序执行顺序: 1.先定位表 2.再筛选  ...
2019-04-11 12:42:42
143
原创 MySQL学习笔记(二)__基础查询
DQL(查询)Data Query LanguageDML(增删改)Data Manipulation LanguageDDL(库和表的定义)Data Define LanguageTCL(事务控制)Transaction Control LanguageDQL语法:select 查询列表 from 表名;特点:1.查询列表可以是 表中的字段、表达式、函数2.查询的结果...
2019-04-09 16:06:24
195
原创 MySQL学习笔记(一)__MySQL常见命令
##MySQL服务登陆和退出登陆:mysql「-h主机名 -p端口号」-u用户名 -p密码退出:exit 或quit##MySQL常见命令1.查看当前所有的数据库show databases;2.打开指定的库use 库名3.查看当前库的所有表show tables from 库名;4.查看其他库的所有表show tables from 库名;5.创建表create t...
2019-04-07 22:55:03
189
原创 Java IO流 学习笔记
Java IO流 学习笔记一、IO流的分类二、字节流与字符流的区别:三、IO操作流程一、IO流的分类按流的方向分类:1. 输入流:从数据源到程序(以InputStream、Reader结尾的流)2. 输出流:从程序到目的地(以OutPutStream、Writer结尾的流)按处理的数据单元分类:1.字节流 (Btye Stream)&nbsp;&nbsp;&nbsp;&nbsp;&nb...
2019-02-11 16:16:30
324
原创 归一化/特征缩放(Feature Scaling) 笔记
归一化/特征缩放 Feature Scaling为什么要做归一化?如何进行归一化?1.最大值最小值归一化2.方差归一化3.均值归一化4.==标准归一化StandardScaler==归一化的目的:将所有特征缩放到0~1之间,使梯度下降法能更快的收敛。(其中0和1并不是定值,只是一个范围。)为什么要做归一化?各个特征xix_{i}xi的θi\theta_{i}θi能同步收敛,使梯度下降...
2019-02-02 18:07:26
2571
原创 Python 随机梯度下降 SGD 代码实现 笔记
回顾梯度下降流程#1 初始化 θ\thetaθ#2 求 gradient#3 θt+1=θt−α•g\theta^{t+1}=\theta^{t}-\alpha • gθt+1=θt−α•g#4 ggg 收敛随机梯度下降 SGD随机:Stochastic梯度:Gradient下降:Descent每一步下降用随机抽取的样本优点:速度快缺点:精度下降for i = 1 to m...
2019-01-28 12:05:36
5615
1
原创 Python 批量梯度下降 BGD 代码实现 笔记
回顾梯度下降流程#1 初始化 θ\thetaθ#2 求 gradient#3 θt+1=θt−α•g\theta^{t+1}=\theta^{t}-\alpha • gθt+1=θt−α•g#4 ggg 收敛批量梯度下降 BGD批量:Batch梯度:Gradient下降:Descent“Batch”: Each steep of gradient descent use all ...
2019-01-27 17:27:50
1037
原创 梯度下降法 导数项推导
回顾梯度下降流程#1 初始化 θ\thetaθ#2 求 gradient#3 θt+1=θt−α•g\theta^{t+1}=\theta^{t}-\alpha • gθt+1=θt−α•g#4 ggg 收敛其中1、3、4、步都容易求得,第2步中 ggg 不易求得求导g=δδθjJ(θ)=δδθj12(hθ(x)−y)2g=\frac{\delta}{\delta\theta_{j...
2019-01-27 16:42:23
677
原创 梯度下降法详解 笔记
梯度下降法详解 笔记梯度下降法 Gradient descent algorithmθt+1=θt−α•g\theta^{t+1}=\theta^{t}-\alpha • gθt+1=θt−α•gα\alphaα : 学习效率数字 (learning rate) 用来控制梯度下降时,函数下降的速度。α\alphaα越大梯度下降越迅速,α\alphaα越小下降缓慢。If α\alphaα ...
2019-01-23 23:36:39
861
原创 Python 实现线形回归解析解公式 代码
numpy 实现线形回归解析解公式解析解公式:θ=(xTx)−1xTy\theta=(x^{T}x)^{-1}x^{T}yθ=(xTx)−1xTy目标函数:y=w0x0+w1x1y=w_{0}x_{0}+w_{1}x_{1}y=w0x0+w1x1import numpy as npimport matplotlib.pyplot as plt# 随机x纬度x1,rand是随机...
2019-01-20 21:22:21
942
原创 Mac PyCharm CE python matplotlib plt.show() 报错
在 PyCharm 中测试线性回归算法时,调用 plt.show() 时,编译通过,运行报错。2019-01-20 11:32:41.235 python[43029:5007789] -[NSApplication _setup:]: unrecognized selector sent to instance 0x7fe34e5ed2f02019-01-20 11:32:41.237 ...
2019-01-20 19:50:49
888
3
原创 线性回归笔记
线性回归公式推导过程 笔记**线性:** y = a*x 一次方的变化**回归:** 回归到平均值最大似然估计(maximum likelihood estimation, MLE)中心极限定理 (central limit theorem)概率密度函数公式推导过程前提:1.随机(服从正态分配)2.独立(认为误差是独立的)线性: y = a*x 一次方的变化回归: 回归到平...
2019-01-18 20:02:33
384
原创 吴恩达机器学习笔记 第一章
- 监督学习 Supervised Learning -我们给算法一个数据集,其中包括了正确的答案,算法的目的就是给出更多的正确答案,它也被称为回归问题。无穷多的特征,很多属性做预测时,那么如何来处理无穷多的特征呢?如何在计算机中存储无穷多数量的事物,以支持向量机算法为例:分类问题(Classification Problem)、回归问题(Regression Problem);- 无...
2019-01-05 23:48:58
224
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人