
Java
文章平均质量分 68
Mr_Chunlei
这个作者很懒,什么都没留下…
展开
-
数据库事务的四大特性和隔离级别、JAVA同类方法调用事务不生效
数据库事务的四大特性和隔离级别数据库事务的四大特性:原子性、隔离性、一致性和永久性。1-1)、原子性是指已经不能再进行细分,对于数据库的操作要么全部成功,要么全部失败;1-2)、隔离性是指两个事务之间相互不影响,彼此相互隔离;1-3)、一致性是指数据操作过后是从一个一致性的状态到另一个一致性的状态;1-4)、永久性指对数据的改变是永久的;例如:账户A有5000元,分别转给B、...原创 2019-12-13 17:55:43 · 573 阅读 · 0 评论 -
Comparator和Comparable的区别
一)Compartor接口是java.util包中的接口,而Comparable是java.lang包中的接口二)在Compartor接口中包含两个抽象方法,两个方法分别是int compare(T o1, T o2) Compares its two arguments for order. boolean equals(Object obj) Indicates whe原创 2014-04-01 17:44:34 · 844 阅读 · 0 评论 -
java源代码String.java
/* * @(#)String.java 1.188 04/09/14 * * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. */package java.lang;import转载 2014-06-01 14:14:41 · 1081 阅读 · 0 评论 -
java中hashmap
/* * @(#)HashMap.java 1.65 05/03/03 * * Copyright 2005 Sun Microsystems, Inc. All rights reserved. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. */package java.util;import转载 2014-06-01 14:20:47 · 1018 阅读 · 0 评论 -
java源码StringBuffer
/* * @(#)StringBuffer.java 1.99 04/07/15 * * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. */package java.lang;im转载 2014-06-01 14:18:26 · 681 阅读 · 0 评论 -
java中hashset,hashtable
/* * @(#)HashSet.java 1.33 03/12/19 * * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. */package java.util;转载 2014-06-01 14:24:33 · 818 阅读 · 0 评论 -
模拟spring注入
项目中的的spring出现问题,不想使用spring框架进行注入,编写一个简单的spring,实现xml解析和类的注入。所有的框架都可以用java项目,用到了java提供的基础类,所以用到的原理也就呢么多(我刚开始工作2个月,说的不对请谅解)。因此spring用到了注入用到java中的反射机制,aop用到了java的代理机制proxy对象。总结一下自己的设计:设计范围三层:第一层是实体层,原创 2014-09-06 15:50:16 · 1159 阅读 · 0 评论 -
log4j配置文件学习
项目交接了,代码敏感(老大自己说的,我超不赞同)的老大们写的代码太牛了(从来不加注释)无语了,前期任务多,时间紧抱怨看段代码太浪费时间和精力,一天下来眼睛布满血丝。现在免疫了,抛开了太多顾虑,看一段代码很高兴啊哈哈(后期等死咧,任务超多,假期前列了一下18项,没自己时间,不过可以睡个好觉)交接的项目中存在solr和ssh的项目,测试那边想将solr日志和ssh的日志分别打印出来,便于查找,自己原创 2014-09-06 18:24:17 · 859 阅读 · 0 评论 -
配置filter,修改response
在java中增加了过滤器filter,一般我们定义的filter都要继承filter接口从而实现dofilter方法,filter的配置,我们可以在web.xml中进行配置,配置如下: org.springframework.web.context.ContextLoaderListener encodingFilter org.springframework.we原创 2014-09-08 18:04:56 · 3292 阅读 · 1 评论 -
solr4.9r+ Eclipse 4.3+ tomcat 7.5 +winds7(二)
这第二种方法是将solr项目部署到tomcat上,运行tomcat的时候可以直接运行方法。一)首先保证solr4.9,Eclipse 4.3 tomcat 7.5 windows7一切都正常使用(其实这种方式都可以用不到Eclipse4.3),如果有项目用到我们创建的solr项目,直接调用即可,因为项目已经部署到了tomcat的webapp下了。二)首先我们将下载的solr4.9进行解压,找到example\webapps\solr.war然后找到solr.war文件,将solr.war文件拷贝到to原创 2014-08-23 18:18:36 · 1424 阅读 · 0 评论 -
冒泡排序,选择排序,快速排序
package com.hello;public class HelloJava { /** * 冒泡排序(通过一次一次的循环,根据相近两个值进行比较,将大的值往下移) * @author MR ZHANG * @param arr * @return */ public static void getBubbleSort(int[] arr){ for(int i原创 2014-06-16 09:38:45 · 1353 阅读 · 0 评论 -
java中jvm的工作原理
首先我们安装了jdk和jre,但是jdk是为java软件开发工程师而使用的开发工具,我们运行java项目只要含有jre文件即可。对于jvm是内存分配的一块区域,我们知道,当我们开始使用java命令时,开始进行jvm的内存分配等,JVM工作原理和特点主要是指操作系统装入JVM是通过jdk中Java.exe来完成,通过下面4步来完成JVM环境.1.创建JVM装载环境和配置2.装原创 2013-12-08 19:07:17 · 1634 阅读 · 0 评论 -
struts.xml属性配置,action属性,通配符,action接受参数(二)
一、如果我们在Struts.xml中配置了studentadd和studentdelete等多个前面都是student后面是动作的action,并且各自调用动作名的方法,我们就可以使用通配符来配置action,如Struts.xml的配置如下: /studentadd.jsp /studentdelete.jsp 等价于: /stude原创 2013-11-17 14:38:09 · 3586 阅读 · 0 评论 -
将项目部署到tomcat的三种方法
2014年8月初8 星期五 又到星期五了,可以轻松的敲点东西,不担心睡太晚起不来,或者起来后上班打瞌睡。由于近期学习了solr相关的知识,部署solr项目到tomcat上的方式很多,包括官方的等。我自己也找了中非官方的方法,感觉很好。而且以前用MyEclipse开发,出错很少,现在用Eclipse所以部署项目后在后台调用user.dir的时候出错,试了一下午也没事出来,而且越试越想试原创 2014-08-08 23:23:23 · 9093 阅读 · 0 评论 -
web.xml中filter,servlet和listener区别
首先感谢两位大牛,我在大牛的基础上理解加了自己的想法(括号内容),如果来客有心得体会,请留言,谢谢 filter最为过滤器继承了filter接口,在filter接口要实现三个方法:init(),destroy(),dofilter();分别是初始化,析构,和过滤,其中大部分时间花费在doFilter()方法上。 servlet继承与servlet接口,实现方法:in原创 2013-11-16 10:42:54 · 2800 阅读 · 1 评论 -
如何查看jdk,tomcat是多少位的
一、如何查看jdk的位数:在dos系统下输入-ve原创 2014-09-21 22:34:33 · 19897 阅读 · 4 评论 -
学习request获得路径getContextpath, getServletPath,getRequestUri
http://localhost:8080/news/main/list.jsp 则执行下面向行代码后打印出如下结果:1、 System.out.println(request.getContextPath()); 打印结果:/news 2、System.out.println(request.getServletPath()); 打印结果:/main/list.jsp原创 2014-09-09 22:05:35 · 1805 阅读 · 0 评论 -
java中的向下转型和向上转型
一、 java中的向上转型,一般是使用子类实例对象初始化父类对象引用,这种方式一般是安全的,一般为隐身的转换,初始化后的对象只能调用父类的方法和属性,如接口,抽象类的实例化等大多采用这种方式。二、而java中的向下转型,是使用父类实例对象初始化子类实例对象,这个时候就是不安全的,在向下转型时,为了保证转型的安全性要做一下两步:1)使用instanceof进行对象判断,格式为(父类对象)原创 2014-03-06 16:42:54 · 1766 阅读 · 0 评论 -
Java实现乘法表,switch注意事项,if判断,判断字符串中文个数
一、Java乘法表考察的是循环,我们只要使用简单的循环嵌套即可完成,实现代码一如下:package com.hello;public class TreeParser { public static void main(String[] args){ for(int i = 1; i <= 9;i++){ for(int j = 1;j <= i;j++){ Syste原创 2014-03-05 15:11:48 · 1359 阅读 · 0 评论 -
简单的web登录界面加入Hibernate(二)
有前面一节我们知道简答的web页面加入Struts的运行效果和运行机制,现在我们在上面给的基础上加入Hibernate框架,对hibernate最基本的功能与配置进行介绍。为了更好的体现出层次比如Struts的MVC形式等,我们知道当运行到registerAction后会调用后台的execute方法,在execute中会实现数据库的持久化,以及使用JDBC访问数据库,对数据进行操作,当我们加入Hi原创 2013-11-29 13:27:39 · 1028 阅读 · 0 评论 -
java与C++的区别
一、java语言属于解释语言,在解释器后会形成字节码,然后再有JVM转化成机器语言,再有电脑执行,而C++直接编译成机器语言。二、java语言中存在垃圾回收机制,不需要程序员对内存进行定期的释放。而C++需要,虽然java中存在垃圾回收,但是java也会存在内存泄露的问题。三、java中没有指针,除了基本的数据类型外,就只有引用类型。四、java中只存在单继承,C++中允许多继承。(j原创 2013-10-07 19:21:29 · 622 阅读 · 0 评论 -
栈来实现队列,不借用第三变量交换数据,数值移位运算
一、用两个栈来实现队列的功能 一开始我的思路是:当存取时向一个栈中进行Push操作,当取时将存入数据的栈进行Pop操作,然后放入第二个栈中,将最后一个取出,然后再放回原来的栈。 这是考官说要我改进我的思想,因为我的操作浪费时间,来回的在两个栈进行数据操作:这是你就很好想到改进,呢就是当将压栈数据放到第二个栈之后,没必要在放回去,直接取第二个栈就可以了,存还是存第一个栈内。原创 2013-10-06 16:34:16 · 1046 阅读 · 0 评论 -
先序,中序,后序,层次遍历二叉树
package com.hello;import java.util.ArrayDeque;import java.util.Queue;public class HelloJava{public static void main(String[] args){Node f = new Node(null,'F',null);Node g = new Nod原创 2013-10-28 13:33:26 · 999 阅读 · 0 评论 -
java静态代码块,代码块和构造函数
一、如果在类中存在多个静态代码块,则按照顺序执行静态代码块,而且只执行一个,其他的不予执行。非静态代码块,每次构建构造函数时都要执行一次。二、不论是静态代码块还是非静态代码块,都是在构造函数执行之前执行。三、如果含有子类则执行顺序为: 1)执行父类的静态代码块,再在执行子类的静态代码块 2)执行父类的非静态代码块,再执行父类的构造方法 3)执行子类的非静态代码块,再执行子类的构原创 2013-10-07 19:32:17 · 653 阅读 · 0 评论 -
查找两个字符传中最大的相同字符串
package com.hello;import java.util.ArrayList;import java.util.HashSet;import java.util.Set;public class HelloJava{public static Set getSet(String s1,String s2){ArrayList arr1 = new A原创 2013-10-28 14:18:51 · 1242 阅读 · 0 评论 -
String,StringBuffer,StringBuilder,寻找最大相同字符串
一、String,StringBuffer,StringBuilder区别 String是final类型,故一旦声明赋值后就不可以在改变,而StringBuffer是动态的,存在length方法和capacity方法返回容器的大小和存储数据长度,当容器满了是会自动增加。StringBuilder在声明时必须为其声明空间的大小。二、比较两个字符串中的最大串 第一种思路: 1、创建原创 2013-10-07 20:01:22 · 1332 阅读 · 0 评论 -
输出{1,2,2,3,4,5}排列组合,4不能在第三位,3和5不能相邻
package com.hello;import java.util.HashSet;import java.util.Set;/* * @author 张春蕾 * 输出1,2,2,3,4,5的所有排列组合,4不能在第三位,3和5不能相邻 * 本题目的解决时我自己的思路,不知道最总结果是否正确,若不正确请谅解 * 不使用循环递归,忘了是哪个公司的笔试题了 */public c原创 2013-10-28 15:22:43 · 2238 阅读 · 2 评论 -
jvm原理 ClassLoader javac
我们在自学java的时候开始需要安装JDC和JRE,对于软件开发人员来说需要安装JDK,对于不开发只运行java编译完的.class文件,只需要安装JRE即可。而且在安装JDK时也会自动的包含JRE包。 开发者: 作为一个菜鸟我们第一个程序是helloWord!,为了显示我们高端的技术和能力,我们会装13的在text文件中敲代码,当代码敲完后,你会在DOS系统原创 2013-11-10 15:38:21 · 874 阅读 · 0 评论 -
jsp页面,jsp声明,jsp方法块,servlet,jsp内置对象
JSP页面在编译后会自动的生成生成Servlet文件,在jsp中中的代码会自动的生成Servlet的成员方法和成员变量,既JSP页面的声明会生成java类的成员和方法。 JSP页面的方法块,既java块的内容会自动的生成Servlet类的Service方法的的方法体块的内容,故在标签内部不能存在方法的声明。 JSP页面的会自动的生成Service方法的输出语句。其他原创 2013-11-15 15:19:27 · 1615 阅读 · 0 评论 -
web.xml 中的listener、 filter、servlet 加载顺序及其详解
在项目中总会遇到一些关于加载的优先级问题,近期也同样遇到过类似的,所以自己查找资料总结了下,下面有些是转载其他人的,毕竟人家写的不错,自己也就不重复造轮子了,只是略加点了自己的修饰。 首先可以肯定的是,加载顺序与它们在 web.xml 文件中的先后顺序无关。即不会因为 filter 写在 listener 的前面而会先加载 filter。最终得出的结论是:listener -翻译 2013-11-15 14:38:54 · 1007 阅读 · 0 评论 -
Strut.xml内的属性,action属性,package属性,(一)
一、package中的name,extends,namespace 跟java中的package一样,在java中是对相同的名的java类进行package区分,而这里是对相同名的action进行区分。 如: /hello.jsp /hello.jsp namespace可以来确定哪个命名之下的action,e原创 2013-11-17 13:24:27 · 1911 阅读 · 0 评论 -
在action获取request和session,application(四)
在后台获取request,session和application等信息,并且向里面添加信息后再页面进行读取,实现方法有:一、使用在action声明各种类型,这种方法使用actionContext来获得,并且在actionContext中获得的值都是Map类型的。package com.thridProject.action;import java.util.Map;import c原创 2013-11-18 11:25:05 · 2053 阅读 · 0 评论 -
Struts的标签和Struts的OGNL表达式(三)
Struts的标签可以取action的value Stack中内容,而且内容都是map类型的,对于valueStack的内容我们可以使用就可以,因为是根目录而对于request,session等都需要使用#在前台页面可以通过request对象来获取取数据,也可以使用标签;在后台的时候我们可以使用actionContext.getContext.get("request")原创 2013-11-18 10:40:34 · 915 阅读 · 0 评论 -
web项目加入Struts,Hibernate,Spring后的运行机制
首先我们要知道三大框具体的功能与作用,然后就可以大概的了解三大框架的结合点。一、Struts框架的机制就是MVC:M-model层既实体层,就拿简单的登录界面来说,我们在网页上需要用户名和密码,而用户名和密码就可以封装成一个用户实体类。V-view视图层,我们在前台看到的用html,javaScript,jsp,css等编写的页面就是视图层,C-control控制层,我们得到了实体,就要对实体原创 2013-11-21 15:17:34 · 1650 阅读 · 0 评论 -
简单的web登录界面项目,加入Struts(一)
更简单的清晰的理解各个框架之间的运行结构,通过一个简单的用户登录项目进行实现。首先项目用到的MyEclipse,Mysql,Tomcat。我们前面知道当一个url地址被写时,是从项目的web.xml进行开始的所以本项目的web.xml配置如下:<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:原创 2013-11-26 16:34:39 · 3776 阅读 · 0 评论 -
Serializable,externalizable,comprable
对于serializable和externalizable是位于java.io.*包下的接口,因此与输入输出有关,对于需要进行输入输出的类需要进行可持久化序列,所以被序列化的类必须实现serializable接口,这个接口是一个标志性的接口,并不需要实现具体的方法。而externalizable接口需要实现readExternal和writeExternal方法。 对于seria原创 2013-12-01 18:30:17 · 988 阅读 · 0 评论 -
使用LinkedList类实现Stack类型
public class MyStack{ private LinkedList linkedList=null; public MyStack(){ linkedList = new LinkedList(); } //实现Stack的出栈方法 public object pop(){ if(linkedL翻译 2013-09-17 16:44:57 · 1034 阅读 · 0 评论