java
文章平均质量分 55
zeling1005
Java小菜鸟一枚
展开
-
JAVA问题之泛型数组
java中类似下面的代码编译器是会报错的: LinkedList>[] li=new LinkedList>[20]; li[9]=new LinkedList(); li[9].add("ASD"); 上网查了相关资料,好像是java的泛型不是真正的泛型,它只是在编译期间检查而已,之后会擦除掉信息,所以java不支持上述代码;但是如果想做到类似上述功能的代码要怎么做呢?本人整了原创 2015-09-03 14:40:27 · 242 阅读 · 0 评论 -
web.xml中url-pattern匹配规则
小知识一般的URL组成URL = 服务器地址 + RequestURI例如URI:http://localhost:8080/practice/main 【http://localhost:8080】就是服务器地址 【/practice/main】就是RequestURI RequestURI:/practice/main 【/practi...原创 2018-01-27 22:06:52 · 597 阅读 · 0 评论 -
【问题记录】springmvc国际化问题
异常-Cannot change HTTP accept header - use a different locale resolution strategyspringmvc国际化时,locale resolution strategy的bean命名一定是localeResolver 例如:<bean id="localeResolver" class="o...原创 2018-01-26 20:12:24 · 244 阅读 · 0 评论 -
Java单例模式实现方式
懒汉式-非线程安全public class LazyNoSafe { private static LazyNoSafe instance; public static LazyNoSafe getInstance() { if (instance == null) { instance = new LazyNoSafe(); ...原创 2018-01-24 23:56:45 · 361 阅读 · 0 评论 -
数据结构-各种树的定义
术语 节点深度:对任意节点x,x节点的深度表示为根节点到x节点的路径长度。所以根节点深度为0,第二层节点深度为1,以此类推 节点高度:对任意节点x,叶子节点到x节点的路径长度就是节点x的高度 树的深度:一棵树中节点的最大深度就是树的深度,也称为高度 父节点:若一个节点含有子节点,则这个节点称为其子节点的父节点 子节点:一个节点含有的子树的根节点称为该节点的子节点 ...原创 2018-01-21 02:57:47 · 20356 阅读 · 5 评论 -
Java重构-策略模式、状态模式、卫语句
前言当代码中出现多重if-else语句或者switch语句时。弊端之一:如果这样的代码出现在多处,那么一旦出现需求变更,就需要把所有地方的if-else或者switch代码进行更改,要是遗漏了某一处,那么程序就会出错。弊端之二:代码逻辑难以理解。卫语句卫语句的使用,并不能改变前言说的弊端:一旦需求更改,需要修改所有使用更改需求的if-else代码块。不过使用卫语句可以让自己或者代码...原创 2018-02-07 22:11:06 · 10417 阅读 · 9 评论 -
eclipse远程调试
配置参数程序运行在windows下,编辑catalina.bat文件,添加:set CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000程序运行在linux下,编辑catalina.sh文件,...原创 2018-02-07 22:11:53 · 266 阅读 · 0 评论 -
eclipse 断点类别
行断点行断点位于一般方法内,双击代码行左边就可以设置行断点: 行断点可以设置条件,右键断点-properties: 1设置效果是第几次到达时暂停,图中所示是当第三次到达时暂停 2是开启条件断点 3是设置条件,图中所示是当count的值为3时暂停 合并起来就是,当第三次到达并且count的值为3时程序暂停。变量断点好像只有变量域为类的变量才能...转载 2018-02-07 22:12:04 · 483 阅读 · 0 评论 -
maven下载、配置和安装
Maven简介#Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation ...原创 2018-02-07 22:12:13 · 936 阅读 · 0 评论 -
log4j2配合slf4j使用
说明 log4j2被用于日志输出,相信绝大多数程序猿都对此不陌生。笔者刚接触log4j2,因此记个博客备用。 log4j2是一个日志框架,slf4j是日志框架接口,之所以使用log4j2和slf4j搭配使用是为了以后如果项目对日志有其它要求而需要更换日志框架时可以不改动代码,只需要把依赖的jar包换掉就可以了。依赖// log4j2依赖log4j-api-2.8.2....原创 2018-02-07 22:12:37 · 6699 阅读 · 2 评论 -
Java 四种引用介绍及使用场景
强引用-FinalReference介绍: 强引用是平常中使用最多的引用,强引用在程序内存不足(OOM)的时候也不会被回收,使用方式:String str = new String("str");这个str就是强引用。 可用场景: 地球人都知道,但是我讲不出来。软引用-SoftReference介绍: 软引用在程序内存不足时,会被回收,使用方式:// 注...原创 2018-01-28 00:28:10 · 11288 阅读 · 0 评论 -
springmvc异常处理
1.全局异常1.1使用SimpleMappingExceptionResolver这种方式是处理全局异常,只要有对应的异常抛出,就会使用这个bean进行处理。使用SimpleMappingExceptionResolver的话,只要在springmvc配置文件中做如下声明就可以了。 <bean class="org.springframework.w...原创 2018-01-30 00:57:54 · 178 阅读 · 0 评论 -
【问题记录】web项目访问时出现404
请一定检查一下项目的Context root是否是你访问时使用的。 Context root设置为/时,可以直接用ip+端口访问。 Context root设置为项目名的,访问时请带上项目名。 设置方法:右键项目->选择Web Project Settings。原创 2018-01-23 01:23:09 · 2485 阅读 · 0 评论 -
【问题记录】eclipse启动web项目时,spring会初始化两次
背景:一个tomcat,一个eclipse,一个SSM框架的web项目。在eclipse中新建tomcat服务器,默认配置,然后在服务器配置中将Server Locations改成Use Tomcat installation并且将Deploy path换成tomcat安装目录下的webapps。 现象: 将web项目部署到背景中的tomcat服务器中,运行项目。然后在eclipse的控制台...原创 2018-02-06 00:24:28 · 886 阅读 · 0 评论 -
Java对象类型的判断
instanceof判断某个对象是否是某个类的实例或者某个类的子类的实例。它的判断方式大概是这样的: public<T> boolean function(Object obj, Class<T> calzz) { if (obj == null) { return false; } ...原创 2018-02-04 21:00:11 · 37376 阅读 · 1 评论 -
函数式编程笔记
前言最近刚接触到函数式编程这个术语,很迷惑。然后在jdk1.8里面也有看到一些函数式编程的代码块,难以理解,所以啦,在我一顿百度谷歌操作之后,总算对这个概念有了一点了解了,写这篇博文的目的主要是理一下思路,便于后续复习。历史在数学的发展史上,针对category theory出现了一整套函数的运算方法,这个方法被用于编程就是现在的函数式编程。所以函数式编程的本质是数学的运算方法。 ...原创 2018-02-04 11:29:24 · 172 阅读 · 0 评论 -
Java时间类总结
java.util.Date包含有年月日时分秒,精确到毫秒级别。 官方解释:// The class Date represents a specific instant in time, with millisecond precision.// 语句Date date = new Date();System.out.println(date);//输出结果Sat...原创 2018-02-03 16:43:35 · 3267 阅读 · 1 评论 -
【问题记录】MySQL中时间戳转日期格式和Java中时间戳转日期格式偶尔不一致
背景: MySQL的某个字段存放着一些时间戳格式的时间。问题描述: Java程序将MySQL中的时间戳字段取出来,在Java程序中转成yyyy-MM-dd HH:mm:ss格式的时候,偶尔会出现转化情况跟数据库显示的时间不一致的现象,如在MySQL中存的是2018-01-01 12:12:00的时间戳,在Java中转化可能会变成2018-01-01 01:12:00之类的。比较异常的是,这种问...原创 2018-02-03 00:24:30 · 1436 阅读 · 0 评论 -
Java 注解
简介注解是一系列元数据,它提供数据用来解释程序代码,但是注解并非是所解释代码本身的一部分。注解对于代码的运行效果没有直接影响。主要作用 提供信息给编译器: 编译器可以利用注解来探测错误和警告信息 编译阶段时的处理: 软件工具可以用来利用注解信息来生成代码、Html文档或者做其它相应处理。 运行时的处理: 某些注解可以在程序运行的时候接受代码的提取 ...原创 2018-02-02 20:52:21 · 156 阅读 · 0 评论 -
Java IO 常用类简介
字节流输入字节流 InputStream输入字节流的抽象类 ByteArrayInputStreambyte数组输入流 FileInputStream文件输入流 PipedInputStream管道输入流,数据从这端进入管道 FilterInputStream装饰模式的抽象类 DataInputStream各种数据格式输入流 BufferedInp...原创 2018-02-02 01:19:13 · 362 阅读 · 0 评论 -
spring事务管理实现方式
声明式事务 tx及aop配置,利于管理,耦合性低,可读性低 @Transactional注解,不利管理,耦合性高,可读性高 编程式事务 TransactionTemplate类,spring推荐方法 基于PlatformTransactionManager类,比较低级 补充对事务处理前和处理后需要执行某些逻辑的话,可以使用spri...原创 2018-01-31 21:01:19 · 204 阅读 · 0 评论 -
Java监听模式
说明 生活中,监听无处不在。比如说,手机播放音乐功能,也是一种监听:你不点击播放按钮,手机就不放歌,当你点击时,手机就播放音乐。即触发某种行为,便执行相应的动作。组成Java监听模式右三个部分组成:事件源、事件对象、事件监听器当事件源触发某种行为,会自动执行事件监听器里面相应的方法事件监听器方法参数是事件对象,事件对象包含事件源的引用,在方法中可以获取事件源的引用PS...原创 2018-02-07 22:12:46 · 11133 阅读 · 0 评论