- 博客(97)
- 资源 (2)
- 收藏
- 关注
原创 Centos下 Nginx安装与配置
Nginx是一款轻量级的网页服务器、反向代理服务器。相较于Apache、lighttpd具有占有内存少,稳定性高等优势。它最常的用途是提供反向代理服务。安装在Centos下,yum源不提供nginx的安装,可以通过切换yum源的方法获取安装。也可以通过直接下载安装包的方法,以下命令均需root权限执行:首先安装必要的库(nginx 中gzip模块需要 zlib 库,rewrite模块需...
2018-10-17 22:51:39
217
原创 Spring事务之事务的传播行为
定义:当事务方法被另一个事务方法调用时,必须制定事务应该如何传播,例如:方法可能继续在现有的事务中运行,也可能开启一个新的事务,并在自己的事务中运行。事务的传播行为可以有传播属性指定,Spring定义了7种类传播行为。 举例: •定义 Cashier 接口: 表示客户的结账操作 •修改数据表信息如下, 目的是用户 Tom 在结账...
2018-10-07 20:40:22
270
原创 spring之事物管理
事务简介: ★ 事务管理是企业级应用程序开发中必不可少的技术,用来确保数据的完整性和一致性。 ★ 事务就是一系列的动作被当成一个独立的工作单元,要么全完成,要么全不完成。事物的属性: 原子性:事务是一个原子操作,由一系列的动作组成,确保动作要么全完成,要么完全不起作用。 一致性:一旦事务的动作完成,事务就被提交,数据和资源就处于一种满足业务格则的一致...
2018-10-07 20:09:21
218
原创 MySQL之子查询
含义:出现在其他语句中的select语句称为子查询或者是内查询。分类: 按照结果集的行列数不同: 标量子查询(结果集只有一行一列) 列子查询(结果集有一行多列) 行子查询(结果集有一行多列) 表子查询(结果集一般为多行多列) 按照子查询出现的位置: ...
2018-10-07 19:06:50
183
原创 Java设计模式之抽象工厂模式
抽象工厂模式(Abstract Factory Pattern)是围绕一个超级工厂创建其他工厂。该超级工厂又称为其他工厂的工厂。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。在抽象工厂模式中,接口是负责创建一个相关对象的工厂,不需要显式指定它们的类。每个生成的工厂都能按照工厂模式提供对象。抽象工厂的介绍意图:提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们...
2018-10-05 16:53:32
141
原创 Java设计模式之工厂方法模式
工厂方法模式: 1. 避免了简单工厂的缺点,不完全满足OCP原则(开闭原则) 2. 工厂方法模式和简单工厂模式最大的不同在于简单工厂模式只有一个(对于一个项目或者一个模块而言)工厂类,而工厂方法模式有一组实现了相同接口的工厂类。 类图: 实例代码:package com.pmj.factoryMethod;/** * ...
2018-10-05 16:06:10
132
原创 Java设计模式之简单工厂
定义: 就是建立一个工厂类,对实现了同一接口的一些类进行实例的创建。简单工厂模式的实质是由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类(这些产品类继承自一个父类或接口)的实例。类图: 实例代码:package com.pmj.SimpleFactory;/** * 定义一个汽车的接口 * @author PP...
2018-10-05 15:33:41
122
原创 Java设计模式之观察者模式(二)
之前我们利用自定义的方式去实现了观察者模式(https://blog.youkuaiyun.com/m0_37618340/article/details/82942857),其实在Java中为我们提供了这样的类和接口,分别是: Observerable类和Observer接口 接下来我们用给定的类实现观察者模式: 首先我们创建目标对象(继承Observable类): ...
2018-10-05 11:43:00
140
原创 Java设计模式之观察者模式(一)
观察者模式:Observer 观察者模式主要用于1:N的通知,当一个对象(目标对象subject或Observable)的状态变化时,他需要及时告知一系列对象(观察者Observer),令他们做出相应 通知观察者的方式有两种,分别是: 推:每次都会把通知以官博的形式发送给所有观察者,所有观察者只能被动接收。 ...
2018-10-05 11:22:11
224
原创 Java多线程之线程的通信
线程通信的常用方法: ● wait()方法:令当前线程挂起并放弃CPU同步资源,使别的线程可访问并修改共享资源,而当前线程排队等候再次对资源的访问。 ● notify()方法:唤醒正在排队等待同步资源的线程中优先级最高者结束等待。 ● notifyAll()方法:唤醒正在排队等待资源的所有线程结束等待。使用两个线程打印 1-100. 线程1, 线程2 交替打印 ...
2018-10-04 20:59:49
163
原创 Java多线程之锁的释放
释放锁的操作: 1. 当线程的同步方法,同步代码块执行结束时 2. 当线程在同步代码块,同步方法中遇到break、return终止了该代码块,该方法的继续执行。 3. 当前线程在同步代码块,同步方法中出现未处理的Error和Exception导致异常结束。 4. 当前线程在同步代码块,同步方法中执行了线程对象的wait()方法,当前线程暂停并...
2018-10-04 20:41:23
1163
原创 Java多线程之线程安全问题
一、线程安全问题存在原因 由于一个线程在操作共享数据的过程中,未执行完毕的情况下,另外的线程参与进行,导致共享数据存在了线程安全问题。二、如何解决线程安全问题? 必须让一个线程操作共享数据完毕以后,其他线程才有机会参与共享数据的操作三、Java中如何实现线程安全:线程的同步机制 方式一:同步代码块 ...
2018-10-03 18:04:07
139
原创 Java基础之多线程
一、基本概念 程序:为完成特定任务,用某种语言编写的一组指令的集合,指一段静态的代码 进程:是程序的一次执行过程,或是正在运行的一个程序。 线程:进程的进一步细化,是一个程序内部的一条执行路径,若一个程序可以同一时间执行多个线程,那么它就是支持多线程的。 二、何时需要使用多线程? 程序需要同时执行两个或者多个任务。 ...
2018-10-03 17:49:31
129
原创 MySQL之COUNT()函数的详细介绍
实验用表:场景一:统计salary(某一列)非空的数量select COUNT(salary) from employees场景二:统计表中数据的行数 方法一:select COUNT(*) from employees 方法二:select COUNT(1) from employees 该方法相当于在当前表的每一列前面都加了一行...
2018-10-01 23:10:57
1401
原创 MySql之分组(聚合)函数
常用的分组函数有: 特点: ①每个组函数接收一个参数 ②默认情况下,组函数忽略列值为null的行,不参与计算 ③有时,会使用关键字distinct剔除字段值重复的条数 注意: 1)当使用组函数的select语句中没有group by子句时,中间结果集中的所有行自动形成一组,然后计算组函数; 2...
2018-10-01 22:50:46
508
原创 MySQL之日期函数
【Date and time】:(补充说明)DATE/TIME 格式: NOW()、CURRENT_TIMESTAMP()与CURRENT_TIMESTAMP、LOCALTIME()与LOCALTIME、LOCAL...
2018-09-29 23:46:10
220
原创 MySQL的分组函数
关键字: group by group by语法可以根据给定字段对查询结果进行分组统计,相同属性的数据为一个组。通常,在每组中通过聚合函数来可以计算组中最大,最小等。 如果group by带有having,则只有满足having后面的条件的组才能输出。 注意: having 必须在group by之后。 * 与分组相关的聚合函数 count() 返回某个...
2018-09-27 23:10:04
1153
原创 MySQL中的常见函数
一、数学函数ABS(x) 返回x的绝对值BIN(x) 返回x的二进制(OCT返回八进制,HEX返回十六进制)CEILING(x) 返回大于x的最小整数值EXP(x) 返回值e(自然对数的底)的x次方FLOOR(x) 返回小于x的最大整数值GREATEST(x1,x2,...,xn)返回集合中最大的值LEAST(x1,x2,...,xn) 返回集合中最小的...
2018-09-27 21:51:07
1137
原创 MySQL中的通配符
MySQL中的常用统配符有三个: %:用来表示任意多个字符,包含0个字符 _ : 用来表示任意单个字符 escape:用来转义特定字符 在MySQL中统配符一般和模糊查询 like 关键字结合使用 1.%的使用方式及注意事项: select * from user where username like '%PP%';...
2018-09-27 21:44:07
21762
1
原创 spring的jdbc操作
使用JdbcTemplate需要的 jar包在这里使用Spring的JDBCTemplate的时候先要把轮子拿过来:除此之外,在Java中操作数据库怎么能不要对应的驱动包呢:JdbcTemplate使用的基本步骤然后再看看Spring的JDBCTemplate的使用大体步骤,这里有一个小例子: 1 package com.spring.test; 2 ...
2018-09-25 00:50:48
136
原创 如何在eclipse中安装spring IDE插件
今天试着在自己的eclipse上安装spring IDE插件,因为sping官网上的链接对不上eclipse的版本 所以总是出问题,所以在这里和大家分享一下最省事的安装spring的插件的方法我们使用eclipse的在线安装,废话不说,直接贴图1、help--》Eclipse Marketplace.2、打开"Popular"标签,然后下拉滚动条,找到SpringToolSuit...
2018-09-25 00:40:03
5153
原创 Spring AOP指定切面优先级
•在同一个连接点上应用不止一个切面时, 除非明确指定, 否则它们的优先级是不确定的. •切面的优先级可以通过实现 Ordered 接口或利用 @Order 注解指定. • 实现 Ordered 接口, getOrder() 方法的返回值越小, 优先级越高. •若使用 @Order 注解, 序号出现在注解中,值越小, 优先级越高. ...
2018-09-22 23:52:51
269
原创 Spring AOP 的5中通知
一、AspectJ 1.AspectJ:Java 社区里最完整最流行的 AOP 框架. 2.在 Spring2.0 以上版本中, 可以使用基于 AspectJ 注解或基于 XML 配置的 AOP 二、在 Spring 中启用 AspectJ 注解支持 • 要在 Spring 应用中使用 AspectJ 注解, 必须在 classpath 下包含 AspectJ ...
2018-09-22 23:18:43
808
转载 java中的异常处理
Java中异常提供了一种识别及响应错误情况的一致性机制,有效地异常处理能使程序更加健壮、易于调试。异常之所以是一种强大的调试手段,在于其回答了以下三个问题:什么出了错? 在哪出的错? 为什么出错?在有效使用异常的情况下,异常类型回答了“什么”被抛出,异常堆栈跟踪回答了“在哪“抛出,异常信息回答了“为什么“会抛出,如果你的异常没有回答以上全部问题,那么可能你没有很好地使用它们。有三个原则可...
2018-09-22 00:23:27
142
原创 java内部类
在java中内部类共分为4中,分别是: 常规内部类、静态内部类、局部内部类、匿名内部类。 一、 常规内部类 常规内部类没有用static修饰且定义在在外部类类体中。 1.常规内部类中的方法可以直接使用外部类的实例变量和实例方法。 2.在常规内部类中可以直接用内部类创建对象 。 实例代码: public...
2018-09-22 00:13:48
125
原创 IDEA的基本使用
IDEA的基础配置 下载好IDEA,免不了一些配置和个人设置。一些设置问题和操作我放在最后讲,因为不影响我们的 使用。先说一下jdk和tomcat的配置。在首页点击configure,找到project structure,打开。进入project目录,添加sdk,选择添加jdk,选择你安装jdk的目录即可。 2.创建普通的动态web项目这样我们一个简单的web项目就创...
2018-09-21 23:56:34
233
原创 Mybatis 快速入门
什么是Mybatis MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。iBATIS一词来源于“internet”和“abatis”的组合,是一个基于Java的持久层框架。iBATIS提供的持久层框架包括SQL Maps和Data ...
2018-09-21 00:46:46
147
原创 Spring AOP 面向切面技术
1.概念: AOP(Aspect Oriented Programming),是面向切面编程的技术。AOP 基于 IoC 基础,是对 OOP 的有益补充 AOP 之所以能得到广泛认可,主要是因为它将应用系统拆分分了 2个部分:核心业务逻辑(Core business concerns)及横向的通用逻辑,也就是所谓的切面 Crosscutting enterprise...
2018-09-21 00:37:54
353
原创 java代理
1.概念 动态代理技术是整个java技术中最重要的一个技术,它是学习java框架的基础,不会动态代理技术,那么在学习Spring这些框架时是学不明白的。 这里明确代理对象的两个概念: 1、代理对象存在的价值主要用于拦截对真实业务对象的访问。 2、代理对象应该具有和目标对象(真实业务对象)相同的方法2.java中的代理"jav...
2018-09-21 00:24:31
121
原创 Spring—通过工厂方法配置bean
工厂方法分类:静态工厂方法,实例工厂方法 --静态工厂方法:直接调用某一个类的静态方法就可以返回Bean的实例 --实例工厂方法:即需要先创建实例本身,再调用工厂的实例方法来返回bean的实例 假设:我们现在有一个Car类,类中有brand和price属性 一、使用静态工厂方法 1.静态工厂方法封装类public class StaticF...
2018-09-20 00:13:14
252
原创 Linux用户管理
linux用户管理常用命令 1)管理用户(user)的工具或命令; useradd 注:添加用户 adduser 注:添加用户 passwd 注:为用户设置密码 usermod 注:修改用户命令,可以通过usermod 来修改登录名、用户的家目录等等; pwcov 注:同步用户从/etc/passwd 到/etc/shadow pwck 注:pwck是校验用户配置文件/etc/pa...
2018-09-19 01:04:16
123
原创 java数据库操作JDBC
JDBC:使用 Java 应用程序“操作”数据库的一门技术1.获取数据库连接 //获取数据库的连接 public static Connection getConnection() throws Exception{ //1.获取数据库连接的基本信息 //1.1 创建 Properties 的对象,以流的形式,将配置文件中的基本信息读入程序 ...
2018-09-19 00:56:36
188
原创 HTTP协议(一)
1.什么是 HTTP 协议 HTTP 超文本传输协议 (HTTP-Hypertext transfer protocol),是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于 1990 年提出,经过几年的使用与发展,得到不断地完善和扩展。它是一种详细规定了浏览器和万维网服务器之间互相通信的规则,通过因特网传送万维网文档的数据传送协议。2....
2018-09-19 00:34:45
308
原创 java使用itext生成PDF
1.导入itext的相关jar包及中文字体文件 相关链接:链接:https://pan.baidu.com/s/1-Em8tOJnIHU3jguRp9tLpw 密码:xf2y 2.代码实现 package com.util.pdf;import java.awt.Color;import java.io.File;impor...
2018-09-18 01:03:11
512
原创 java中获取路径的方式
1、利用System.getProperty()函数获取当前路径: System.out.println(System.getProperty("user.dir"));//user.dir指定了当前的路径 2、使用File提供的函数获取当前路径: File directory = new File("");//设定为当前文件夹 try{ System.out.println(di...
2018-09-18 00:41:43
153
原创 Linux常用命令整理
1.pwd命令 打印工作目录,当你键入 pwd 时,你是在请你的 Linux 系统显示你的当前位置2.cd命令 :用来改变工作目录 3.ls命令:显示你的当前目录的内容 -a — 全部(all)。列举目录中的全部文件,包括隐藏文件(.filename)。位于这个列表的起首处的 .. 和 . 依次是指父目录和你的当前目录。 ...
2018-09-18 00:18:47
166
原创 sql语句创建和管理表
CRAETE TABLE /TRUNCATE TABLE /ALTER TABLE /REANME...TO/DROP TABLE ..操作完以后,自动 commit;所以,rollback 对其操作,没有效果1. 创建表1 )直接创建create table emp1(name varchar2(20),salary number(8,2)default 1000,id number...
2018-09-16 23:06:47
1123
原创 sql语句的多表查询方式
例如:按照 department_id 查询 employees(员工表)和 departments(部门表)的信息。方式一( 通用型):SELECT ... FROM ... WHERESELECT e.last_name,e.department_id,d.department_nameFROM employees e,departments dwhere e.department_id...
2018-09-16 23:03:51
286
原创 js实现PDF在线预览
这几天在项目中遇到一个PDF文件在线预览的功能,在网上找了很多的demo都跑不通,被逼无奈,只好去看PDFproject.js的官方api,经过我用着翻译软件阅读者英文的api,突然发现这个功能只需要几行代码就可以搞定,而网上的demo都是给了一大堆的代码,让人不知道那一句是关键。所以小编在这里特此把最简单的代码分享给大家。第一步:导入pdfobject.min.js ...
2018-09-16 22:47:18
11948
2
原创 sql语法之多表查询方式
一、sql语句的多表查询方式例如:按照 department_id 查询 employees(员工表)和 departments(部门表)的信息。方式一( 通用型):SELECT ... FROM ... WHERESELECT e.last_name,e.department_id,d.department_nameFROM employees e,departments dwhere ...
2018-09-15 00:01:43
1961
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人