java
NsdnResponsibility
这个作者很懒,什么都没留下…
展开
-
JavaEE的13种核心技术
java的大方向就是JavaEE,JavaEE不仅仅是socket编程,具体包括13中核心技术。 JAVAEE的核心API与组件 JAVAEE平台由一整套服务(Services)、应用程序接口(APIs)和协议构成,它对开发基于Web的多层应用提供了功能支持,下面对JAVAEE中的13种技术规范进行简单的描述(限于篇幅,这里只进行简单的描述): 1、JDB转载 2016-03-18 09:53:35 · 4647 阅读 · 0 评论 -
从 MVC 到前后端分离
从 MVC 到前后端分离1 理解 MVCMVC 是一种经典的设计模式,全名为 Model-View-Controller,即 模型-视图-控制器。其中,模型 是用于封装数据的载体,例如,在 Java 中一般通过一个简单的 POJO(Plain Ordinary Java Object)来表示,其本质是一个普通的 Java Bean,包含一系列的成员变量及其 getter/setter 方法。对于 视转载 2017-03-07 15:59:07 · 540 阅读 · 0 评论 -
java 设置代理IP
public static void main(String[] args) { System.setProperty("http.maxRedirects", "50"); System.getProperties().setProperty("proxySet", "true"); String ip = "xxx.xxx.xxx.xxx";原创 2017-02-10 15:16:35 · 1161 阅读 · 0 评论 -
由Integer封装与拆箱引申出的java面试题
Integer自动封装的陷阱public class IntegerTest {public static void main(String[] args) { Integer a=1000,b=1000; Integer c=100,d=100; System.out.println(a==b);//false System.out.println(c==d);/转载 2016-08-31 13:49:40 · 560 阅读 · 0 评论 -
奇怪的Java题:为什么1000 == 1000返回为False,而100 == 100会返回为True?
这是我们今天要讨论的话题,因为我觉得它非常的有趣。如果你运行如下代码:Integer a = 1000, b = 1000; System.out.println(a == b);//1 Integer c = 100, d = 100; System.out.println(c == d);//2 你会得到以下运行结果:false true 我们知道,如果两个引用指向同一个对象,那么=转载 2016-08-31 11:18:09 · 753 阅读 · 0 评论 -
java实现二叉树的构建以及3种遍历方法
二叉树的遍历 二叉树的遍历有三种方式,如下: (1)前序遍历(DLR),首先访问根结点,然后遍历左子树,最后遍历右子树。简记根-左-右。 (2)中序遍历(LDR),首先遍历左子树,然后访问根结点,最后遍历右子树。简记左-根-右。 (3)后序遍历(LRD),首先遍历左子树,然后遍历右子树,最后访问根结点。简记左-右-根。 1.树的构建方法 2.具体代码实现:import java.转载 2016-04-11 17:03:01 · 6242 阅读 · 0 评论 -
mybatis resultMap 的日期字段无法获取时分秒的问题
mybatis 的resultMap配置在映射Date类型字段时,对应的javabean属性获取的值不包含有时分秒。查阅资料 发现,需要将其jdbcType字段设置为:TIMESTAMP. 如:错误的设置: <result column="CREATE_DATE" property="createDate" jdbcType="DATE" />这种配置获取到的值:2016-04-07 00:00:原创 2016-04-26 10:08:34 · 11796 阅读 · 0 评论 -
-Dmaven.multiModuleProjectDirectory system propery is not set. Check $M2_HOME environment variable
eclipse中的maven项目,clean(build)的时候报错运行时候报错:-Dmaven.multiModuleProjectDirectory system propery is not set. Check $M2_HOME environment variable and mvn script match.解决方法: 设一个环境变量M2_HOME指向你原创 2016-03-23 11:02:00 · 2542 阅读 · 0 评论 -
实现基于url级别的权限控制
很多系统只能控制到用户的菜单权限,而不能控制到用户直接输入url地址访问某些界面的权限,这个如何控制,比如用户张三没有菜单A(菜单A的action地址是:http://localhost:8080/xxx/xxx.do)的权限,用户直接输入这个地址却能访问这个界面。目前后很多的系统都存在这样的权限问题:下面给出几种解决方法: 1.url过滤:直接加一个filter,判断该url是否是用户直接输入原创 2016-04-05 10:45:04 · 10605 阅读 · 1 评论 -
使用 jackson ObjectMapper将java对象转换为json对象
自己做了一java对象转换为json对象的小示例:JacksonTest.javaimport java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import org.codehaus.jackson.map.ObjectMapper;public class Jack原创 2016-04-01 16:32:17 · 31064 阅读 · 0 评论 -
java对象与byte[]数组之间的相互转化,压缩解压缩操作
下面介绍一下java对象之间和byte[]数组之间的相互转化。并对byte[]数据进行压缩操作。java对象转化为byte[]数组可用于redis中实现缓存。(这里暂不做介绍).话不多说直接开实例: 首先我们创建一个java对象:Person.javapublic class Person implements Serializable{ private String userName;原创 2016-03-31 17:43:19 · 18477 阅读 · 2 评论 -
java中GZIPOutputStream 流的使用(EOFException)
GZip流的使用很多人都出现了下面的异常:java.io.EOFException: Unexpected end of ZLIB input stream。或者出现压缩后的数据不全的情况(就是压缩的数据只是原数据的一部分,不能被解压缩) 原因是在使用GZIPOutputStream 对象的时候没有调用close方法. 如:@org.junit.Test public void test原创 2016-03-31 17:28:34 · 8213 阅读 · 0 评论 -
AtomicInteger在实际项目中的应用
AtomicInteger,一个提供原子操作的Integer的类。在Java语言中,++i和i++操作并不是线程安全的,在使用的时候,不可避免的会用到synchronized关键字。而AtomicInteger则通过一种线程安全的加减操作接口。例子:Java代码:CashierContext类部分代码: private Map<String, AtomicInteger> counter转载 2016-03-30 14:09:18 · 1478 阅读 · 0 评论 -
java Object 对象的的wait()、notify()、notifyAll()介绍
wait()、notify()、notifyAll()是三个定义在Object类里的方法,可以用来控制线程的状态。 这三个方法最终调用的都是jvm级的native方法。随着jvm运行平台的不同可能有些许差异。如果对象调用了wait方法就会使持有该对象的线程把该对象的控制权交出去,然后处于等待状态。 如果对象调用了notify方法就会通知某个正在等待这个对象的控制权的线程可以继续运行。 如果对象转载 2016-03-30 09:46:22 · 10996 阅读 · 0 评论 -
spring mvc 前台提交400错误问题
在编写jsp页面过程中,jsp页面中的name属性值和后台要接受的javabean对象的属性名不相同的时候,发现无法提交form表单,提示400错误。所以当出现400错误时候请首先检查是不是你的前台name属性与后台的javabean属性名是否相同原创 2016-03-18 10:11:40 · 5181 阅读 · 0 评论 -
java中常见的内存溢出错误
一、java.lang.OutOfMemoryError: PermGen spacePermGen space的全称是Permanent Generation space,是指内存的永久保存区域,这块内存主要是被JVM存放Class和Meta信息的,Class在被Loader时就会被放到PermGen space中,它和存放类实例(Instance)的Heap区域不同,GC(Ga转载 2016-03-18 09:57:28 · 1481 阅读 · 0 评论 -
jdk动态代理源码剖析
摘要 相比于静态代理,动态代理避免了开发人员编写各个繁锁的静态代理类,只需简单地指定一组接口及目标类对象就能动态的获得代理对象。 代理模式 使用代理模式必须要让代理类和目标类实现相同的接口,客户端通过代理类来调用目标方法,代理类会将所有的方法调用分派到目标对象上反射执行,还可以在分派过程中添加”前置通知”和后置处理(如在调用目标方法前校验权限,在调用完目标方法后打印日志等)等功能。使用动态转载 2017-04-07 16:39:26 · 555 阅读 · 0 评论