- 博客(50)
- 收藏
- 关注
原创 Spring AOP的实现原理
前言在以前的项目中,很少去关注Spring AOP的实现原理,只是简单了解了一下什么是AOP具体怎么用,本篇将不介绍其使用方法,主要其实如何实现的(即实现原理是什么)。AOP的原理AOP 指的是面向切面编程,就是在不改变源码的基础上横向扩展一些功能,主要应用场景有事务管理、日志、缓存等等。其实现的关键在于AOP框架自动创建的AOP代理,如图所示↓↓下面我们就以最经典的转账操作进行事务管理...
2018-12-18 16:14:11
595
原创 给定一个正整数,求最少由哪几个数的平方和组成
求一个正整数最少由哪几个数的平方和组成案例:输入 2输出 1 1输入 4输出 2输入 8输出 2 2输入 15输出 3 2 1 1public class MyTest { public static void main(String[] args) { MyTest myTest = new MyTest() ; myTest...
2018-12-15 11:36:30
2514
1
原创 CentOS7 环境下搭建 FastDFS + Nginx
首先安装FastDFS1、安装gcc(编译时需要)FastDFS是一款开源的轻量级分布式文件系统,纯C实现,支持Linux、FreeBSD等Unix系统。安装FastDFS需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没有gcc环境,需要安装gccyum install -y gcc gcc-c++2、安装libevent(运行时需求)若安装了桌面图形界面,就不需要安装;Fa...
2018-11-28 23:29:57
637
原创 CentOS7 环境 安装 Zookeeper 部署Dubbo
在 CentOS7 上安装 zookeeper-3.4.13 服务1、创建 /usr/local/services/zookeeper 文件夹:mkdir -p /usr/local/services/zookeeper2、进入到 /usr/local/services/zookeeper 目录中:cd /usr/local/services/zookeeper3、下载 zookee...
2018-11-28 14:46:05
494
原创 Linux下 解决Tomcat8不自动解压war包
之前买了阿里云服务器后配置好了jdk,Tomcat,mysql等。然后就想当然的将项目打成war包,直接拖到Tomcat的webapps下,但无论怎么重启项目就是不自动解压,后来查了各方面资料,删除这个文件那个文件的,差点把Tomcat搞崩溃了也没找到原因,最后看到讲一个将Tomcat里面配置文件的文章我才发现原来是tomcat/conf下server.xml里面的这行配置搞的鬼。其中:...
2018-11-28 11:30:27
15029
2
原创 CentOS7环境安装配置Redis
第一步:下载redis安装包wget http://download.redis.io/releases/redis-4.0.9.tar.gz 想下载哪个版本可以复制上面链接删除redis-*部分内容,可以查看到所有redis版本的安装包第二步:解压安装包tar -zxvf redis-4.0.9.tar.gz -C /usr/local/将压缩包解压到指定目录第三步:安装gcc...
2018-11-27 23:21:47
217
转载 27岁,30岁,37岁...... 你是否已经把世界拱手让人?
23岁,他大学毕业,放弃了父母安排的稳定工作,一个人闯京城,进了一家小公司混了一个小职位,工作虽说顺利,却木有安全感,这个社会从不缺人才,公司随时可能新人换旧人,于是,定目标,要做这一小撮人中最优秀的;24岁,有了女朋友,从二环12人的集体宿舍搬到香山民居,一间平房,二人世界,相互携手,小心规划未来,偶然约朋友,谈股票,聊投资,年关竟额外小赚一笔;25岁,梦想成真,成了公司主干,有猎头抛来...
2018-09-13 10:15:39
180
原创 Java个人总结——DAO模式
DAO设计模式DAO(Database Access Object 数据库访问对象)为了降低耦合性,提出了DAO封装数据库操作的设计模式。它可以实现业务逻辑与数据库访问相分离。相对来说,数据库是比较稳定的,其中DAO组件依赖于数据库系统,提供数据库访问的接口。隔离了不同的数据库实现。DAO模式的组成部分1 DAO接口(主要 添加 修改 更新 删除方法)2 DAO实现类...
2018-09-09 16:32:17
3592
原创 Java个人总结——(Apache)DbUtils的使用
DBUtils Commons DbUtils是Apache组织提供的一个对JDBC进行简单封装的开源工具类库,使用它能够简化JDBC应用程序的开发,同时也不会影响程序的性能。DBUtils简介DBUtils是java编程中的数据库操作实用工具,小巧简单实用,1.对于数据表的读操作,可以把结果转换成List,Array,Set等java集合,便于程序员操作。2.对于数据表...
2018-09-09 16:04:19
492
原创 Java个人总结——JDBC数据库连接池(二)
三种常见的数据库连接池一、DBCP连接池 DBCP(DataBase connection pool),[数据库连接池]。是 apache 上的一个 java 连接池项目,也是 tomcat 使用的连接池组件。单独使用dbcp需要2个包:commons-dbcp.jar 和 commons-pool.jar由于建立数据库连接是一个非常耗时的行为,所以通过连接池预先同数据库建立一些连...
2018-09-08 22:59:24
580
原创 Java个人总结——JDBC数据库连接池(一)
数据库连接池什么是数据库连接池:数据库连接池就是系统预先为客户准备好的数据库的连接集合,集合内有多个连接,每当用户请求连接时系统就给该用户发放一个连接,用户用完后再归还给系统。为什么要使用连接池:用户每次请求都需要向数据库获得链接,而数据库创建连接通常需要消耗相对较大的资源,创建时间也较长。假设网站一天10万访问量,数据库服务器就需要创建10万次连接,极大的浪费数据库的资源,并...
2018-09-08 21:07:13
265
原创 Java个人总结——JDBC工具类封装
工具类封装 在前面的JDBC案例中我们不难发现,每次操纵数据库都需要进行数据库的注册、连接等大量重复的操作,是的代码变得十分的臃肿,所以此时我们应该考虑如何把重复代码提取出来,随时需要随时拿来用。 这就是工具类的封装。案例实现:实现emp表的查询、添加、删除、修改封装DbUtils由于多个地方都需要使用数据库连接和释放,所以把功能封装到工具类中DbUtils 四个功能...
2018-09-08 20:02:51
774
原创 Java个人总结——JDBC的批处理、事务和二进制文件存储
JDBC批处理批量处理允许你将相关的SQL语句分组到批处理中,并通过对数据库的一次调用提交它们。 当需要一次向数据库发送多个SQL语句时,可以减少连接数据库的开销,从而提高性能。1.1 Statement批处理以下是使用语句对象的批处理的典型步骤序列使用createStatement()方法创建Statement对象。使用setAutoCommit()将auto-commit...
2018-09-08 17:51:52
212
原创 Java个人总结——JDBC基本语法
JDBC的使用一、JDBC初始构建JDBC应用程序涉及以下六个步骤:导入JDBC驱动包:需要下载包含数据库编程所需的JDBC的jar包。注册JDBC驱动程序:要求你初始化驱动程序,以便您可以打开与数据库的通信通道。创建连接:需要使用DriverManager.getConnection()方法创建一个Connection对象,该对象表示与数据库的物理连接。执行查询:需要使用类型...
2018-09-08 15:57:25
2036
1
原创 MySQL数据库——多表查询
多表查询多表查询有如下几种:合并结果集;UNION 、 UNION ALL连接查询2.1内连接 [INNER] JOIN ON 2.2外连接 OUTER JOIN ON左外连接 LEFT [OUTER] JOIN右外连接 RIGHT [OUTER] JOIN子查询一、合并结果集作用:合并结果集就是把两个select语句的查询结果合并到一起!合并结果集...
2018-09-08 11:41:53
361
原创 MySQL数据库——多表关系
多表关系多个表之间是有关系的,那么关系靠谁来维护?多表约束:外键约束。1.1 一对多关系一个表中的一天数据对应另一个表中的多条数据,比如:客户和订单:一个客户可以有多张订单分类和商品:一个种类对应多种商品部门和员工:一个部门里有多名员工 …建表原则:在“多”的一方(客户、商品、员工)创建一个字段,字段作为外键指向“一”的一方的主键.例如: 一个人有多本书...
2018-09-07 22:24:34
300
原创 MySQL数据库——各种约束的使用
数据完整性作用:保证用户输入的数据保存到数据库中是正确的。 确保数据的完整性 = 在创建表时给表中添加约束完整性的分类:实体完整性:主键约束(primary key)、唯一约束(unique) 、自动增长列(auto_increment)域完整性:数据类型、非空约束(not null)、默认值约束(default)引用完整性 :外键约束:FOREIGN KEY 一、 实...
2018-09-07 20:04:15
1108
转载 Scanner中nextLine()方法和next()方法
Scanner中nextLine()方法和next()方法的区别我们在使用扫描器Scanner时,遇到了字符串肯定会使用API中定义好的next()和nextLine()方法。两者一个是能读取空格一个是不能读取空格就像下面的样子 当我们把二者交换位置,再来看一下效果 那么这是为什么呢? 简单来说Scanner是一个扫描器,我们录取到键盘的数据,先存到缓存区等待读取,他判断读取结束...
2018-09-04 17:37:15
16867
3
原创 静态淘宝热卖界面(纯CSS)
整理笔记,淘出来了以前刚学HTML时的简单网页,贴出来留个纪念吧….预览: 代码:HTML部分:<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>淘宝特卖</title> &
2018-09-02 19:39:49
1810
原创 Java web前端——JavaScript的DOM、BOM、计时函数
JavaScript的DOMJavaScript主要包括三部分内容:ECMAScript、DOM、BOM1.1 DOM概述通过 HTML DOM,使用 JavaScript访问 HTML 文档的所有元素。当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model)。HTML DOM 模型被构造为对象的树: 通过可编程的对象模型,JavaSc...
2018-09-02 18:38:51
550
1
原创 Java web前端——JavaScript基础使用
JavaScript概述1.1 JavaScript简介JavaScript(LiveScript)一种解释性脚本语言,是一种动态类型、弱类型、基于原型继承的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。1.2 JavaScript发...
2018-09-02 18:18:43
4239
1
原创 Java web前端——CSS使用基础
CSS简介1.1 CSS概念CSS :层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。CSS不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化。多个样式可以层层覆盖叠加,如果不同的css样式对同一html标签进行修饰,样式有冲突的,...
2018-09-02 18:03:27
12337
原创 Java web前端——HTML常用标签
html简介1.1 html概述html全称:Hyper Text Markup Language(超文本标记语言) 超级文本标记语言是标准通用标记语言(SGML)下的一个应用,也是一种规范,一种标准,它通过标记符号来标记要显示的网页中的各个部分。 网页文件本身是一种文本文件,通过在文本文件中添加标记符。 可以告诉浏览器如何显示其中的内容(如:文字如何处理,画面如何...
2018-09-02 17:44:20
24389
4
原创 MySQL数据库——安装与卸载
数据库的安装与卸载下面介绍两个版本(5.5 、5.7)的MySQL的安装:一、MySQL Server 5.5 的安装 启动mysql服务 1 使用services.msc 找到服务启动 ,2 管理员身份运行cmd 停止net stop mysql 启动net start mysql...
2018-09-02 17:16:29
196
原创 MySQL数据库——基础语句练习(一)
三道SQL基础练习题一、设有成绩表如下所示1.查询两门及两门以上不及格的学生姓名2.查询学生平均分3.查询姓名是张三的学生 成绩和4.将学生信息按照 分数倒序5.获取学生信息中 分数最低的学生姓名和分数最高的学生姓名6.查询两门及两门以上不及格同学的平均分。编号 姓名 科目 分数1 张三 数学 902 张三 语文 503 张三 地理 4...
2018-09-02 16:44:21
2296
2
原创 MySQL数据库——DQL数据查询
DQL数据查询-承接前篇数据库执行DQL语句不会对数据进行改变,而是让数据库发送结果集给客户端。 查询返回的结果集是一张虚拟表。主要语法:查询关键字:SELECT 语法: SELECT 列名 FROM 表名 【WHERE –&gt; GROUP BY–&gt;HAVING–&gt; ORDER BY–&gt;LIMIT】SELECT selection_list /要查询...
2018-09-02 16:32:02
408
原创 MySQL数据库——基本操作
概述SQL:全程Structure Query Language(结构化查询语言),SQL被美国国家标准局(ANSI)确定为关系型数据库语言的美国标准,后来被国际化标准组织(ISO)采纳为关系数据库语言的国际标准。 各数据库厂商都支持ISO的SQL标准,普通话 各数据库厂商在标准的基础上做了自己的扩展,方言SQL 是一种标准化的语言,它允许你在数据库上执行操作,如创建数据库、表等等,查...
2018-09-02 15:42:50
173
原创 Java学习笔记——流操作
缓冲流作用:主要是为了增强基础流的功能而存在的,提高了流的工作效率【读写效率】注意:如果使用记事本创建的文件,文件是utf-8或者unicode编码,文件的前面有一个BOM(Byte Order Mark)头,BOM作用指定文件使用的编码类型。GBK编码没有添加bom头。utf-8:EF BB BF unicode 小端: FF FE 66 00unicode 大端 :FE ...
2018-09-02 14:53:24
302
转载 Java就业思想
Java就是用来做项目的!Java的主要应用领域就是企业级的项目开发!要想从事企业级的项目开发,你必须掌握如下要点: 1、掌握项目开发的基本步骤 2、具备极强的面向对象的分析与设计技巧 3、掌握用例驱动、以架构为核心的主流开发方法没有人愿意自己一辈子就满足于掌握了一些代码实现的技巧,别人告诉你要实现什么,你就用代码堆砌来实现别人的要求!你必须学会从整个项目的角度去思考!你必须学会假如...
2018-08-15 17:19:07
716
原创 Java个人总结——File各种操作
File一 、File类是java中的文件操作类,其内部定义了多个构造方法,来接收不同的参数:File(File parent, String child) 根据父路径和 child 路径名字符串创建一个新 File 实例。File(String pathname) //最为常用 通过将给定路径名字符串创建一个 File 实例。 File(Strin...
2018-08-14 22:27:23
618
原创 Java学习笔记——List集合
List集合1.掌握集合的概念以及和数组的对比2.了解集合的框架3.了解Collection接口中的常用方法4.了解泛型的使用及注意事项5.掌握Iterator的工作原理以及使用6.掌握List接口的存储特点7.掌握ArrayList的使用8.了解LinkedList、Vector和Stack的使用第一节 概念1.1 集合的概念集合:就是一个存储数据的容器。集合与...
2018-08-14 20:59:00
254
原创 Java学习笔记——Set接口和Map接口
Set接口和Map接口1.了解Set集合的特点2.掌握Set集合下常用实现类的使用3.了解Map集合的特点4.掌握Map集合下常用实现类的使用5.掌握Map集合的遍历方式6.掌握Collections工具类第一节 Set接口1.1 Set接口常用方法 方法名 描述 ...
2018-08-14 20:49:04
4767
原创 Java学习笔记——文件和流
IO流:文件和流1.了解File类的作用2.掌握File类的构造方法和常用成员方法3.掌握流的作用和原理4.了解流的分类5.掌握字符流和字节流的使用6.掌握转换流的使用第一节 File类1.1 File类作用在java程序中,对磁盘文件进行描述的类。文件和目录路径名的抽象表示形式。1.2 File类的常用构造方法方法名 ...
2018-08-14 20:40:54
413
原创 初识设计模式——策略模式(Java)
策略模式它定义了算法家族,分别封装起来,让他们之间可以互相替换,此模式让算法的变化不会影响到使用算法的客户。Strategy类为所有算法的父类,其定义了一个用户使用接口——AlgorithmInterface(),此接口用于实现各种算法,将计算后的结果返回给调用处。StrategyA、StrategyB、StrategyC表示各种不同的算法子类,他们共同继承Strategy父类...
2018-08-10 22:29:01
199
原创 练手小程序——Java猜拳游戏
猜拳游戏和电脑猜拳,一局定输赢(没事写着玩( • ̀ω•́ )✧)import java.util.Random;import java.util.Scanner;public class Guess { public static void main(String[] args) { // TODO Auto-generated method stub...
2018-08-10 20:35:13
1561
原创 练手小程序——Java电话簿小程序
电话簿功能:添加联系人 查找指定的联系人 查找所有的联系人退出系统界面类显示程序主界面public class UI { public void print() { System.out.println("============================"); System.out.println("=======...
2018-08-10 20:25:02
1667
原创 练手小程序——Java日历小程序
日历小程序功能查看当前日期所在月份的日历输入年份和月份,显示指定年月的日历实现日历的翻页功能界面类public class UI { public void u_1() { System.out.println("\t 日历小程序\n"); System.out.println("**************...
2018-08-10 19:49:25
1883
1
原创 Java学习笔记——常用类、枚举和异常
常用类和异常1.常用基础类 1.1 Date类 1.2 Calendar类 1.3 SimpleDateFormat类 1.4 Math类 1.5 Random类 1.6 System类 1.7 Runtime类2.枚举 2.1 什么是枚举 2.2 枚举结合switch的使用3.异常 3.1异常的概念 ...
2018-08-10 19:10:29
830
原创 Java学习笔记——初识设计模式(单例和简单工厂)
设计模式(单例和简单工厂)设计模式 1 单例设计模式 2 简单工厂设计模式第一节 设计模式设计模式设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。简单理解:特定问题的特定解决方法。1.1 单例设计模式1.1.1 什么是单例: 在程序运行,一个类只需要一个...
2018-08-10 13:04:36
235
原创 Java学习笔记——内部类
内部类1.内部类 1.1 成员内部类 1.2 局部内部类 1.3 静态内部类 1.4 匿名内部类第一节 内部类内部类:一个类中嵌套(包含)另外一个类。包含的类叫内部类,外层类叫外部类。成员内部类:局部内部类:静态内部类:匿名内部类:1.1 成员内部类作为外部类的成员存在,与成员变量和成员方法平级关系。1.1.1 声明:pu...
2018-08-10 12:57:11
177
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人