java
文章平均质量分 63
天堂地址不详Y
这个作者很懒,什么都没留下…
展开
-
Eclipse Debug不为人知的秘密
Debug视图认识debug视图,红色部分框为线程堆栈视图,黄色部分框为表达式、断点、变量视图,蓝色部分为代码视图。线程堆栈视图分别介绍一下这几个按钮的含义:1.表示当前实现继续运行直到下一个断点,快捷键为F8。2.表示打断整个进程3.表示进入当前方法,快捷键为F5。4.表示运行下一行代码,快捷键为F6。5.表示退出当前方法,返回到调用层,快捷键转载 2017-08-16 16:24:14 · 202 阅读 · 0 评论 -
maven的snapshot和release版本的区别
Maven的Snapshot版本与Release版本1. Snapshot版本代表不稳定、尚处于开发中的版本 2. Release版本则代表稳定的版本3. 什么情况下该用SNAPSHOT? 协同开发时,如果A依赖构件B,由于B会更新,B应该使用SNAPSHOT来标识自己。这种做法的必要性可以反证如下: a.如果B不用SNAPSHOT,而是每次更新后都使用一个稳定的版本原创 2018-01-26 16:55:08 · 987 阅读 · 0 评论 -
java下划线与驼峰命名转换
下划线与驼峰命名转换:public class Tool { private static Pattern linePattern = Pattern.compile("_(\\w)"); /** 下划线转驼峰 */ public static String lineToHump(String str) { str = str.toLowerCase(); Matcher matc...原创 2018-03-05 01:59:07 · 4778 阅读 · 0 评论 -
JAVA中的Random()函数
Java中存在着两种Random函数:一、java.lang.Math.Random; 调用这个Math.Random()函数能够返回带正号的double值,该值大于等于0.0且小于1.0,即取值范围是[0.0,1.0)的左闭右开区间,返回值是一个伪随机选择的数,在该范围内(近似)均匀分布。例子如下:package IO;import java.util.Random;public cla...原创 2018-03-18 22:59:20 · 175 阅读 · 0 评论 -
序列化和反序列化的简单理解
一、序列化和反序列化的概念把对象转换为字节序列的过程称为对象的序列化;把字节序列恢复为对象的过程称为对象的反序列化。对象的序列化主要有两种用途:1) 把对象的字节序列永久地保存到硬盘上,通常存放在一个文件中;2) 在网络上传送对象的字节序列。在很多应用中,需要对某些对象进行序列化,让它们离开内存空间,入住物理硬盘,以便长期保存。比如最常见的是Web服务器中的Session对象,当有 10万用户并发...转载 2018-03-19 01:09:17 · 185 阅读 · 0 评论 -
toCharArray()和 split()方法
String.toCharArray 方法,作用:将字符串转换为字符数组。Split函数是编程语言中使用的函数,是指返回一个下标从零开始的一维数组,它包含指定数目的子字符串。Split和ToCharArray的区别:(1)split是根据你需要按照的分隔符来分割的,比如:String a = "avc,d,e,s,f"; String []b = a.split(',');这个就是根据逗号将数据分...原创 2018-04-16 14:18:35 · 3024 阅读 · 1 评论 -
ORM思想解析
ORM对象关系映射(Object Relational Mapping,简称ORM,或O/RM,或O/R mapping),是一种程序技术,用于实现面向对象编程语言里不同类型系统的数据之间的转换。从效果上说,它其实是创建了一个可在编程语言里使用的“虚拟对象数据库”。 —— [ 百度百科 ]广义上,ORM指的是面向对象的对象模型和关系型数据库的数据结构之间的相互转换。 狭义上,ORM可以被认为是,基...转载 2018-04-17 00:15:44 · 299 阅读 · 0 评论 -
在web项目启动时,执行某个方法
在web项目中有很多时候需要在项目启动时就执行一些方法,而且只需要执行一次,比如:加载解析自定义的配置文件、初始化数据库信息等等,在项目启动时就直接执行一些方法,可以减少很多繁琐的操作。 在工作中遇到了项目初始数据需要跟其他项目同步的问题,也就是说在项目部署后,启动的时候就要同步另外一个项目的数据,这里写了个简单的实例,用的是监听器机制,创建一个类实现Servle...原创 2018-05-31 15:07:39 · 1484 阅读 · 0 评论 -
Spring中基于Java的配置@Configuration和@Bean用法
Spring中为了减少xml中配置,可以声明一个配置类(例如SpringConfig)来对bean进行配置。一、首先,需要xml中进行少量的配置来启动Java配置:<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xm...原创 2018-08-17 23:35:08 · 2093 阅读 · 0 评论 -
POJO和JavaBean的区别
POJO(Plain Ordinary Java Object)即普通Java类,具有一部分getter/setter方法的那种类就可以称作POJO。实际意义就是普通的JavaBeans(简单的实体类),特点就是支持业务逻辑的协助类。POJO类的作用是方便程序员使用数据库中的数据表,对于程序员来说,可以很方便的将POJO类当作对象来进行使用,也可以方便的调用其get,set方法。但不允...转载 2018-08-18 00:45:10 · 34800 阅读 · 3 评论 -
spring的@component注解的理解
1、@controller 控制器(注入服务)2、@service 服务(注入dao)3、@repository dao(实现dao访问)4、@component (把普通pojo实例化到spring容器中,相当于配置文件中的<bean id="" class=""/>)Spring 2.5 中除了提供 @Component 注释外,还定义了几个拥有特殊语义的注释,它们分别...原创 2018-08-18 00:51:41 · 9883 阅读 · 1 评论 -
图的java实现
什么是图结构图(Graph)结构也是一种非线性数据结构,并且每个数据元素之间可以任意关联。正是任意关联性,导致了图结构中数据关系的复杂性。一个典型的图结构包括如下两个部分:顶点(Vertex):图中的数据元素。 边(Edge):图中连接这些顶点的线。无向图:如果一个图结构中所有的边都没有方向性,这称为无向图。有向图:如果一个图结构,边是有方向性的,这称为有向图。权:...转载 2018-08-26 00:57:39 · 8718 阅读 · 0 评论 -
重温数据结构:树及Java 实现
读完本文你将了解到: 什么是树 树的相关术语 根节点、父亲节点、孩子节点、叶子节点如上所述。 节点的度 树的度 节点的层次 树的高度 树的深度 树的两种实现 数组表示: 链表表示的节点: 树的几种常见分类及使用场景 数据结构,指的是数据的存储形式,常见的有线性结构(数组、链表,队列、栈),还有非线性结构(树、图等)...转载 2018-08-26 01:04:48 · 245 阅读 · 0 评论 -
JOOQ入门--实现CRUD操作
一、什么是JOOQJOOQ 是基于Java访问关系型数据库的工具包。JOOQ 既吸取了传统ORM操作数据的简单性和安全性,又保留了原生sql的灵活性,它更像是介于 ORMS和JDBC的中间层。对于喜欢写sql的码农来说,JOOQ可以完全满足你控制欲,可以是用Java代码写出sql的感觉来。就像官网说的那样 :get back in control of your sql (重新控制SQL...转载 2018-09-15 01:15:37 · 1712 阅读 · 0 评论 -
BeanUtils.copyProperties(A,B)字段复制
BeanUtils提供对Java反射和自省API的包装。其主要目的是利用反射机制对JavaBean的属性进行处理。我们知道,一个JavaBean通常包含了大量的属性,很多情况下,对JavaBean的处理导致大量get/set代码堆积,增加了代码长度和阅读代码的难度。注意:属性复制,不同jar中的方法,用法不一样。1、package org.springframework....转载 2019-04-28 10:03:44 · 866 阅读 · 0 评论 -
Thymeleaf 没有返回html只返回字符串
在使用Thymeleaf的时候,@RequestMapping对应的函数没有返回html文件而是返回了这个函数对应的字符串返回值解决办法:删除这个函数前面的@Responsebody注解,这个注解会返回Mapping函数指定的返回类型、例如String。而不是将其解析为html文件==================================================...转载 2019-04-28 17:38:27 · 1461 阅读 · 0 评论 -
Springboot中Aspect实现切面(以记录日志为例)
前言今天我们来说说spring中的切面Aspect,这是Spring的一大优势。面向切面编程往往让我们的开发更加低耦合,也大大减少了代码量,同时呢让我们更专注于业务模块的开发,把那些与业务无关的东西提取出去,便于后期的维护和迭代。好了,废话少说!我们直接步入正题以系统日志为例首先,我们先做一些准备工作。1、新建一个Springboot工程2、添加必要的依赖AOP 必须&...转载 2019-09-16 17:52:14 · 320 阅读 · 0 评论 -
Java中获取键盘输入值的三种方法
Java程序开发过程中,需要从键盘获取输入值是常有的事,但Java它偏偏就没有像c语言给我们提供的scanf(),C++给我们提供的cin()获取键盘输入值的现成函数!Java没有提供这样的函数也不代表遇到这种情况我们就束手无策,请你看以下三种解决方法吧:以下将列出几种方法:方法一:从控制台接收一个字符,然后将其打印出来import java.io.*;publ原创 2017-12-16 10:38:14 · 3161 阅读 · 0 评论 -
java基本类型与包装类型
Java语言是一个面向对象的语言,但是Java中的基本数据类型却是不面向对象的,这在实际使用时存在很多的不便,为了解决这个不足,在设计类时为每个基本数据类型设计了一个对应的类进行代表,这样八个和基本数据类型对应的类统称为包装类(Wrapper Class),有些地方也翻译为外覆类或数据类型类。 包装类均位于java.lang包,包装类和基本数据类型的对应关系如下表所示:原创 2017-09-10 13:05:58 · 321 阅读 · 0 评论 -
循环结构中break、continue、return和exit的区别
1. breakbreak语句的使用场合主要是switch语句和循环结构。在循环结构中使用break语句,如果执行了break语句,那么就退出循环,接着执行循环结构下面的第一条语句。如果在多重嵌套循环中使用break语句,当执行break语句的时候,退出的是它所在的循环结构,对外层循环没有任何影响。如果循环结构里有switch语句,并且在switch语句中使用了break语句,当执行swi原创 2017-09-25 16:50:27 · 259 阅读 · 0 评论 -
StringUtils.equals() 用法
比较两个字符串是否相等,如果两个均为null,则也认为相等*/ StringUtils.equals("", ""); //结果是true StringUtils.equals(null, null); //结果是true StringUtils.equals(null, ""); //结果是false StringUtils.equals(原创 2017-08-17 09:34:49 · 2523 阅读 · 0 评论 -
Java中static变量作用和用法详解
static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念。 被static修饰的成员变量和成员方法独立于该类的任何对象。也就是说,它不依赖类特定的实例,被类的所有实例共享。 只要这个类被加载,Java虚拟机就能根据类名在运行时数据区的方法区内定找到他们。因此,static对象可以在它的任何对象原创 2017-08-20 12:15:49 · 201 阅读 · 0 评论 -
关于Calendar用法的一些总结
Calendar是一个抽象类,主要用来操作日历时间字段。在Java.util.Calendar包中,Calendar在开发中基本都会使用得到,这里对经常使用到的做个总结,也可能有遗漏,遇到再补,慢慢完善。常用的方法abstract void add(int field, int amount)此方法添加或减去指定的时间量,以给定日历字段,基于原创 2017-08-20 15:19:18 · 49205 阅读 · 3 评论 -
servlet监听完成统计在线人数,显示在线人员列表(附源码)
ServletContext事件监听器---->针对applicationScope ServletContextListener(*)对整个Web应用的装载和卸载进行监听。 ServletContextAttributeListener对ServletContext中的信息存放、删除和替换进行监听。ServletContext就是Servlet上下文监原创 2017-08-20 15:33:32 · 530 阅读 · 0 评论 -
深入理解java异常处理机制
1. 引子 try…catch…finally恐怕是大家再熟悉不过的语句了,而且感觉用起来也是很简单,逻辑上似乎也是很容易理解。不过,我亲自体验的“教训”告诉我,这个东西可不是想象中的那么简单、听话。不信?那你看看下面的代码,“猜猜”它执行后的结果会是什么?不要往后看答案、也不许执行代码看真正答案哦。如果你的答案是正确,那么这篇文章你就不用浪费时间看啦。原创 2017-08-20 16:03:41 · 175 阅读 · 0 评论 -
URL中“#” “?” &“”号的作用
阅读目录1. #2. ?3. &1. # 10年9月,twitter改版。一个显著变化,就是URL加入了"#!"符号。比如,改版前的用户主页网址为http://twitter.com/username改版后,就变成了http://twitter.com/#!/username 这是主流网站第一次将"#"大规模用于重要URL中。这表明井号(Hash原创 2017-08-21 09:11:07 · 407 阅读 · 0 评论 -
常见HTTP状态(304,200等)
在网站建设的实际应用中,容易出现很多小小的失误,就像mysql当初优化不到位,影响整体网站的浏览效果一样,其实,网站的常规http状态码的表现也是一样,Google无法验证网站几种解决办法,提及到由于404状态页面设置不正常,导致了google管理员工具无法验证的情况,当然,影响的不仅仅是这一方面,影响的更是网站的整体浏览效果。因此,比较清楚详细的了解http状态码的具体含义,对于一个网站站长来说原创 2017-08-21 09:14:05 · 349 阅读 · 0 评论 -
Java冒泡,选择,插入排序算法
冒泡排序基本思想:在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。 即:每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换。 第一次比较排序的结果:会把其中最大的数据排到最大的索引处 第二次比较排序后的结果:因为第一次已经把最大的一个数据放到了最大的索引的地方,所以这次要进行比较的数据原创 2017-08-21 09:33:33 · 151 阅读 · 0 评论 -
JAVA里的空白\t\n\r分别代表什么?
\t 相当于tab,缩进\n 回车\r 换行使用来格式化输出的,如:System.out.printf("11111\t2222222");上面的输出的效果就是在11111与222222之间有一个TAB的空白原创 2017-08-15 10:09:24 · 21405 阅读 · 0 评论 -
Java中的Switch用法
1,在java中switch后的表达式的类型只能为以下几种:byte、short、char、int(在Java1.6中是这样), 在java1.7后支持了对string的判断 public class TestSwitch{ public static void main(String args[]){ char c = 'a'; //char类型原创 2017-08-15 10:55:08 · 6661 阅读 · 0 评论 -
open declaration;open implementation;open super implementation
Eclipse中,open declaration;open implementation;open super implementationopen declaration:是打开该方法的接口文件(一般没实在意义,只是简单一句);open implementation:是打开具体实现该方法的类文件(具体逻辑的处理地方,方法的主要实现的地方);open super implem原创 2017-08-15 14:41:26 · 486 阅读 · 0 评论 -
String、StringBuffer、StringBuilder区别
String、StringBuffer、StringBuilder区别StringBuffer、StringBuilder和String一样,也用来代表字符串。String类是不可变类,任何对String的改变都 会引发新的String对象的生成;StringBuffer则是可变类,任何对它所指代的字符串的改变都不会产生新的对象。既然可变和不可变都有了,为何还有一个StringBuilde原创 2017-08-15 16:38:27 · 186 阅读 · 0 评论 -
Quick Outline 和 “面包屑” 工具栏
一、查看 Quick Outline二、利用 “面包屑” 工具栏原创 2017-08-15 16:11:12 · 789 阅读 · 0 评论 -
遍历数组 iterator方法和for方法
遍历数组 iterator方法和for方法下面的程序可以看出他们之间的区别与联系:import java.util.ArrayList;import java.util.Iterator;import java.util.List;public class ArrayTest { public static void main(String[原创 2017-08-15 19:44:19 · 318 阅读 · 0 评论 -
学习java必知的概念
链接:https://shop112528152.taobao.com/?spm=2013.1.1000126.2.4b55690132uweG1、Java面向对象的特征 1)封装:封装就是将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体,也就是将数据与操作数据的源代码进行有机的结合,形成“类”,其中数据和函数都是类的成员。 面向对象程序设计中,一个非常重原创 2017-08-31 10:22:55 · 189 阅读 · 0 评论 -
Java枚举的七种常见用法
链接:https://shop112528152.taobao.com/?spm=2013.1.1000126.2.4b55690132uweGJDK1.5引入了新的类型——枚举。在 Java 中它虽然算个“小”功能,却给我的开发带来了“大”方便。用法一:常量在JDK1.5 之前,我们定义常量都是: public static fianl.... 。现在好了,有了枚举,可以把相原创 2017-08-31 10:49:24 · 318 阅读 · 0 评论 -
java8里面lambda的stream()用法讲解
jdk8引进来的lambda语法是新语法,里面融进了python和c#的部分语法,stream()函数是主要用于集合而言的,对于数组就没效果生成流函数 把集合装成流,可以多次使用这个集合,但是不转换流的话,只能用一次,这就是转换成流的好处 stream()− 为集合创建串行流。 parallelStream()− 为集合创建...转载 2019-09-25 10:46:30 · 933 阅读 · 0 评论