- 博客(74)
- 收藏
- 关注
原创 【数据库】PostgreSQL数据库入门(二)
1. 模式模式在PostgreSQL中,类似于目录。同一数据库,不同模式下,可以存放相同名称的数据表。模式下,通常可以存放不同的数据对象,如表、视图、函数、存储过程、触发器、索引等。默认情况下会使用系统创建的public作为数据表的schema。postgres=# \dn List of schemas Name | Owner --------+---------- public | postgres(1 row)通常我们可以使用create关键字直接创建模式,通过[sch
2020-06-27 19:40:16
442
原创 【数据库】PostgreSQL数据库入门(一)
PostgreSQL是一款开源的关系型数据库,其具有丰富的数据类型和强大的SQL编程能力,同时还支持存储非关系型数据。1. 安装与配置本次安装环境是centos7,PostgreSQL数据库版本是12。Debian系Linux发行版可以使用APT直接安装。安装仓库源:yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm安
2020-06-22 21:10:31
1071
原创 shell programming 1
1. Several Commandswc: get a count of the total number of lines, words, characters contained in file.Options: -l: to count the number of lines in a file -c: to count the number of characters in a file -w: to count the number of words in a fileln
2020-05-11 08:48:29
273
原创 【Docker】如何理解Docker
Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机)、bare metal、OpenStack 集群和其他的基础应用平台。一、Docker安装安装准备sudo apt-get remove docker*sudo apt-get update在安装docke...
2020-02-03 18:55:32
207
原创 【Java】解决跨域问题的三种方案
本篇博客会介绍前后端分离项目如何实现跨域请求。CORS(Cross-Origin Resource Sharing)问题的出现主要是因为浏览器的同源策略,同源的要求是:同协议,同IP,同端口。即不能在非同源情况下进行请求,实际上是为了保护用户的安全。首先,准备一下frontend和backend的代码。这里为了创造非同源条件,前端跑在本机的8080端口下,后端跑在本机的8000端口下。...
2020-01-20 22:47:28
8433
2
原创 【Java】Thread深入学习
本篇文章将介绍Thread类相关方法,以及一些重要概念及应用。JDK提供了直观观察线程状态的工具,在学习线程的过程中,可以使用jconsole命令打开Java监视和管理控制台观察线程运行状态。1. setDaemon()守护线程: 当子线程被设置为守护线程时,父线程一旦进入DEAD状态,守护线程也立即进入DEAD状态。示例:package com.juc;/** * 守护线程: ...
2020-01-08 20:57:36
239
原创 【渗透测试】利用永恒之蓝漏洞实现桌面监控
声明:本次使用的是虚拟机环境,旨在演示如何使用nmap和msfconsole这两款工具。一、 NMAP扫描利用nmap 192.168.56.0/24这条命令扫描192.168.56.1 - 192.168.56.255之间的主机,这时候我们发现活跃在局域网上的主机有两台,分别是192.168.56.1和192.168.56.3,其中192.168.56.3是我们即将要攻击的靶机,19...
2020-01-04 12:13:03
4225
2
原创 【PHP】利用PDO、MYSQLI进行数据库访问
如果你喜欢小老弟的这篇文章,那么就请关注并转发完成知识的传递!1. PDO和MySQLiPDO和MySQLi都是PHP中对数据库进行访问的方式。PDO是PHP数据对象,是一种轻量型的封装,较MySQLi更容易理解。两种方法各有不同,以下是两个具体的使用示例。2. PDO登陆实例<?php // 用户类定义 class User { pr...
2019-12-29 22:22:44
267
1
原创 【Java】Spring Data JPA应用实例
1. Spring Data JPA通常,在Java语言中,我们为项目提供数据支持时,常常用到的ORM(Object Relation Mapping)框架有:MyBatis(iBatis)或Hibernate。通常在使用时,我们需要写大量配置文件,比如mapper文件,hibernate cfg文件等。Spring Data Jpa集成在SpringBoot中,因为SpringBoot是一款...
2019-12-29 18:06:24
568
原创 【Python】Scrapy完成电影信息爬取并存入数据库
本文使用了scrapy框架对电影信息进行爬取并将这些数据存入MySQL数据库。一、安装相关python模块根据你所使用的python包管理器安装相应的模块。比如使用pip:pip install scrapypip install pymysql二、创建scrapy项目和其他python框架一样,利用scrapy startproject projectname命令创建项目即可:...
2019-12-26 23:42:27
2050
原创 【Python】利用决策树分类器对鸢尾花进行分类
1. 决策树(监督学习)决策树是一种树形结构,其中每个内部节点表示一个属性上的测试,每个分支代表一个测试输出,每个叶节点代表一种类别。1.1 特征选择特征选择最终会影响决策树的分类效率。通常在进行特征选择时,会考虑额两个指标:信息增益和信息增益比。1.2 生成算法ID3(信息增益)C4.5(信息增益率)CART Classification and Regression Tre...
2019-12-18 12:24:21
9398
2
原创 【Git】使用github的Actions功能进行自动化测试
github的action功能其实就是对项目代码进行自动化测试,从而保证push代码的正确性。利用action功能,你可以选择github提供的各种测试环境(windows,Linux, MaxOS)运行你的项目。不过,github的action功能暂未开放,需要点击链接进行试用申请。链接: https://github.com/features/actions/signup , 在这之后,你就...
2019-10-15 11:19:35
4767
1
原创 【Java】Java8新特性(Stream)
一、StreamJava8中扩展了JavaAPI,增加了许多特性,例如lambda,和流操作。流操作即是将对象转换成流进行操作,这样方便我们进行映射、筛选、限制等操作,这有点像操作数据库。流转换分为两种方式:串行流stream()、并行流parallelStream()。几乎Java中的所有集合类都可以进行流操作,这大大简化了我们的程序代码,同时可读性会变高。但简化操作就和Syntax Suge...
2019-08-25 22:59:55
186
1
原创 【Java】SpringBoot项目支持HTTPS
HTTPS其实是(HTTP OVER SSL/TLS),是对传统HTTP的请求方式进行加密。使用HTTPS协议进行传输的所有数据都会被加密,从而保证数据传输时的安全性,同时也大大降低了数据劫持后被解密的可能性。一般来说,使用HTTPS需要申请相应的证书,开发这也可以利用自己本地的Java环境申请项目开发用的免费证书。一、本地终端下生成证书已经配置好JDK环境的可以直接执行以下命令,没配的...
2019-08-25 21:26:56
1374
1
原创 【Java】ActiveMQ实例
一、ActiveMQActiveMQ是ASF(Apache Software Foundation)的一款消息中间件(middle-ware),消息中间件主要完成的是消息的接收、存储和转发。主要实现的模式是生产消费模式、订阅发布模式。其主要区别是,生产消费模式中,生产完消息,消息一经消费,便不再存在。发布订阅模式中,一条消息可以有多个订阅者,即一条消息的消费者可以有多个。消息中间件的主要作用...
2019-08-25 13:36:45
296
1
原创 【Java】Quartz定时任务调度
Quartz是一个定时任务调度框架,主要包含三个部分(JobDetail, CronTrigger, Scheduler)。通过设定Cron表达式从而在特定时间执行特定任务。Quartz底层运用了TimerTask创建定时任务调度线程。使用Quartz,需要创建spring配置文件和任务。一、导入dependency <dependency> <...
2019-08-23 08:28:31
256
1
原创 【Java】tkMapper(通用mapper)在项目中的应用
这片主要讲如何使用通用mapper从而简化CRUD操作,后面会有小实例。一、导入依赖 <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version...
2019-08-22 08:57:48
922
2
原创 【Java】Shiro权限框架在项目中的应用
同样,忙于校招,忙于提升自己,忙于项目。直接把项目中的代码拿来分享给大家。一、配置ShiroFilter <context-param> <param-name>contextConfigLocation</param-name> <param-value> classpath:spring/spring-*.x...
2019-08-22 08:44:43
607
2
原创 【Java】iText & POI
iText是一个可以生成PDF文档的工具。POI可以用来读取Word、Excel文档。最近由于在做项目,所以很久没更新博客了,这次博客更新是项目中使用的小demo,希望可以帮助到需要的人。 --来了,小老弟iText <dependency> <groupId>com.itextpdf</groupId> <...
2019-08-19 15:14:07
933
1
原创 【Java】文件参数拦截器实例
参数拦截器import org.springframework.web.servlet.HandlerInterceptor;import org.springframework.web.servlet.ModelAndView;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServl...
2019-08-02 11:02:44
447
1
原创 【Java】SpringMVC拦截器
1.定义拦截器实现HandlerInterceptor接口继承HandlerInterceptorAdaptor类2.拦截器方法preHandle:拦截于请求刚进入时,进行判断,需要boolean返回值,如果返回true将继续执行,如果返回false,将不进行执行。postHandle:拦截于方法成功返回后,视图渲染前,可以对modelAndView进行操作。afterCompl...
2019-08-01 21:38:42
273
1
原创 【Java】MyBatis缓存机制
1.一级缓存|二级缓存一级缓存:是指当使用SqlSession从数据库中取数据时,Executor会在优先查找本地缓存中的数据,如果命中缓存,则直接返回本地缓冲区中的数据,否则会从数据库中进行查找,查找结果缓存到本地的同时,发送给SqlSession。当第二次查询SQL语句相同时,会直接从本地缓存中拿取数据。session级别的一级缓存是靠PerpetualCache(内部原理Hash...
2019-08-01 17:22:29
171
2
原创 【Java】使用MyBatis框架分页的五种方式
初始准备创建分页对象类,方便模块间传值//PageInfo.javaimport lombok.Data;@Datapublic class PageInfo { private int pageNo; private int pageSize;}定义DAO层接口import org.apache.ibatis.session.RowBounds;...
2019-07-31 17:52:31
2450
3
原创 【Java】SpringMVC实现文件上传下载
(1)文件上传操作public static final String FILE_LOCATION = "/home/huangwei/Desktop/";public void upload(MultipartFile... files) { for (MultipartFile file : files) { String fileName = file.getO...
2019-07-29 21:54:04
182
2
原创 【Java】AIO实例
一、blocking/non-blocking | sync/async1.blocking/non-blocking: 描述的是方法会不会阻塞线程的执行,使线程进入blocking状态2.sync/async:描述的是数据读写方式sync:用户线程参与数据读写由内核线程发起读写,用户只需要关注I/O完成后的回调,不需要参与具体的I/O过程二、AIO(Asynchronous In...
2019-07-29 21:52:14
454
4
原创 【Java】WebSocket实例
一、DEMO实现(1)客户端实现。<button onclick="sendMsg()">发送消息</button><script type="text/javascript"> var webSocket = new WebSocket('ws://localhost:8080/TestWebSocket/websocket/' + 'huangwei...
2019-07-29 21:48:57
1439
3
原创 【Java】NIO实例
一、重要概念1. IO的分类BIO(Blocking IO):同步阻塞式IONIO(New IO \ NonBlocking IO):同步非阻塞式IOAIO(Async IO):异步非阻塞式IO2. NIO的两个重要概念Channel(信道):Channel是一个对象,可以通过它读取和写入数据。拿 NIO 与原来的 I/O 做个比较,通道就像是流,而且他们面向缓冲区的。Select...
2019-07-20 10:57:34
236
1
原创 【Java】线程创建
a.实现Runnable接口,创建Thread类,重写run()方法,调用start方法 public static void main(String[] args) { Thread thread = new Thread(new MyRunnable()); thread.start(); } static class MyRunnable implements Runnab...
2019-07-20 09:16:20
103
原创 【数据库】数据缓存解决方案
一、数据缓存热点数据缓存可以增加系统的健壮性,提升系统的性能。二、MySql和redis数据解决方案三、常用的非关系型数据库概览数据库名称类型持久化特性面向的业务场景Memcached内存型否掉电即失,可靠性差动态减轻数据库负载redis内存型是具备分布式特性,可靠性高数据处理业务复杂和安全性较高的系统MongoDB文档型是查询...
2019-07-01 16:33:28
802
1
原创 【Redis】Redis的使用
因为之前用的文本文档作的笔记,这次是将其记录在博客上,所以只能以代码的形式规范格式了,各位看官见谅。 --------来了,小老弟一、String类型操作赋值操作: set key value 如果给key再次赋值,新值会覆盖原值取值操作: get key ...
2019-07-01 16:28:03
470
1
原创 【Java】 MyBatis的使用
一、ORM(Object Relation Mapping)框架ORM框架所解决的问题:阻抗不匹配(数据库查询所得到的数据和Java类型不匹配)ORM框架需要依赖于数据源(DataSource),常用的数据库连接池:C3P0、Druid、DBCP常见的ORM框架MyBatis 、 Hibernate 、 Spring JDBC 、 JPA二、MyBatis初步使用配置数据源 ...
2019-07-01 16:17:25
387
原创 【Java】JVM虚拟机内存模型
一、jvm概述java version "1.8.0_191"Java(TM) SE Runtime Environment (build 1.8.0_191-b12)Java HotSpot(TM) 64-Bit Server VM (build 25.191-b12, mixed mode)1. jvm两种类型client:GUI等java程序的运行。server:大型后台服务...
2019-07-01 16:09:31
384
1
原创 【Nutz】Nutz起步
一、Nutz是一组轻便小型的框架集合,可以极大程度上提高开发人员的生产力,更多内容请点击访问Nutz官网。Nutz主要包括以下几个模块:DAO:针对JDBC进行了薄封装,事务模板,无缓存IoC:JSON风格配置文件,声明时切片支持MVC:注解风格配置,内置文件上传功能JSON:实现了对JSON的解析和渲染Castors:Java对象类型的转换Lang:更简洁的Java函数以及更丰富...
2019-06-28 14:26:09
1442
原创 【Linux】用户管理和硬件设备
一、Linux用户1. Linux下用户可以分为三大类:超级用户、系统用户和普通用户超级用户:用户名为root,具有一切权限,一般用来进行系统维护系统用户:Linux正常工作所必需的内建用户,系统用户不能用来登录普通用户:让使用者能够使用Linux系统资源而建立的,我们大多数用户属于此类2. 每个Linux用户都有UID,超级用户(0),系统用户(1-499),普通用户(500-60...
2019-06-26 17:05:24
298
原创 【Linux】vi编辑器的使用
VI编辑器的工作模式编辑模式:用来输入和编辑文件的模式指令模式:用来存盘、退出的模式两种模式之间的切换方式:1. 可以通过按键I或按键A进入编辑模式2. 可以通过按键Esc进入指令模式退出VI编辑器指令模式下,退出vi编辑器一般有以下几种种形式:指令作用:q如果用户只是读文件的内容而未对文件进行修改,可以使用“:q”退出vi。:q!...
2019-06-25 15:06:26
170
1
原创 【Linux】交互命令总结(二)
交互命令总结(一),请点击https://blog.csdn.net/weixin_43358075/article/details/93329559四、网络命令hostname [主机名]:显示或设置主机名ping [参数] 主机名(或IP地址):测试本主机和目标主机的连通性-c count:共发出count次信息,不加此项,则发无限次信息。-i interval:两次信息之间...
2019-06-22 16:49:31
954
原创 【Linux】交互命令总结(一)
一、文件和目录操作命令pwd: 打印当前目录所在位置cd: cd -(回到上一次所进入的目录) 、 cd ~(回到用户目录)、 cd /*(回到根目录)、 cd …(返回上级目录)ls: 列出当前目录下文件的信息linux操作系统在查看某一目录下的文件时(ls -a),所列出的文件名可能有多种颜色,用以区分文件类别:蓝色-目录 绿色-可执行文件 红色-压缩文件 浅蓝色-链接文件...
2019-06-22 15:20:38
1562
原创 【Java】Shiro经典五张表建立
在用户-角色-权限管理系统一般会涉及5张表,分别为:user --> 用户表role --> 角色表permission --> 权限表user_role --> 用户-角色关联表role_permission --> 角色-权限关联表tb_usertb_roletb_permissiontb_user_roletb_role_...
2019-06-22 15:16:30
3438
1
原创 【Spring】SpringMVC框架理解
SpringMVC一、配置步骤二、原理三、注解四、自动装配注解五、数据对象一、配置步骤配置web.xml<context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring-*.xml</param-value>...
2019-06-19 20:11:56
189
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人