自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(64)
  • 资源 (4)
  • 收藏
  • 关注

原创 2021-07-06

IDEA设置类注解和方法注解(详解)一、设置类注解模板(在创建类的时候自动填充模板)/** * @Description: <br> * @Author: zhengzhongli * @CreateDate: Created in ${DATE} ${HOUR}:${MINUTE} <br> */

2021-07-06 17:38:17 125

原创 传递模型数据到视图中+jstl包

导入jstl相关包standardb包放入Tomcat的lib目录下jstl包放入web-inf/lib中没有这两个包,jsp解析时会报错传递模型数据实例@Controller@RequestMapping("/spittles")public class SpittleController { private SpittleRepository spittleRepository; @RequestMapping(method = RequestMethod.GET) public

2020-07-26 11:54:30 161

原创 springMVC起步-基本控制器测试

配置DispatcherServletpackage com.zachary.config;import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer;public class SpringWebAppInitializer extends AbstractAnnotationConfigDispatcherServletInitializer { @Ov

2020-07-25 10:55:55 192

原创 在XML中申明切面

代码示例:Performance接口public interface Performance { void perform(String performContent);}Performance实现类@Componentpublic class Concert implements Performance { @Override public void perform(String performContent) { System.out.println(performContent

2020-07-19 21:43:33 152

原创 通过注解引入新功能

使用Spring AOP,我们可以为Bean引入新的方法。@DeclareParents示例通过@DeclareParents注解,将Encoreable接口引入到Performance bean中。Performance接口public interface Performance { void perform(String performContent);}Performance接口实现@Componentpublic class Concert implements Perform

2020-07-19 16:27:07 201

原创 定义切面通知

@AspectSpring使用AspectJ来申明通知方法。注解通知@After通知方法会在目标返回或抛出异常时调用@AfterReturning通知方法会在目标返回后调用@AfterThrowing通知方法在目标抛出异常时调用@Around通知方法将目标方法封装起来@Before通知方法在目标方调用前执行@Pointcut可以通过@Pointcut注解申明频繁使用的切点表达式@EnableAspectJAutoProxy启动Aspect

2020-07-13 17:14:04 191

原创 定义简单的切面

连接点方法:preform()public interface Performance { void preform();}定义实现类@Componentpublic class Concert implements Performance { @Override public void preform() { System.out.println("表演开始"); System.out.println("表演中......"); System.out.println("表演

2020-06-29 00:25:56 757

原创 SpEL样例

public class BlankDisc implements CompactDisc { public String title; public String artist; public List<Object> tracks; public BlankDisc(String title, String artist, List<Object> tracks) { this.title = title; this.artist = artist; th

2020-06-28 00:12:45 219

原创 运行时值注入

直接注入Bean直接注入示例:@Bean("blankDisc1")@Profile("dev")@Primarypublic BlankDisc getDevBlankDiscPrimary() { BlankDisc blankDisc = new BlankDisc(); blankDisc.setTitle("Sgt. Pepper's Lonely Hearts Club Band dev Primary"); List<String> tracks = new Arr

2020-06-27 17:59:08 225

原创 Bean的作用域

在默认情况下,Spring应用上下文中所有的Bean都是以单例(singleton)的形式创建的。Spring定义了多种作用域,可以基于这些作用域创建Bean:**单例(Singleton):**整个应用中只创建Bean的一个实例。**原型(Prototype):**每次注入,或通过Spring上下文获取时,都会创建一个新的Bean实例。**会话(Session):**在web应用中,为每个会话创建一个Bean实例。**请求(Request)????*在web应用中,为每个请求创建一个Bean实

2020-06-27 12:05:43 108

原创 条件化Bean,限定自动转配Bean

条件化Beanprofile与环境@Profile注解在类上使用使用@Profiledev环境模拟@Configuration@Profile("dev")public class DevelopmentProfileConfig { @Bean("blankDisc") public BlankDisc getBlankDisc() { BlankDisc blankDisc = new BlankDisc(); blankDisc.setTitle("Sgt. Pepper'

2020-06-26 22:02:32 149

原创 通过XML配置Bean

最简单的Spring XML配置<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans

2020-06-22 22:56:26 210

原创 装配Bean

自动装配Bean相关注解@Component组件扫描时,如果类上有@Component注解,为其创建bean注解参数说明:@Component没有参数时,默认将类名首字母小写作为bean的ID@Component(“XXX”)设置bean的ID@NamedJava依赖注入规范(Java Dependency Injection)中所提供。Spring支持将@Named作为@Component注解的替代方案。两者有细微的差异,但是在大多数场景可以相互替换。@Autowired@Inje

2020-06-21 20:50:45 169

原创 Spring最简单的自动化装配Bean,总结使用junit测试遇到的坑

soundsystem例子创建CD接口package com.zachary.soundsystem;/** * @author Zachary.Zheng * @version 1.0 * @date 2020年6月20日 下午9:20:07 */public interface CompactDisc { void play();}创建SgtPeppers类实现CompactDisc 接口,使用@Component注解@Componentpublic class SgtPe

2020-06-21 11:26:19 379

原创 下载spring框架jar包

Spring官网地址https://spring.io/1.打开Spring Framework的开源项目Spring Framework概述Spring Framework文档和APISpring是开源项目,所以相关依赖jar包可在GitHub中找找到 Spring Framework Artifacts打开Spring Artifactory有三个版本可供选择,一般选择稳定的release版本打开依赖包地址,嫌麻烦的可以忽略前面的步骤https://repo.spri

2020-06-21 10:49:12 317

原创 tar包安装

在Linux操作系统中,常用的软件包一共有两种.rpm包:相当于Windows中的exe软件包.tar.gz包:未编译的源码包软件的编译需要使用gcc编译器(Linux安装,开发工具->gcc,gcc c++)tar包解压基本语法tar -zxf 包名配置软件的安装路径与库操作基本语法./configure --prefix=/usr/local/apache--enable-so可以执行文件 安装目录,不存在会自动创建 以动态链接库的形式进行安装以上指令可以改为编

2020-06-18 06:38:29 2964

原创 FTP服务(上传于下载)

安装ftp软件进入光驱找到第一张光盘启动vsftpd服务基本语法service vsftpd start|restart|stop|status示例代码:FTP服务的作用ftp服务的作用就是为了实现文件的上传和下载设置防火墙执行setup命令:选中防火墙配置选中定制重启防火墙确定覆盖关闭SeLinuxSELinux(Security-Enhanced Linux) 是美国国家安全局(NSA)对于强制访问控制的实现,是 Linux历史上最杰出的新安全子系统

2020-06-14 16:00:18 319

原创 配置Linux网络

网络配置的位置/etc/sysconfig/network-scripts/ifcfg-eth0DEVICE:代表设备名称,eth0是设备第一块网卡的名字HWADDRTYPEUUIDONBOOT::网卡是否随计算机自动启动,实际服务器次参数要设置为yesNM_CONTROLLEDBOOTPROTO:网络是否自动获取,dhcp(自动获取),static(手动设置)IPADDR:手工设置的IP地址NETMASK:子网掩码,一般为255.255.255.0GETWAY:默认网关(和路由器配

2020-06-14 15:16:27 198

原创 Linux系统网络启动失败

_nm_object_get_property: Error getting ‘State’ for /org/freedesktop/NetworkManager/ActiveConnection/Linux系统网络启动失败出错原因用图形用户界面工具(setup)和/etc/sysconfig/network-scripts/ifcfg-ethx配置不同步造成的。解决办法将setup的配置和/etc/sysconfig/network-scripts/ifcfg-ethx与配置保持同步set

2020-06-14 15:05:12 1607

原创 Linux文件管理

查找文件find [目录列表] [匹配选项] [匹配标准]相关选项-name:根据文件名称进行搜索-group:根据文件所属组进行搜索-user:根据文件的拥有者进行搜索扩展Shell指令:locate指令,用于检索数据(查找文件)locate 文件名实例代码:...

2020-06-14 14:22:20 153

原创 Chrome插件链接

IDM Integration Module官方扩展链接:https://chrome.google.com/webstore/detail/idm-integration-module/ngpampappnmepgilojfohadhhmbhlaek/related

2020-06-07 18:33:53 2644

原创 文件,文件夹操作(权限设置+操作)

文件权限r:可读权限,值为4w:可写权限,值为2x:可执行权限,值为1文件权限说明文件夹权限755文件权限644一个文件或文件夹的三种用户,第一位是拥有者,第二个是组内用户,第三个是组外用户。权限举例说明:文件夹权限为755第一位:拥有者拥有最高操作权限7 =(4+2+1)= rwx第二位:组内用户拥有的操作权限5 = (4+1) = rx第三位:组外用户拥有的操作权限5 = (4+1) = rx使用ls指令查看文件权限ls -l user.txt第一列:文件权限一共

2020-06-06 12:58:45 979

原创 用户权限设置

赋予普通用户特殊权限普通用户:只能执行/bin目录下的指令超级管理员:可以执行/bin目录和/sbin目录下的权限。给普通用户赋权场景:当普通用户需要执行系统指令时,不能将管理员密码给普通用户,可以选择为普通用户赋予部分权限。文件位置:/etc/sudoers使用vim打开/etc/sudoers文件如下:系统管理员配置是所以权限普通用户权限配置实例给普通用户配置权限使用到的知识点:whereis指令功能:查看系统治理所在位置whereis useradd设置添加用户,关机

2020-06-06 11:14:01 560

原创 用户与组

1用户与组的关系同一个用户可以属于多个组,但只有一个主组。与组相关的文件组文件文件位置:/etc/groupvim /etc/group 执行命令结果如下:第1列:组名称第2列:一个组密码占位符,真实的密码在/etc/gshadow文件中第3列:组id,0代表root超级组,1~499是系统组,500以后是自定义组第4列:组内用户(附属组内用户)组密码(了解,新版本已经没有组密码了)文件位置:/etc/gshadowvim /etc/gshadow第1列:组名称第2列

2020-06-05 23:32:20 476

原创 默认系统界面配置分析+挂载文件系统分析

默认系统界面配置分析选择登录界面Linux操作系统一共有两种界面:图形界面,文字界面。开机时默认打开哪种界面可以在/etc/inittab中配置。文件位置: /etc/inittab使用vim命令打开:vim /etc/inittab 结果如下根据文件显示,Linux操作系统运行级别一共有7种模式运行级别0:关机模式(不要设为默认模式,否则启动就会关机)运行级别1:单用户模式(系统维护)运行级别2:多用户模式(不带NFS网络共享服务)运行级别3:多用户模式(带NFS,字符模式)运行级

2020-06-05 17:24:07 231

原创 Linux单用户模式+Linux引导系统简介+设置装载口令

Linux单用户模式重启Linux系统shutdown -r 0reboot重启后,在读秒时按下小e,进入菜单的编辑模式再次按e进入选择第二个菜单,再次按e进入改为修改完成后回车返回目录后单击小b,重启计算机管理员权限修改管理员密码passwd root重启系统reboot重新登录后会进入图形界面,此时就可以用新的密码登录系统了。引导系统选择操作系统文件位置:/etc/grub.conf实例代码使用ls -l查看文件的真实路径使用vim编辑器打

2020-06-04 23:13:28 216

原创 Linux系统软件的安装与卸载

查询已安装的软件rpm指令:查看,安装和卸载Linux系统下的rpm软件包。rpm软件包:类似与Windows里面的.exe。*.tar.gz软件包:未编译的软件包,安装时需要先编译再进行配置安装。rpm -qa-q:query缩写,代表查询-a:all缩写,代表查询所有已安装软件管道命令rpm -qa | grep vim|:称为管道后面的是搜索范围,只查询vim软件卸载以安装软件rpm -e 软件名称删除是有其它依赖时,需要先删除所以依赖软件删除时光标停顿,删除完没有提升安

2020-06-04 22:31:26 341

原创 Liunx系统目录分析

/bin:系统目录文件,存放系统指令。比如ls,mkdir等指令/dev:系统设备目录,硬盘光驱都在这个目录下/home:用户的家,非管理员用在/home目录下有自己的家。如/home/zachary/lib:库文件目录。库文件一共分为两种*.so动态库文件,*.a静态库文件/media:多媒体目录,光驱、软驱/mnt:挂载目录。如:U盘/mnt/udisk/proc:内存目录/sbin:s是super,超级指令目录,专门给超级管理员使用的/tmp:temp缩写,代表临时目录/var:经.

2020-06-04 22:07:10 161

原创 常用Shell命令+vi编辑器

Shell命令指令单独存在指令带选项指令带选项带参数ls查看当前目录的所有文件相关选项-l:list缩写,代表以列表形式展示所以文件-a:all缩写,代表显示所有文件(包括隐藏文件“.”)lsls -l(简写ll) l:list 简写ls -a a:all 简写ls -alpwd显示当前位置cdcd+ 路径:跳转到指定目录,根目录使用“/”(/etc)cd+…:调整到上一级目录cd+~:调整到当前登录用户的加clear清空控制台loginloginout

2020-06-04 21:42:34 598

原创 虚拟机安装Linux系统

安装VMware安装完成打开VMware

2020-06-03 20:56:23 152

原创 使用“持久性”

对比序列化前后的对象地址同一个字节序列号数据反序列化得到的相同对象的地址也相同。不同的流产生了完全不同的对象。package com.zachary.io.serializable;import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.ObjectInputStream;import java.io.ObjectOutputStream;import java.io.Se

2020-06-03 16:55:49 218

原创 序列化控制

实现Externalizable重写writeExtrenal()和readExternal()方法。这两个方法在序列化和反序列化的时候会自动调用。package com.zachary.io.serializable;import java.io.Externalizable;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.Obj

2020-06-03 16:46:34 164

原创 对象序列化

Java序列化将那些实现了Serializable接口的对象转换成一个字节序列,并能够将字节序列恢复成原来的对象。利用它可以实现轻量化的持久性。对象序列化加入到语言中是为了支持两种主要特性。一是Java远程调用,它使存活于其它计算机上的对象使用起来就向存活于本机一样。当向远程发送数据时,需要序列化来传送参数和返回值。只要对象实现了Serializable接口,对象序列化出理就会非常简单。ObjectOuputStream ObjectInputStream对象序列化demopackage c.

2020-06-03 16:26:05 99

原创 压缩

压缩类功能CheckedInputStreamGetCheckSum()为任何InputStream产生校验和(不仅是解压缩)CheckedOutputStreamGetCheckSum()为任何OutputStream产生校验和(不仅是压缩)DeflaterOutputStream压缩类基类GZIPOutputStream一个DeflaterOutputStream,用于将数据压缩成为zip文件GZIPInputStream一个InflaterInpu...

2020-06-02 15:59:01 204

原创 文件加锁

文件加锁通过对FileChannel调用lock()或tryLock(),可以获得整个文件的FileLock。tryLock()是非阻塞的,它试图获得锁,如果不能获得将直接从方法调用中返回。lock()是阻塞的,它会阻塞进程直到锁可以获得,或调用lock()的线程中断,或调用lock()的通道关闭。FileLock.release()可以释放锁。参数说明tryLock(long position, long size, boolean shared)lock(long position, l

2020-06-02 14:24:26 254

原创 内存映射文件

MappedByteBuffer内存映射文件允许我们修改和编辑那些因为太大不能放入内存的文件。java.nio.channels.FileChannel.map(MapMode mode, long position, long size) throws IOExceptionpackage com.zachary.io.nio.mapped;import java.io.FileNotFoundException;import java.io.IOException;import java.

2020-06-02 14:03:45 133

原创 缓冲器操纵数据

ByteBuffer是将数据移进移出的唯一方式,并且只能创建基本类型的缓冲器,或者通过”as“从ByteBuffer中获得缓冲器。缓冲器细节方法功能capacity()返回缓冲区容量clear()清空缓冲区,将position设置为0,limit设置为容量。可以调用次方法复写缓冲区flip()将limit设置为position,position设置为0。用于为读取缓冲区数据做准备limit()返回limit值limit(int lim)设置limit

2020-06-02 13:53:57 137

原创 获取基本数据类型,视图缓冲器

获取基本数据类型java.nio.ByteBufferasCharBuffer() : getChar()asShortBuffer() : getShort()asIntBuffer() : getInt()asLongBuffer() : getLong()asFloatBuffer() : getFloat()asDoubleBuffer() : getDouble()package com.zachary.io.nio;import java.nio.ByteBuffer;

2020-06-02 13:28:09 170

原创 数据转换

数据转换java.nio.charset.CharsetString encoding = System.getProperty(“file.encoding”); // 发现默认字符集,产生代表字符集名称的字符串System.out.println(Charset.forName(encoding).decode(buffer));对数组编码再写ByteBuffer.wrap(“Some text”.getBytes(“UTF-16BE”))char类型转换器buffer.asC

2020-06-02 13:07:00 390

原创 FileChannel

FileChannelByteBuffer唯一直接与通道交互的缓冲器。FileInputStream,FileOutputStream,RandomAccessFile能够产生FileChannel。Reader和Writer不能产生Channel。但是java.nio.channels.Channels类提供了实用方法,可以在通道中产生Reader和Writer。package com.zachary.io.nio;import java.io.File;import java.io.FileI

2020-06-02 13:06:43 180

OCA OCP Practice Tests Exam 1Z0-808 and Exam 1Z0-809.pdf

OCJP 1Z0-809考试资料 oca+ocp考试PDF版 OCA OCP Practice Tests Exam 1Z0-808 and Exam 1Z0-809.pdf 包含oca+ocp考试所以知识点. 注意出书时间, 知识点增删可以在论坛上面查看.

2019-11-09

ChromeStandaloneSetup64.exe

Google Chrome 安装包

2019-11-09

fireshot-chrome-plugin.exe

Google 截图工具 捕捉网页截图,编辑并将它们保存为PDF,JPEG,GIF,PNG或BMP;上传,打印,在Photoshop中打开,复制到剪贴板或电子邮件

2019-11-09

1z0-808-pdf.pdf

OCJP 1Z0-808考试资料 oca考试PDF版 1z0-808-pdf.pdf 包含oca考试所以知识点. 注意出书时间, 知识点增删可以在论坛上面查看.

2019-11-09

空空如也

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

TA关注的人

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