编程语言Java
文章平均质量分 91
敌军bug
这个作者很懒,什么都没留下…
展开
-
Java分页
1.编写通用的分页工具public class PageUtil { /*参数需要页面传入*/private Integer pageSize=10;//每页显式多少条记录private Integer currentPage=1;//当前页号/*参数需要从数据查询*/private Integer allRowsAmount=0;//总记录数private List it转载 2017-11-20 17:04:09 · 209 阅读 · 0 评论 -
Math.Round()
题目:Math.Round(11.5);和Math.Round(-11.5);返回值是多少?原来不是四舍五入这么简单,其实是四舍六入,但是五是很有讲究的。要是遇到五则取离前一位最近的偶数。比如,这条题目,11.5返回值就是12.0;-11.5返回值就是-11.0; 但是这里其实也不是这么简单:看下面的例子:Math.Round(3.44, 1); //Returns 3.4.M转载 2017-11-24 15:14:57 · 193 阅读 · 0 评论 -
方法的调用
public static void main(String[] args) {//先声明定义int i = 1;//i++ 和++i 的区别 i++ 相当于 i= i+1 //调用print方法把print方法设置成staticprint(i++);System.out.println(i);}public static void print(int i ){ //System.out.prin原创 2017-11-24 15:27:05 · 192 阅读 · 0 评论 -
抽象类和接口
抽象类和接口都不能创建实例对象原创 2017-11-24 16:04:36 · 135 阅读 · 0 评论 -
封装Integer 和int 的对比
Integer i01 = 59;int i02 = 59;Integer i03 = Integer.valueOf(59);Integer i04 = new Integer(59);System.out.println(i01 == i02);System.out.println(i01 == i03);System.out.print原创 2017-11-24 16:21:17 · 764 阅读 · 0 评论 -
java 堆和栈
Java把内存分为两种:一种叫栈内存,一种叫堆内存。 在函数中定义的一些基本类型的变量和对象的引用变量都是在函数的栈内存中分配。 当在一段代码块中定义一个变量时,Java就在栈中为这个变量分配内存空间,当超过变量的作用域后,Java会自动释放掉为该变量分配的内存空间,该内存空间可以立刻被另作他用。 堆内存用于存放有new创建的对象和数组。原创 2017-11-24 16:53:32 · 670 阅读 · 2 评论 -
Java关键词final和static
原文:http://blog.51cto.com/lavasoft/18771 Java关键字final、static使用总结 一、final 根据程序上下文环境,Java关键字final有“这是无法改变的”或者“终态的”含义,它可以修饰非抽象类、非抽象类成员方法和变量。你可能出于两种理解而需要阻止改变:设计或效率。 final类不能被继承,没有子...转载 2017-11-24 17:37:20 · 2992 阅读 · 0 评论 -
逻辑运算与位运算区别
位运算:位运算是讲数据先转化为二进制数,再逐位(bit)按规则计算1.“按位与”运算符“&”,规则:全1则1,否则为0例如:a 00000000 00000000 00000000 00000111b ^ 10000001 10100101 11110011 10101011c 00000000 00000000 00000000 00000011原创 2017-11-24 18:12:11 · 1575 阅读 · 0 评论 -
Collection 和 Map
注意:Map中常见的还有一个TreeMap原创 2017-11-24 20:04:59 · 168 阅读 · 0 评论 -
数组length 字符串length() 集合size()的区别
1 java中的length属性是针对数组说的,比如说你声明了一个数组,想知道这个数组的长度则用到了length这个属性.2 java中的length()方法是针对字符串String说的,如果想看这个字符串的长度则用到length()这个方法.3.java中的size()方法是针对泛型集合说的,如果想看这个泛型有多少个元素,就调用此方法来查看!pub转载 2017-11-25 17:03:35 · 4705 阅读 · 0 评论 -
Java重写equals为何要重写hashCode?
答:判断两个对象是否相等,比较的就是其hashCode, 如果你重载了equals,比如说是基于对象的内容实现的,而保留hashCode的实现不变,那么很可能某两个对象明明是“相等”,而hashCode却不一样。 hashcode不一样,就无法认定两个对象相等了。转载 2017-11-25 17:32:05 · 257 阅读 · 0 评论 -
谈谈你对JVM的理解?
答: Java语言的一个非常重要的特点就是与平台的无关性。而使用Java虚拟机是实现这一特点的关键。Java编译器只要面向JVM,生成JVM能理解的代码或字节码文件。Java源文件经编译成字节码程序,通过JVM将每一条指令翻译成不同平台机器码,通过特定平台运行。JVM执行程序的过程 :I.加载。class文件 ,II.管理并分配内存 ,III.执行垃圾收集JRE(java运行转载 2017-11-25 17:35:22 · 5536 阅读 · 2 评论 -
几种常见的排序算法
日常操作中常见的排序方法有:冒泡排序、快速排序、选择排序、插入排序、希尔排序,甚至还有基数排序、鸡尾酒排序、桶排序、鸽巢排序、归并排序等。冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。转载 2017-11-25 17:48:15 · 369 阅读 · 0 评论 -
Java中overload与override的区别
1、综述 重写(Override)也称覆盖,它是父类与子类之间多态性的一种表现,而重载(Overload)是一个类中多态性的一种表现。 override从字面就可以知道,它是覆盖了一个方法并且对其重写,以求达到不同的作用。overload它是指我们可以定义一些名称相同的方法,通过定义不同的输入参数来区分这些方法,然后再调用时,VM就会根据不同的参数样式,来选择合适的方法执行。2、转载 2018-01-24 10:00:23 · 373 阅读 · 0 评论 -
Java JDK版本 switch
switch(表达式) {case 值1: 语句体1;break;case 值2: 语句体2;break;...default: 语句体n+1;break;}格式解释说明:switch表达式:可以是byte,short,int,charJDK5以后可以是枚举JDK7以后可以是字符串查看某一工程所使原创 2018-01-24 10:00:57 · 900 阅读 · 0 评论 -
tomcat正常启动后http://localhost:8080/报错404
出现的问题:tomcat在eclipse里面能正常启动,而在浏览器中访问http://localhost:8080/不能访问,且报404错误。同时其他项目页面也不能访问。原因:eclipse将tomcat的项目发布目录(tomcat 目录中的webapp)重定向了,所以你会发现在tomcat安装目录下的webapp目录里面找不到你的项目文件。解决办法:1->先把部署在tom转载 2018-01-24 10:19:03 · 4295 阅读 · 0 评论 -
Unable to instantiate default tuplizer [org.hibernate.tuple.entity.PojoEntityTuplizer] 怎么解决
在用到hibernate时遇到这个问题,原因是实体类 和数据库中的表的映射关系不一致。解决方法:(1)检查实体类的属性和数据库的表的字段名的名称、类型等是否对应。(2)检查实体类的get 和set 方法是否和实体类的属性都一一对应。原创 2018-02-01 13:26:42 · 747 阅读 · 0 评论 -
Java 的 VO类
今天,遇到一个操作,要在页面上查看一些固定的信息,用到了VO类和 从内存中加载数据。下面说一下 VO类。首先,java有几种对象(PO,VO,DAO,BO,POJO) 一、PO:persistant object 持久对象,可以看成是与数据库中的表相映射的java对象。使用Hibernate来生成PO是不错的选择。 二、VO:value object值对象。通常用原创 2018-02-02 12:31:44 · 31035 阅读 · 6 评论 -
Java中的overload和override的区别
重写(Override)也称覆盖,它是父类与子类之间多态性的一种表现,而重载(Overload)是一个类中多态性的一种表现。 override从字面就可以知道,它是覆盖了一个方法并且对其重写,以求达到不同的作用。overload它是指我们可以定义一些名称相同的方法,通过定义不同的输入参数来区分这些方法,然后再调用时,VM就会根据不同的参数样式,来选择合适的方法执行。2、override(重写,...转载 2017-10-26 21:27:47 · 619 阅读 · 0 评论 -
java的(PO,VO,TO,BO,DAO,POJO)解释
java的(PO,VO,TO,BO,DAO,POJO,DO)解释action包 顾名思义请求,主要是和view 即我们所说的视图就是页面打交道,action类 是 操作方法,对于页 面Form 表单的操作方法,具体操作方法的实现就在Action 类里面。bean 就是基本的JavaBean ,多为实体dao包 就是和数据库打交道的,crud 即增删改查,对于数据库的增删改查的转载 2018-02-02 14:32:02 · 183 阅读 · 0 评论 -
Spring框架学习阶段的没有自动编译致使某一文件不存在问题
这是今天遇到的文件不存在的异常:Caused by: java.io.FileNotFoundException: class path resource [com/gede/modules/struts2/BaseActionSupport.class] cannot be opened because it does not exist at org.springframework.core...原创 2018-03-09 19:59:19 · 656 阅读 · 0 评论 -
tomcat和servlet的小知识
关于tomcat和servlet的一些问题: 1、如何启动tomcat服务器?如何终止? 在tomcat 下的 bin 目录下 找到 “startup.bat” 这个应用,然后双击,启动服务器。 如图: (1) (2) 在tomcat 下的 bin 目录下 找到 “shutdown.bat” 这个应用,然后双击,停止服务器。 如图: 2、servlet ...原创 2018-03-15 17:05:39 · 177 阅读 · 0 评论 -
String的charAt方法
charAt方法: java.lang.String.charAt()方法 返回 指定索引 处的 char值。索引范围 是从0 到length() - 1。 对于数组的索引,序列的第一个 char值 是在索引 为0,索引1,以此类推。。 这是String类中的关于这个方法的源代码:public char charAt(int index) { if ((index <...原创 2018-03-22 11:57:11 · 34572 阅读 · 0 评论 -
查看Web项目的部署信息
操作:在Java Web项目上鼠标右键然后选择“Properties”,然后点击“Deployment Assembly”查看。显示:必须保证你的项目是Web项目哦。。原创 2018-04-02 15:57:00 · 492 阅读 · 0 评论 -
Java文件中写一个常量,然后报错
出现的问题:报的错误:The value of the field WebSocketController.nickname is not used。翻译是:字段的值websocket控制器.昵称不被使用 。The blank final field nickname may not have been initialized 翻译是:空白最后字段昵称可能尚未初始化。 需要的做法是:写一个类的构造...原创 2018-04-02 17:07:56 · 830 阅读 · 0 评论 -
JSP 页面上使用EL表达式后的问题
今天遇到了一个问题:syntax error on token "}",delete this token 翻译过来是:标记“}”上的语法错误,请删除此令牌 。syntax error ,insert "}" to complete block 翻译过来是:语法错误,将“}”插入到完成块中 。syntax error ,insert "}" to complete ClassBody 翻译过...原创 2018-04-03 11:21:05 · 582 阅读 · 0 评论 -
数据库的连接
// Java连接数据库Connection conn = null;PreparedStatement stat = null;Result result = null;// 如果是Oracle数据库,则是 driver = "oracle.jdbc.OracleDriver";private String driver = "com.mysql.jdbc.Driver";// O...原创 2018-03-28 17:37:29 · 196 阅读 · 0 评论 -
forward与(重定向)redirect的区别
forward与(重定向)redirect的区别forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器。浏览器根本不知道服务器发送的内容从哪里来的,所以它的地址栏还是原来的地址。redirect是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址,所以地址栏显示的是新的URL。forward转发页面和转发到的页面可以共享...原创 2018-03-29 15:00:37 · 411 阅读 · 0 评论 -
Pattern和Matcher具体的用法
Pattern p = Pattern.compile("a*b");Matcher m = p.matcher("aaaaab"); boolean b = m.matches(); 每一步的作用和意思。Pattern是一个正则表达式经编译后的表现模式。Matcher 一个Matcher对象是一个状态机器,它依据Pattern对象做为匹配模式对字符串展开匹配检查。 都是在java.util....原创 2018-04-25 14:38:52 · 990 阅读 · 0 评论 -
Java读取、写入、处理Excel文件中的数据
Java读取、写入、处理Excel文件中的数据转载 2018-05-17 14:37:36 · 184 阅读 · 0 评论 -
Multiple markers at this line @Override的解决方法
使用Eclipse 进行项目开发,在实现类中的方法前面如果添加@Override就提示“Multiple markers at this line”的错误,问题描述如下 Multiple markers at this l...转载 2018-05-11 14:35:04 · 5121 阅读 · 0 评论 -
解决 java compiler level does not match the version of the installed java project facet 问题
java compiler level does not match the version of the installed java project facet错误的解决因工作的关系,Eclipse开发的Java项目拷来拷去,有时候会报一个很奇怪的错误。明明源码一模一样,为什么项目复制到另一台机器上,就会报“java compiler level does n...转载 2018-05-11 14:41:44 · 142 阅读 · 0 评论 -
Java的replaceAll()方法
1、这个方法是String类中的方法2、源代码是:public String replaceAll(String regex, String replacement) { return Pattern.compile(regex).matcher(this).replaceAll(replacement); }3、replaceAll() 方法使用给定的参数 replace...转载 2018-04-27 14:38:13 · 9249 阅读 · 0 评论 -
Java工具类StringUtils中trim、trimToEmpty、trimToNull方法详解
1. trim方法源码详解 public static String trim(String str) { return str == null ? null : str.trim(); }源码解析:输入参数为null时返回null,否则去除掉字符串两边的空格或者制表符(tab键,一个tab键代表两个空格);2. trimToEmpty方法源码详解 public...转载 2018-04-27 14:43:22 · 6333 阅读 · 0 评论 -
Java8的新特性——使用lambda表达式和语法
lambda表达式的基本语法形式:()->方法体。 而在整个java之中,对于lambda表达式一共定义了有三类语法: (params) -> 单行语句; (params) ->表达式; (params) ->{多行语句};...原创 2018-05-14 16:50:56 · 172 阅读 · 0 评论 -
死锁
一、死锁的定义多线程以及多进程改善了系统资源的利用率并提高了系统 的处理能力。然而,并发执行也带来了新的问题——死锁。所谓死锁是指多个线程因竞争资源而造成的一种僵局(互相等待),若无外力作用,这些进程都将无法向前推进。下面我们通过一些实例来说明死锁现象。先看生活中的一个实例,2个人一起吃饭但是只...转载 2018-05-22 14:48:38 · 107 阅读 · 0 评论 -
(线程安全的HashMap)ConcurrentHashMap和HashMap的区别
从JDK1.2起,就有了HashMap,正如前一篇文章所说,HashMap不是线程安全的,因此多线程操作时需要格外小心。在JDK1.5中,伟大的Doug Lea给我们带来了concurrent包,从此Map也有安全的了。ConcurrentHashMap具体是怎么实现线程安全的呢,肯定不可能是每个方...转载 2018-05-22 16:58:30 · 1705 阅读 · 0 评论 -
查询数据慢的解决方法
找到的资料:用缓存可以加快加载速度,但是还是要加载的,用ajax嘛!~需要加载那里就加载那里!局部刷新比全局刷新那不是快一点点啊!页面上的东西 能不刷新就不刷新,至于数据方面太多的话还是要做分页的,分页后的查询可以每次都查询下一页,保存到缓存,然后翻页的时候把缓存里的拿出来,后台再去查下一页,这一体验效果会好很多的哦!更专业的解决方法:...原创 2018-07-03 15:19:29 · 1218 阅读 · 0 评论 -
两种include方式的作用
一、前言 身为一名coder有太多太多的知识点要去学,太多太多的东西要去记。往往一些小细节也就难免疏忽,但悲催的是多数困恼你的bug就是因为这些微不足道的知识点。我们又不是机器人,怎么可能什么都记得了呢。更多的是遇到问题->解决问题->成为经验,这种提升模式。其实多去交流,多去分享,在你还未遇到问题之前就能预先知晓解决方法,或许提升的更快...转载 2018-07-03 15:46:06 · 4437 阅读 · 0 评论 -
当SQL中ORDER BY待排序字段值相同时,查询结果排序
原文地址:https://blog.csdn.net/wwwwei_csdn/article/details/78181197前言 数据库分页是后台经常要使用的技术手段,有时候进行数据库查询会根据业务需要对某一字段排序,那么当待排序字段值相同时,我们得到的查询结果会是什么呢?问题描述 数据分页时需要根据数据记录创建时间create_time字段倒序,即使用order by cre...转载 2018-07-16 15:58:20 · 20477 阅读 · 5 评论