JAVA
零点起航
java新手
展开
-
java 设计模式
一、设计模式的六大原则1、开闭原则(Open Close Principle)开闭原则就是说对扩展开放,对修改关闭。在程序需要进行拓展的时候,不能去修改原有的代码,实现一个热插拔的效果。所以一句话概括就是:为了使程序的扩展性好,易于维护和升级。想要达到这样的效果,我们需要使用接口和抽象类,后面的具体设计中我们会提到这点。2、里氏代换原则(Liskov Substitutio原创 2016-10-10 16:30:09 · 252 阅读 · 0 评论 -
xStream 将xml转为javaBean
1、xml格式 000000000183585090 FIMS,LOBA 000000000183585090 PRMT_TMPL_CODE 000001 0053749 2、项目添加jar包 com.thoughtworks.xstream xstream 1.4.23、根据原创 2016-11-02 16:08:50 · 1298 阅读 · 0 评论 -
对AOP的认识
一、概念【AOP(Aspect Orient Programming)面向切面编程】定义:在运行时,动态地将代码切入到类的指定方法、指定位置上的编程思想就是面向切面的编程。可以这样理解,面向对象编程(OOP)是从静态角度考虑程序结构,面向切面编程(AOP)是从动态角度考虑程序运行过程。二、AOP的优点1、降低模块的耦合度2、使系统容易扩展3、设计决定的迟绑定4、原创 2016-11-29 11:57:57 · 428 阅读 · 0 评论 -
javax validation--参数基础校验
源地址:http://jinnianshilongnian.iteye.com/blog/1990081?page=2#commentsBean Validation 1.1当前实现是hibernate validator 5,且spring4才支持。接下来我们从以下几个方法讲解Bean Validation 1.1,当然不一定是新特性: 集成Bean Validati转载 2017-02-20 17:24:19 · 32826 阅读 · 0 评论 -
JCS原理及使用
1.概要 JCS是Jakarta的项目Turbine的子项目,它是复合式的缓冲工具,具有配置灵活的特点。JCS提供内存、硬盘、分布式架构、构建缓存 服务器四种方式来实现对象缓存;能够很方便的实现缓存的差异化定制。有缓冲对象时间过期设定。对于一些需要频繁访问而每访问一次都非常消耗资源的对象,可以临时存放在缓冲区中,这样可以提高服务的性能。而JCS正是一个很好的缓冲工具。缓冲工具转载 2017-06-13 09:27:02 · 2429 阅读 · 0 评论 -
pom.xml详解
什么是pom? pom作为项目对象模型通过xml表示maven项目,使用pom.xml来实现。主要描述了项目:包括配置文件;开发者需要遵循的规则,缺陷管理系统,组织和licenses,项目的url,项目的依赖性,以及其他所有的项目相关因素。 一、主要结构: 项目基本信息信息--> 4.0.0 ... ... ... ... ...原创 2017-06-13 18:10:24 · 592 阅读 · 0 评论 -
Java四种线程池的使用
转载至:http://cuisuqiang.iteye.com/blog/2019372转载 2017-08-21 21:50:52 · 190 阅读 · 0 评论 -
Java多线程基础
前言多线程并发编程是Java编程中重要的一块内容,也是面试重点覆盖区域,所以学好多线程并发编程对我们来说极其重要,下面跟我一起开启本次的学习之旅吧。正文线程与进程1 线程:进程中负责程序执行的执行单元线程本身依靠程序进行运行线程是程序中的顺序控制流,只能使用分配给程序的资源和环境2 进程:执行中的程序一个进程至少包含一个线程3 单线程:程转载 2017-08-29 19:48:33 · 351 阅读 · 0 评论 -
Java内省机制
反射与内省的区别反射是在运行状态把Java类中的各种成分映射成相应的Java类,可以动态的获取所有的属性以及动态调用任意一个方法,强调的是运行状态。内省(IntroSpector)是Java 语言对 Bean 类属性、事件的一种缺省处理方法。 内省是与反射类似的技术,它是以规范化的Java bean为模板,将类中的成员变量和getter、setter方法关联起来它的一般用...原创 2019-06-18 17:19:01 · 151 阅读 · 0 评论 -
Java中final与 static final 修饰的常量的区别
final可用来修饰类,变量,方法:final修饰的类不能有子类,也不能被继承。final修饰的变量是一个常量,不能重新赋值。final修饰的方法不能重写final修饰的常量① 与static final 修饰的常量② 的区别。例如:① final long CURRENT_TIME=system.currentMillis();② static final long...原创 2019-08-08 10:09:48 · 1591 阅读 · 0 评论 -
Java并发--Java中的CAS操作
梳理Java多线程和并发的相关知识,主要是系统的梳理一下J.U.C包里的一些东西,看过很多遍的AQS和实现类,还有各种并发安全的集合类。最重要的就是本文讲的CAS操作,可以说是整个J.U.C包的灵魂。1、在JDK 5之前Java语言是靠synchronized关键字保证同步的,这会导致有锁。锁机制存在以下问题: 1)在多线程竞争下,加锁、释放锁会导致比较多的上下文切换...原创 2019-08-07 14:02:53 · 137 阅读 · 0 评论 -
java keySet与entrySet
entrySet方法比keySet方法效率高public static void main(String[] args) { Map map = new HashMap(); map.put("key1", "key1"); map.put("key2", "key2"); map.put("key3", "key3");原创 2016-10-10 12:03:11 · 493 阅读 · 0 评论 -
任务调度ScheduledExecutorService
译:http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ScheduledExecutorService.html父类:Executor, ExecutorService子类:ScheduledThreadPoolExecutor方法:1、schedule(Runnable command, long de翻译 2016-09-14 17:04:03 · 4265 阅读 · 0 评论 -
Daemon thread
1、所谓守护线程就是运行在程序后台的线程,程序的主线程Main(比方java程序一开始启动时创建的那个线程)不会是守护线程 2.Daemon thread在Java里面的定义是,如果虚拟机中只有Daemon thread在运行,则虚拟机退出。 虚拟机中可能会同时有很多个线程在运行,只有当所有的非守护线程都结束的时候,虚拟机的进程才会结束。如果创建的线程没有显示调用此方法,这默认为用户线程原创 2016-08-31 16:14:45 · 460 阅读 · 0 评论 -
大数处理类BigInteger和BigDecimal浅谈
这两个类位于java.math包内,要使用它们必须在类前面引用该包:import java.math.BigInteger;和import java.math.BigDecimal;BigInteger和BigDecimal分别表示不可变的任意精度的整数和不可变的有符号的任意精度的十进制数(浮点数)。主要用于高精度计算中。这两个类使得java中的大数,高精度运算变得很简单。下面从几个方面对转载 2012-08-25 15:59:29 · 881 阅读 · 0 评论 -
Java数据类型和MySql数据类型对应表
Java数据类型和MySql数据类型对应表java mysql 数据类型对照类型名称显示长度数据库类型JAVA类型JDBC类型索引(int)描述 VARCHARL+NVARCHARjava.lang.String12 CHARNCHARjava.lang原创 2013-01-09 14:16:58 · 319 阅读 · 0 评论 -
如何在ajax请求中设置特殊的RequestHeader
如何在请求之前为请求添加特殊的一些头部信息?在ajax函数中,有一个beforeSend方法,这个方法接受一个参数,就代表了发起异步请求的XMLHttpRequest对象,我们可以用该对象的setRequestHeader方法实现我们的目的 $(function() { $("#test").click原创 2013-11-29 14:01:08 · 3066 阅读 · 0 评论 -
java synchronized
只知其一不知其二。找了一下,供我以后再看:第一篇: Java语言的关键字,当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码。 一、当两个并发线程访问同一个对象object中的这个synchronized(this)同步代码块时,一个时间内只能有一个线程得到执行。另一个线程必须等待当前线程执行完这个代码块以后才能执行该代码块。原创 2013-12-24 14:18:29 · 484 阅读 · 0 评论 -
SpringMvc中 ModelMap和ModelAndView的区别与联系
ModelMap对象主要用于传递控制方法处理数据到结果页面,也就是说我们把结果页面上需要的数据放到ModelMap对象中即可,他的作用类似于request对象的setAttribute方法的作用,用来在一个请求过程中传递处理的数据。通过以下方法向页面传递参数:addAttribute(String key,Object value);原创 2014-05-19 11:43:47 · 1103 阅读 · 0 评论 -
java 枚举类型enum 的使用
最近跟同事讨论问题的时候,突然同事提到我们为什么java 中定义的常量值不采用enmu 枚举类型,而采用public final static 类型来定义呢?以前我们都是采用这种方式定义的,很少采用enum 定义,所以也都没有注意过,面对突入起来的问题,还真有点不太清楚为什么有这样的定义。既然不明白就抽时间研究下吧。Java中的枚举类型采用关键字enum 来定义,转载 2014-06-25 22:22:04 · 403 阅读 · 0 评论 -
关于request,session,application
request,session,application,三者比较作用域::request 各自对应的接口request对象 对应的接口 :javax.servlet.ServletRequest 其子接口:javax.servlet.http.HttpServletRequestsession对象 对应的接口 :javax.servl转载 2014-06-25 21:45:51 · 425 阅读 · 0 评论 -
java date类型和calendar类型区别
Date类在JDK1.0中,Date类是唯一的一个代表时间的类,但是由于Date类不便于实现国际化,所以从JDK1.1版本开始,推荐使用Calendar类进行时间和日期处理。这里简单介绍一下Date类的使用。1、使用Date类代表当前系统时间Date d = new Date();System.out.println(d);使用Date类的默认构造方法创建出的对象就代表当前时间原创 2014-11-19 11:53:08 · 497 阅读 · 0 评论 -
Servlet虚拟路径映射
在web.xml文件中,一个元素用于映射一个Servlet的对外访问路径,该路径也称为虚拟路径。例如/TestServlet,其中“/TestServlet”就是一个虚拟路径。创建的Servlet只有在web.xml中映射了虚拟路径,客户端才能访问。但是,在映射Servlet时,有一些细节问题需要注意,比如Servlet的多重映射,在映射路径中使用通配符等,接下来,针对这些问题进行详细解释,具体如原创 2015-05-07 10:18:35 · 2112 阅读 · 0 评论 -
java对象和json数据转换实现方式3-使用jackson实现
[java] view plaincopypackage com.yanek.util.json; import java.io.IOException; import java.io.StringWriter; import java.util.ArrayList; import java.util.List; imp转载 2016-01-21 15:50:46 · 405 阅读 · 0 评论 -
Http 四种请求访问代码 HttpGet HttpPost HttpPut HttpDelete
逻辑:String url = "http://www.baidu.com";//将要访问的url字符串放入HttpPost中HttpPost httpPost = new HttpPost(url);//请求头 放置一些修改http请求头和cookiehttpPost.setHeader("Accept", "application/json");......//如果原创 2016-08-31 15:06:46 · 1060 阅读 · 0 评论 -
什么是CAS机制?
首先我们看两个问题: Java当中CAS的底层实现 CAS的ABA问题和解决方法 首先看一看AtomicInteger当中常用的自增方法incrementAndGet:public final intincrementAndGet() { for(;;) { intcurrent = get(); int...原创 2019-08-07 14:30:59 · 162 阅读 · 0 评论