自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

bobozai86的博客

生活与技术

  • 博客(28)
  • 资源 (5)
  • 问答 (6)
  • 收藏
  • 关注

原创 synchronized对象监视器为Class时的使用

synchronized加到静态方法上或者synchronized(class)代码块是给Class类上锁。Class锁对类的所有对象都其作用。例如:1、创建一个Service类package com.iie;/** * Created by bo on 2018/3/29. */public class Service { synchronized public static...

2018-03-29 22:39:13 594

原创 Centos安装snort

1、安装依赖sudo yum install gcc flex bison zlib zlib-devel libpcap libpcap-devel pcre pcre-devel libdnet libdnet-devel tcpdump2、安装daqyum install https://www.snort.org/downloads/snort/daq-2.0.6-1.centos7.x8...

2018-03-29 14:38:27 1802

原创 synchorinzed对象监视器为Object时的使用

今天学习了java线程同步的synchronized用法,当监视器对象为Object时,总结了如下知识点:synchronized同步方法1、synchorized修饰非静态方法时,synchorinzed获得的锁都是对象锁,而不是把一段代码或方法当作锁,哪个线程先执行synchronized方法,哪个线程就持有该方法所属对象的锁Lock,那么其他线程只能呈等待状态,前提是多个线程访问的是同一个对...

2018-03-28 22:29:31 489

原创 java多线程编程核心技术——第一章学习总结

第一章主要介绍了java怎样创建一个线程及线程的特性,其中有一个Thread类的api比较容易误解。1、currentThread()currentThread()线程返回的是代码段正在被哪个线程调用的信息。public class Run { public static void main(String[] args) throws InterruptedException { ...

2018-03-27 22:31:10 181

原创 java守护线程

在java线程中有两种守护线程,一种是用户线程,另一种是守护线程。守护线程是一种特殊的线程,它的特性有“陪伴”的含义,当进程中不存在非守护线程了,则守护线程自动销毁。典型的守护线程就是垃圾回收线程。只有当最后一个非守护线程结束时,守护线程才随着JVM一同结束工作。例如:定义一个线程在run方法中设置永远不结束,启动后一直执行package com.iie;/** * Created by b...

2018-03-26 22:15:34 184

原创 Nginx+Tomcat实现动静分离

1、首先搭建tomcat环境,从官网下载tomcat,解压,启动。tomcat默认是80端口。2、修改nginx.cnf配置文件,使所有的所有的动态资源请求代理到tomcat,静态资源请求由nginx处理。erver { listen 80; server_name localhost; #charset koi8-r; ...

2018-03-23 15:28:09 1047

原创 动静分离

什么是动静分离为了提高网站的响应速度,减轻程序服务器(Tomcat,Jboss等)的负载,对于静态资源比如图片、js、css等文件,我们可以在反向代理服务器中进行缓存,这样浏览器在请求一个静态资源时,代理服务器就可以直接处理,而不用将请求转发给后端服务器。用户请求的动态文件比如servlet,jsp则转发给Tomcat,Jboss服务器处理,这就是动静分离。这也是反向代理服务器的一个重要的作用。参...

2018-03-23 10:47:56 588

原创 Nginx location匹配规则

1、location匹配命令~      #波浪线表示执行一个正则匹配,区分大小写~*    #表示执行一个正则匹配,不区分大小写^~    #^~表示普通字符匹配,如果该选项匹配,只匹配该选项,不匹配别的选项,一般用来匹配目录=      #进行普通字符精确匹配@     #"@" 定义一个命名的 location,使用在内部定向时,例如 error_page, try_files2、locat...

2018-03-22 16:04:08 555

原创 linux安装Nginx教程

1、首先到Nginx官网下载Nginx,官网地址:http://nginx.org/en/download.html第二列是linux版本,第四列是win版本,这里我们下载稳定版的linux版本Nginx-1.12.2。2、把下载的Nginx-1.12.1.tar.gz上传到vps上,解压。各个目录介绍如下。src目录:存放Nginx的源代码。man目录:存放Nginx的帮组文档。html目录:存...

2018-03-21 20:25:14 260

原创 彻底解决Spring MVC中文乱码问题

我们在web项目中可能需要传递一些中文的参数,这时如果不进行处理,后台接收到的参数是乱码导致不能获得预期的效果。对于这种情况,首先确保我们jsp页面时utf-8编码。1、对于post请求,我们可以在web.xml配置文件中添加过滤器:<filter> <description>字符编码过滤器</description> <f...

2018-03-21 17:24:44 7140

原创 SpringMVC接收日期类型参数转换

        在做Web开发的时候,页面传入的都是String类型参数,SpringMVC可以对一些基本的类型进行转换,但是对于日期类型的转换可能就需要我们配置,大概有3中方式可以实现。1、如果查询类是我们自己写,那么在属性前面加上@DateTimeFormat(pattern="yyyy-MM-dd"),即可将String转换为Date类型,如下:@DateTimeFormat(pattern...

2018-03-21 16:12:58 1066

原创 使用MockMvc测试SpringMVC Controller

概述        对项目进行集成测试时,希望能够通过输入URL对Controller进行测试,如果通过启动服务器,建立http client进行测试,这样会使得测试变得很麻烦,为了测试Controller而不需要启动服务器,我们需要一些Servlet相关的模拟对象,比如MockMVC、MockHttpServletRequest、MockHttpServletResponse、MockHttpS...

2018-03-21 10:03:31 431

原创 java线程安全和不安全

线程安全就是多线程访问时,采用了加锁机制,当一个线程访问该类的某个数据时,进行保护,其他的线程不能进行访问直到该线程读取完,其他线程才可使用。不会出现数据不一致或者数据污染(Vector,HashTable)。线程不安全就是不提供数据访问保护,有可能出现多个线程先后更改数据造成所得到的数据是脏数据(ArrayList,LinkedList、HashMap等)。        如果你的代码所在的进程...

2018-03-20 20:09:31 238

原创 java获取内存及硬盘使用情况

以前,java没有明确的方法来确定一个分区的可用空间。我们使用执行命令:cat /proc/meminfo df -hl来查看内存、硬盘使用情况:root@ubuntu:~# cat /proc/meminfoMemTotal: 3936412 kBMemFree: 1581248 kBMemAvailable: 2814556 kBroot@ub...

2018-03-20 15:36:13 3999 2

原创 Spring整合Junit测试后配置事务

很多时候我们不希望单元测试的结果玷污了数据库,即执行的测试数据不去修改数据库,只需要告诉我们最终的测试结果即可,那么怎样也让我们的单元测试也具有事务功能呢?1、方法级别的在测试方法上添加注解@Rollback(true)。public class FooServiceTest{ @Autowired private FooService fooService; @Test...

2018-03-19 21:39:56 529

原创 Spring Data简介

        Spring Data 是Spring 的一个子项目, 旨在统一和简化对各类型持久化存储, 而不拘泥于是关系型数据库还是NoSQL 数据存储。无论是哪种持久化存储, 数据访问对象(或称作为DAO,即Data Access Objects)通常都会提供对单一域对象的CRUD (创建、读取、更新、删除)操作、查询方法、排序和分页方法等。Spring Data则提供了基于这些层面的统一接...

2018-03-19 20:52:20 1016

原创 Mockito单元测试—verify

1、校验方法是否调用Mockito提供vertify关键字来实现校验方法是否被调用,具体调用如下例子:@Test public void update() throws Exception { boolean result = personService.update(1, "new name"); //验证mockDao的getPer是否被调用 ...

2018-03-15 21:39:53 35789 2

转载 网站分析数据(即用户行为数据)的三种收集方式详解

        回顾网站数据分析历史,从“您是第***位来访用户”到现在百家齐放的专业工具提供商,网站分析已经逐渐发展衍化成一门科学。但面对形态各异的分析数据,很多人仍然困惑于数据的来源,了解数据的收集原理,也许对你解决这些困惑有所帮助。眼下网站分析数据主要有三种收集方式:Web日志、JavaScript标记和包嗅探器。1. 以Web日志的方式      Web日志收集数据的过程示意图如下:   ...

2018-03-15 20:10:49 18553 2

原创 在Ubuntu中永久添加DNS

    DNS信息是由/etc/resolv.conf提供的,它是每次开机时,由/sbin/resolvconf生成的。/etc/resolv.conf是/run/resolvconf/resolv.conf的符号链接。        直接修改/etc/resolv.conf文件添加DNS的方法并不可行,因为重启系统后,该配置文件会被重新覆盖。在Ubuntu中有一个resolvconf的服务,这个...

2018-03-15 14:22:59 9744 2

原创 Linux磁盘分区

1、各硬件设备在Linux中文件名在Linux系统中,每个设备都被当作一个文件系统来对待,在Linux系统中几乎所有的设备都会在/dev这个目录内。设备设备在linux的文件名ide硬盘/dev/hd[a-d]SCSI/SATA/USB硬盘/dev/sd[a-p]u盘/dev/sd[a-p]软驱/dev/fd[0-1]打印机25针:/dev/lp[0-2]USB: /dev/usb/lp[0-15...

2018-03-14 20:26:26 207

原创 Linux下安装配置JDK

1、下载jdk首先到oracle官网下载jdk最新版本,32位操作系统下载x86,64位操作系统下载x64.2、解压安装在/usr目录下新建一个java文件夹,并发下载的jdk拷贝到此文件夹下面。cd /usrmkdir javacp jdk /usr/java进入/usr/java目录下,执行解压命令 tar -zxvf jdk.tar.gz。3、配置环境变量执行命令:vim /etc/rc...

2018-03-14 17:21:08 154

原创 mysql操作datetime字段统一加上一星期的时间

mysql操作datetime字段统一加上一周的时间:update test set time = DATE_ADD(time,INTERVAL 7 DAY)

2018-03-14 15:42:31 3121

原创 Ubuntu安装完成后设置root密码

安装完Ubuntu后默认是没有主动设置root密码的,也就无法进入根用户。但我们在安装系统的时候,其中有一步是设置了一个普通的用户及密码。1、使用安装时设置的用户登录,登录后在终端输入命令sudo passwd,回车。根据提示输入密码2、再次输入密码,提示密码已经更新成功。3、注意:这个新密码就是root的密码,可以与当前用户的密码不同。在终端中输入 su root,然后输入root的密码,验证成...

2018-03-14 11:35:47 5781 1

原创 Ubuntu16.04修改网卡名enpXs0为eth

安装完Ubuntu16.04之后,执行ifconfig -a命令,查看网卡信息,结果列出的网卡名称全是enp1s0、enp2s0等这样的名称,从15之后,Ubuntu的网卡命名就已经修改了,看起来很别扭,如果要想改为之前的eth这样的命名,可以通过如下操作。1、修改/etc/default/grub文件sudo vim /etc/default/grub 找到GRUB_CMDLINE_LINUX=...

2018-03-14 11:19:55 2724

原创 Ubuntu 从光盘上读取数据出错,请确认光盘已被放置在驱动中

今天安装Ubuntu Server16.04,使用UltraISO把镜像文件写入到u盘,但是安装时,u盘无法挂载(之前安装的桌面版一直就没遇到过这个问题),网上百度的教程,推荐使用win32diskimager把镜像写入到了盘中。尝试使用下,果然可以。...

2018-03-14 10:22:33 8907 1

原创 mysql错误SQL state [HY000]; error code [1366]; Incorrect string value: '\xF0\xBF\xAA\xB7\xEF\xBF...'

今天在运行程序插入数据库时,出现了如下的bug:org.springframework.jdbc.UncategorizedSQLException: PreparedStatementCallback; uncategorized SQLException for SQL [replace into task_result values(?,?,?,?)]; SQL state [HY000];...

2018-03-07 19:26:07 8607

原创 CentOS安装docker

Docker这两年大受追捧,风光无二。Docker是一个轻量级容器技术,类似于虚拟机技术(xen、kvm、VMware、virtualbox)。Docker是直接运行在当前操作系统(Linux)之上,而不是运行在虚拟机中,但是也实现了虚拟机技术的资源隔离,性能远远高于虚拟机技术。1、CentOS安装sudo yum updatesudo yum install docker2、启动Docker3、...

2018-03-06 19:43:36 921

原创 web单页面应用

1、web多页面与单页面定义网页是多个页面组成的,页面之间的切换是通过超链接完成的,这通常也是最传统的开发模式。单页 Web 应用 (single-page application 简称为 SPA) 是一种特殊的 Web 应用。它将所有的活动局限于一个Web页面中,仅在该Web页面初始化时加载相应的HTML、JavaScript 和 CSS。一旦页面加载完成了,SPA不会因为用户的操作而进行页面的...

2018-03-05 20:46:45 848

TCP/IP详解

这是tcp、ip实现的代码,希望能给网络爱好者带来帮助,大家一起学习。

2013-05-18

数据结构试验报告

数据结构试验报告,里面有线性表,树的遍历,图的遍历,排序等代码

2013-01-10

基于VC++的MP3

这是基于MFC做的MP3,希望能能给初学者带来好处,大家一起进步

2013-01-10

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除