- 博客(35)
- 资源 (10)
- 收藏
- 关注
原创 java基础知识总结之JVM内存管理(一)
我们首先了解下什么是JVM。JVM(Java Virtual Machine),简而言之就是java程序的运行环境(java二进制字节码的运行环境)。以下表格比较了JVM、JRE和JDK之间的关系: JVM Java Virtual Machine JRE JVM+基础类库 JDK JVM+基础类库+编译工具 开发javase程序 JDK+IDE工
2021-08-01 16:24:31
298
转载 java基础知识总结之初始化
一、成员初始化java尽力保证所有变量在使用前都能得到恰当的初始化。如果方法的局部变量没有初始化,java会出现编译时错误,比如:但是,类的每个基本类型的数据成员都保证会有一个初始值:public class Test { public static void main(String[] args){ InitTest it = new InitTest(); it.printInit(); }}class InitTest {
2021-07-31 17:49:42
328
原创 java基础知识总结之static关键字
通常来说,当创建类时,就是在描述那个类的对象的外观与行为。除非用new创建那个类的对象,否则,实际上并没有获得任何对象。执行new来创建对象的时候,数据存储空间才被分配,其方法和属性才能被外界调用。有两种情形用上述方法无法解决。一,只想为某特定属性分配单一存储空间,而不考虑究竟要创建多少对象,甚至根本不创建对象;二,希望某个方法不与包含他的类的任何对象实例关联在一起。所以,即使从未创建某个类的对象,也可以调用其static方法或访问其static属性。通常,必须创建一个对象,并用它来访问属性或方法。因为
2021-07-29 22:50:24
145
原创 java中的基本类型
在程序设计中经常需要用到一系列类型,需要特别对待他们。我们知道new出来的对象存储在“堆”里,所以用new来创建一个特别小的简单的变量,往往不是很有效。因此,java不用new来创建变量,而是创建一个并非引用的“自动”变量。这个变量直接存储“值”在栈中,因此更加有效。java需要确定每种基本类型占存储空间的大小。下图是java的9种基本类型的大小和值范围,以及对应的包装器类型: 基本类型 大小 最小值 最大值
2021-07-28 22:03:53
248
原创 renren-security开源版框架搭建并新建页面
renren-security是基于Spring、MyBatis、Shiro框架,开发的一套后台脚手架框架(权限系统),极低门槛,拿来即用。支持分布式部署、Quartz分布式集群调度、Activiti工作流、部门管理、数据权限、云存储等功能。今天就来教大家搭建一个renren-security框架。1、首先,访问下载框架源码:gitee地址,下载完整zip2、解压文件到项目目录,使用开发工具(比如idea)打开项目。如下图所示目录结构:3、在renren-admin下db目录找到my
2021-05-14 09:56:57
1718
2
原创 linux使用ftp传输文件导致文件损坏
生产中需要在linux服务器和ftp服务器之间传输文件,但是用ftp命令会导致文件损毁,文件无法正常运行。原来通过linux向ftp服务器上传文件有两种模式:字符模式(ASCII)和二进制模式(Binary)。默认是ASCII模式,当用ASCII模式传输非文本文件时,会对文件进行转译,破坏源文件。一般上传exe文件和压缩包要用二进制模式。具体操作:登录ftp后,上传文件前,在ftp>状态下输入bin即可。然后再put /root/test.war /test.war 就可以了..
2020-05-19 17:52:38
2872
2
原创 linux删除挖矿病毒
通过top查看cpu占用细节,找到占用超过90%以上的服务,就是病毒程序了。比如sysupdate服务超过90%ps -ef | grep sysupdatekill pid杀掉进程首先linux用户比如root或者其他创建的密码要复杂。然后,一般病毒文件会放在tmp文件夹下,因为tmp的权限一般会是777,所以要tmp权限设置为744或者其他。用root用户删除tmp文...
2020-04-29 15:23:22
1108
原创 linux下redis集群搭建
我的这篇文章介绍了如何安装redishttps://blog.youkuaiyun.com/weixin_39202006/article/details/102915831安装完redis后,接下来可以搭建redis集群。首先在redis安装目录下新建目录redis_cluster/7000然后在7000目录下创建文件touch 7000.conf输入以下内容:bind ...
2020-04-27 09:57:20
169
原创 linux下安装jenkins
首先下载需要的jenkins版本,下载地址:http://pkg.jenkins-ci.org/redhat/下载速度慢的可以使用如下链接下载:https://download.youkuaiyun.com/download/weixin_39202006/12060624下载到本地后,在当前目录下使用root用户运行一下命令rpm -ih jenkins-2.157-1.1.noarch....
2019-12-28 17:11:54
157
原创 centos下安装nginx
mkdir /usr/local/nginxcd /usr/local/nginx/从http://nginx.org/download/上下载相应的版本,比如下载nginx-1.5.9.tar.gz解压tar.gz文件tar -zxvf nginx-1.5.9.tar.gz将解压后的文件内容放到/usr/local/nginx下,执行以下命令./configure ...
2019-12-17 15:27:37
111
原创 linux环境下安装rabbitmq
下载erlang包http://erlang.org/download/otp_src_20.3.tar.gz放在/usr/local/erlang目录下tar -xzvf otp_src_20.1.tar.gzcd otp_src_20.1./configure --prefix=/usr/local/erlang --with-ssl --enable-threads ...
2019-11-20 11:00:22
153
原创 Linux下的redis主从安装和部署
在http://download.redis.io/releases/下载合适的redis版本,比如redis-4.0.0.tar.gz放在/usr/local/redis目录下cd /usr/local/redistar -zxvfredis-4.0.0.tar.gzmake && make install一般都会报gcc错误,这时安装gcc就行了yum...
2019-11-05 15:00:33
171
转载 CentOS7使用firewalld打开关闭防火墙与端口
1、firewalld的基本使用启动: systemctl start firewalld关闭: systemctl stop firewalld查看状态: systemctl status firewalld开机禁用 : systemctl disable firewalld开机启用 :systemctl enable firewalld2.syste...
2019-11-05 14:51:30
119
原创 linux通过二进制包安装mysql
f将mysql二进制包传到linux服务器上/usr/local目录下tar -zvxf mysql-5.7.27-linux-glibc2.12-x86_64.tar.gz mysql更改用户用户和组chown -R mysql:mysql mysql/cd mysql/support-filestouch my_default.cnfvim my_default...
2019-10-25 16:25:17
420
原创 /dev/mapper/cl-root 使用100%
程序报错:内存空间不足通过df -h查看,发现/dev/mapper/cl-root 目录占用达到100%在/目录使用du -sh * 查看目录使用空间大小发现是nohup.out文件过大,使用命令cat /dev/null > nohup.out空间释放注意:不能手动删除文件,否则会出现内存没有释放的情况。如果不小心进行了删除操作,使用命令lsof-n |...
2019-10-14 15:51:48
1860
原创 linux下安装java
1.下载jdk8在如下链接http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html选择 jdk-8u221-linux-x64.tar.gz 下载2.创建jvm文件夹在/usr/bin目录下创建名为jvm的文件夹sudo mkdir jvm3.将下载的包解压到jv...
2019-08-20 14:48:50
115
原创 python加入本地文件
因为学习人工智能,需要导入本地的文件,使得诸如import myself_file能成功。要解决这个问题,只需要在python的安装目录下,比如C:\Python37\Lib\site-packages目录下,新建xx.pth文件,将要导入的文件的目录放入其中,就大功告成了D:\xxx1\workspace\xxx2\xxx3\xxx4D:\xxx1\workspace\xx...
2019-08-05 17:46:00
453
原创 Dockerfile运行docker服务
#母容器FROM java:8 #解决docker内java程序获取时间不一致问题RUN echo "Asia/Shanghai" > /etc/timezone#挂载VOLUME /tmp ADD test.jar /test.jarENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/t...
2019-07-31 18:11:29
330
原创 centos7下安装jupyter
1、首先安装sqlite-develyum install sqlite-devel2、安装python3python 3.6.2版本下载地址 https://www.python.org/downloads/release/python-362/新建目录mkdir -p /usr/local/python3将安装包进行解压$tar -xzvf Python-3...
2019-07-18 10:55:27
796
1
原创 springboot+mybatisplus实现自定义分页
xml层<select id="getRecords" parameterType="java.util.HashMap" resultType="com.dongzhengafc.common.entity.approval.ApprovalRecordsEntity"> select * from table1 <where> <if...
2019-07-12 13:51:56
841
原创 小程序获取rundata解密-java后台
在pom文件中引入解密jar包 <dependency> <groupId>org.bouncycastle</groupId> <artifactId>bcprov-jdk15on</artifactId> <version>1.59</version&
2018-06-16 10:54:12
1097
原创 Maven生成可以直接运行的jar包
maven生成可直接运行的jar包的方式有很多种,具体可以看这一篇:点击打开链接我这里介绍一种自己常用的:<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> ...
2018-06-08 10:48:09
1471
原创 linux下的tomcat实现https访问
在腾讯云上买了个服务器然后加上域名,想作为小程序的后台,结果小程序一定要https通信,所以还要到腾讯云申请一个ssl文件,这个可以申请一年免费的,申请完后会有一个压缩包,解压后找到tomcat目录下的jks文件,放到linux下的tomcat的安装目录的conf下,然后在同一级的server.xml中加入下面这段: <Certificate cert
2018-03-16 15:10:14
2196
原创 由一次服务器升级引起的苦逼旅程
本来是腾讯云的校园用户1g1g,突然前几天告诉我可以免费升级到1g2g,所以抱着试一试的态度升级了,这不升不要紧,一升就出事了。首先是我的服务器远程连不上了,后来才知道应该是升级导致的/etc/ssh/sshd_config文件初始化了吧,反正这个折腾了我一个周末。然后是发现cpu总是处于满负荷状态--wnTKYg,被黑客用来挖矿。关于如何删除wnTKYg,这个网上有很多教程,我就不废话了
2018-03-11 21:12:15
188
原创 python中浮点数运算问题
这是因为小数以二进制形式表示时的有穷性导致的。我们知道,将一个小数转化为二进制表示的方式是,不断的乘2,取其中的整数部分。例如:(1) 0.625*2 = 1.25, 整数部分为1,小数部分为0.25(2) 0.25 * 2 = 0.5 , 整数部分为0,小数部分为0.5(3) 0.5 * 2 = 1 , 整数部分为1,小数部分为0所以0.625的二进制表示
2018-01-24 21:52:44
10523
原创 linux系统安全防护
1、使用 last 命令查看下服务器近期登录的账户记录,确认是否有可疑IP登录过机器;* 检查说明:攻击者或者恶意软件往往会往系统中注入隐藏的系统账户实施提权或其他破坏性的攻击* 解决方法:检查发现有可疑用户时,可使用命令“usermod -L 用户名”禁用用户或者使用命令“userdel -r 用户名”删除用户。* 风险性:高2、通过 less /var/log/secure
2018-01-23 22:10:18
3126
原创 centos7.3下防火墙相关操作
1、firewalld的基本使用启动: systemctl start firewalld查看状态: systemctl status firewalld 停止: systemctl disable firewalld禁用: systemctl stop firewalld 2.systemctl是CentOS7的服务管理工具中主要的工具,它融合之前service和chkc
2018-01-13 12:04:12
1770
原创 java23种设计模式代码
java中的设计模式有23种:创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。其实还有两种:
2017-12-27 14:09:08
787
1
转载 Spring的@Autowired注入规则
@Autowired 默认是按照byType进行注入的,但是当byType方式找到了多个符合的bean,又是怎么处理的?经过一些代码的测试,我发现,Autowired默认先按byType,如果发现找到多个bean,则,又按照byName方式比对,如果还有多个,则报出异常。例子:@Autowiredprivate ExamUserMapper examUser
2017-12-22 13:55:42
3052
转载 对spring aop的理解
一.前言AOP(Aspect Oriented Programming),即面向切面编程,可以说是OOP(Object Oriented Programming,面向对象编程)的补充和完善。OOP引入封装、继承、多态等概念来建立一种对象层次结构,用于模拟公共行为的一个集合。不过OOP允许开发者定义纵向的关系,但并不适合定义横向的关系,例如日志功能。日志代码往往横向地散布在所有对象层次中,而
2017-12-22 13:37:39
145
转载 理解spring父子容器
一、Spring和SpringMVC的父子容器关系一般来说,我们在整合Spring和SpringMVC这两个框架中,web.xml会这样写到: context-param> param-name>contextConfigLocationparam-name> param-value>classpath:spring/application-*.xmlpa
2017-12-22 11:00:24
1304
转载 ConcurrentHashMap理解
ConcurrentHashMap融合了hashtable和hashmap二者的优势。hashtable是做了同步的,hashmap未考虑同步。所以hashmap在单线程情况下效率较高。hashtable在的多线程情况下,同步操作能保证程序执行的正确性。但是hashtable每次同步执行的时候都要锁住整个结构。看下图:图左侧清晰的标注出来,lock每次都要锁住整个结
2017-12-22 10:40:49
203
转载 HashMap实现原理分析--通过面试题深入理解
“你知道HashMap的工作原理吗?” “你知道HashMap的get()方法的工作原理吗?” 你也许会回答“我没有详查标准的Java API,你可以看看Java源代码或者Open JDK。”“我可以用Google找到答案。” 但一些面试者可能可以给出答案,“HashMap是基于hashing的原理,我们使用put(key, value)存储对象到HashMap中,使用get(
2017-12-21 14:33:23
461
转载 HashMap实现原理分析
1. HashMap的数据结构数据结构中有数组和链表来实现对数据的存储,但这两者基本上是两个极端。 数组数组存储区间是连续的,占用内存严重,故空间复杂的很大。但数组的二分查找时间复杂度小,为O(1);数组的特点是:寻址容易,插入和删除困难;链表链表存储区间离散,占用内存比较宽松,故空间复杂度很小,但时间复杂度很大,达O(N)。链表的特点是:寻址困难
2017-12-21 14:19:56
132
原创 Access denied for user ''@'localhost' to database 'mysql'
用yum下载的mysql数据库,用root用户登录时出现拒绝登录,下面的方法实测有效:#关闭mysql service mysqld stop#屏蔽权限 mysqld_safe --skip-grant-table#新开起一个终端输入 mysql -u root mysql mysql> UPDATE user SET Password=PASSWORD
2017-12-21 13:48:37
1651
jenkins-2.157-1.1.noarch.rpm
2019-12-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人