java
_zmynsa
这个作者很懒,什么都没留下…
展开
-
Java基础(八):自定义注解和注解解析
注解文章目录注解1. 概述2. 自定义注解3. 元注解(注解的注解)4. 注解解析案例:模拟Junit的@Test注解1. 概述定义注解(Annotation),也叫元数据。一种代码级别的说明。它是JDK1.5及以后版本引入的一个特性,与类、接口、枚举是在同一个层次。它可以声明在包、类、字段、方法、局部变量、方法参数等的前面,用来对这些元素进行说明,注释。作用编写文档:通过代码里标志...原创 2018-11-30 10:22:30 · 168 阅读 · 0 评论 -
JAVA静态代理和动态代理
静态代理和动态代理文章目录静态代理和动态代理1. 概述1.1 分类1.2 四要素2. 静态代理3. 动态代理3.1 相关api3.2 开发步骤3.3 改写卖电脑案例1. 概述代理对象可以在调用者和目标对象之间起中介作用,代理对象可以对目标对象的功能进行改写或增强。在java代码中可以体现为不修改源代码而对源代码进行改写。以达到代理作用。1.1 分类静态代理动态代理1.2 四要素...原创 2018-11-30 10:59:32 · 237 阅读 · 0 评论 -
排序算法总结
文章目录1.插入排序[稳定]2.冒泡排序[稳定]3.选择排序[不稳定]4.归并排序[稳定]5.快速排序[不稳定]6.堆排序[不稳定]8.基数排序[稳定]1.插入排序[稳定]适用于小数组,数组已排好序或接近于排好序速度将会非常快复杂度:O(n^2) - O(n) - O(n^2) - O(1)[平均 - 最好 - 最坏 - 空间复杂度]public void insertionSort(in...原创 2018-12-09 12:11:05 · 110 阅读 · 0 评论 -
JAVA简单网络爬虫:爬取一个网站的图片
JAVA简单网络爬虫:爬取一个网站的图片文章目录JAVA简单网络爬虫:爬取一个网站的图片案例分析实现案例爬取网站首页的所有图片,本文选取的网站是https://www.splitshire.com分析 通过分析一个图片可以推导出类似图片。这里以随机选的一个图片为案例。 这里的图片是小图,可以点击图片查看大图,点击NETWORK可以看到大图的请求地址。如下图 所需要的大图和小...原创 2018-12-30 10:56:22 · 1507 阅读 · 0 评论 -
网页图形验证码的前后端实现(JAVA)
Java实现图形验证码前端页面<%-- Created by IntelliJ IDEA. User: zmysna Date: 18/12/08 Time: 15:54 To change this template use File | Settings | File Templates.--%><%@ page contentType="text...原创 2019-01-07 18:16:27 · 2914 阅读 · 1 评论 -
selenium+java开启谷歌浏览器
selenium+java开启谷歌浏览器文章目录selenium+java开启谷歌浏览器1. selenium简介2. selenium环境安装2.1 通过导包安装2.2 通过Maven安装3. 下载浏览器驱动4. 测试打开浏览器5. 注意的问题1. selenium简介 selenium 是一套完整的web应用程序测试系统,包含了测试的录制(selenium IDE),编写及运行(Se...原创 2019-02-04 11:32:49 · 1992 阅读 · 0 评论 -
SpringMVC(四):实现Restful风格的增删该查
SpringMVC实现Restful风格的增删该查文章目录SpringMVC实现Restful风格的增删该查1. REST概述restful的特性2. 实现restful风格增删改查2.1 配置HiddenHttpMethodFilter2.2 前端页面写restful请求2.3 controller处理resful请求1. REST概述 REST(英文:Representational ...原创 2019-02-05 22:43:41 · 1357 阅读 · 0 评论 -
Java基础(七):Junit和反射
Junit和反射Junit测试方法要求://无参、无返回值@Testpublic void 方法名(){ //测试代码}Junit注解@Before: 在测试方法之前运行的方法@Test: 测试方法@After:在测试方法之后运行的方法public class Test00{ @After public void afterMethod() { ...原创 2018-11-16 10:45:11 · 435 阅读 · 0 评论 -
IO流实践:在windows上批量复制文件
在windows上批量复制文件在windows上从不同文件夹中复制作业卷到同一个文件夹。虽然可以使用windows的搜索功能进行搜索并复制,但是作业卷的名称都叫‘每日作业卷’,无法对其内容进行区分,想复制并添加文件前缀需要多步操作。需求从每天的资料文件中收集每天作业卷,并添加前缀放到特定的文件夹里面,实现作业卷的批量复制。分析通过遍历源文件目录,取得文件名,通过正则表达式过滤得到所...原创 2018-11-16 10:44:21 · 424 阅读 · 0 评论 -
Java基础(六):IO流
IO流File(表示一个文件或者目录)File类是io包中唯一代表磁盘文件本身的对象。File类定义了一些与平台无关的方法来操作文件,可以通过调用File类中的方法,实现创建、删除、重命名文件等。File类的对象主要用来获取文件本身的一些信息,如文件所在目录、文件的长度、文件读写权限等。数据流可以将数据写入到文件中,而文件也是数据流最常用的数据媒体。常用方法在windows中fil...原创 2018-11-16 10:42:19 · 463 阅读 · 0 评论 -
关于java反射的个人理解
这是一篇有关反射的文章原创 2017-11-24 17:51:58 · 146 阅读 · 0 评论 -
mysql外键1005错误,以及主键外键概念
今天学习mysql,做几个表居然做了一个多小时。设置外键的时候遇到1005错误。1005 - Can’t create table ‘oschina.#sql-97c_2’ (errno: 150) 然后查了很久才发现两个字段的大小不匹配。名字都叫做sid,一个是UNSIGNED INT(10),另一个是INT(11)。两个字段的类型或者大小必须严格匹配。mysql的错误提示太鸡肋了吧。梳理一下主原创 2017-11-27 17:17:53 · 1485 阅读 · 0 评论 -
java基础(一):常用API
常用APIObject类特点所有的类都是继承Object任何类都具体Object中的方法方法1. toString()public String toString(): 返回该对象的字符串表示默认打印地址值,重写可以打印内容。2. equals(Object obj)public boolean equals(Object obj): 表示其他对象是否与此对象相等...原创 2018-11-16 10:16:57 · 184 阅读 · 0 评论 -
Java基础(二):泛型和集合
集合和泛型继承图collection接口方法迭代器iterator()iterator返回一个Iterator类。拥有的方法如下图。Collection&lt;String&gt; coll = new ArrayList&lt;&gt;();coll.add("hello");coll.add("world");Iterator&原创 2018-11-16 10:23:55 · 275 阅读 · 0 评论 -
斗地主的洗牌和发牌
斗地主的洗牌和发牌思路:用Collections的shuffle()方法进行洗牌。用Collections的sort()方法实现牌的有序展示。用List存牌的id,用map存储id和内容之间的映射。代码如下:package com.zmysna.test03;import java.util.ArrayList;import java.util.Collections;import j...原创 2018-11-16 10:33:24 · 194 阅读 · 0 评论 -
Java基础(三):异常
异常异常概念异常,就是不正常的意思。在生活中:医生说,你的身体某个部位有异常,该部位和正常相比有点不同,该部位的功能将受影响.在程序中的意思就是:异常 :指的是程序在执行过程中,出现的非正常的情况,最终会导致JVM的非正常停止。在Java等面向对象的编程语言中,异常本身是一个类,产生异常就是创建异常对象并抛出了一个异常对象。Java处理异常的方式是中断处理。异常指的并不是语法错误,...原创 2018-11-16 10:34:28 · 199 阅读 · 0 评论 -
生产者消费者模型
生产者是一堆线程,消费者是另一堆线程,内存缓冲区可以使用List数组队列,数据类型只需要定义一个简单的类就好。关键是如何处理多线程之间的协作。这其实也是多线程通信的一个范例。通过wait/notify实现生产者消费者package com.zmysna.corresponse;import java.util.LinkedList;/* 消费者*/public class Co...原创 2018-11-16 10:35:20 · 308 阅读 · 0 评论 -
Java基础(四):多线程
1. 使用线程继承Thread类实现Runnable接口实现Callable接口继承Thread类new Thread(){@Overridepublic void run(){ while(true){ try { Thread.sleep(2000); } catch (InterruptedException e)...原创 2018-11-16 10:37:06 · 164 阅读 · 0 评论 -
Java基础(五):JDK1.8新特性
JDK1.8新特性lambda表达式Lambdalambda作用:lambda是一个语法糖,简化匿名内部类的使用。lambda使用条件参数或者变量必须是接口接口中只包含一个抽象方法lambda格式(参数类型 参数名称 …)-&amp;gt; { 代码语句;}new Thread(new Runnable(){ @Override public void run()...原创 2018-11-16 10:40:35 · 2163 阅读 · 2 评论 -
SpringMVC(五):异常处理和拦截器
异常处理和拦截器文章目录异常处理和拦截器1. 异常处理1.1 异常处理的流程1.2 实现springMVC全局异常处理1.2.1 环境准备1.2.2 自定义异常处理器1.2.3 在spring.xml中配置异常处理器1.2.4 测试2. 拦截器2.1 拦截器和过滤器的区别2.2 自定义拦截器2.3 多个拦截器1. 异常处理1.1 异常处理的流程系统中异常包括两类:预期异常和运行时异常 Ru...原创 2019-02-05 22:50:27 · 489 阅读 · 0 评论