自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

白夜行

Mars

  • 博客(220)
  • 收藏
  • 关注

转载 简单的interceptor(拦截器)介绍

简答的说,Interceptor(拦截器)将Action共同的行为独立出来,分散了关注编程的方法。在下面实例中,你将看到Interceptor如何在Action执行的前后运行,以及怎么样把结果返回给用户。下图将对你理解有帮助。当一个请求到达struts2框架时,将顺序执行一下的行为。1. Struts2框架首先找到处理这个请求的Action,并发现我这个Action相关联的拦截

2016-12-04 17:44:48 656

原创 关于CSDN文章被自己不小心删除的解决办法

辛辛苦苦写地文章如果不小心被#自己#删除,在回收站了点“编辑”又恢复不了该怎么办呢?简单粗暴解决方法如下:(1)找到回收站;(2)点击打开想要恢复的文章;(3)虽然标题上显示“已删除”,但是还是能在页面上看到文章内容的,下面就简单粗暴复制文章,粘贴到新的本章编辑框中,重新发布。之前还麻烦客服来恢复,这样自己就可以恢复了。虽然方法比较low,但是还是有用的。

2016-12-02 10:21:01 3428 2

原创 数据结构—链表(总结)

链表一、增删1.增在链表中插入一个目标节点keyNode(1)在链表尾插入:直接找到最后一个节点lastNode,使得lastNode.next=keyNode(2)在链表中间插入,特别是插入节点后要保持链表的有序性的问题:需要找到插入的位置,比如要查到mNode和nNode之间,那么:mNode.next=keyNode   ,  keyNode.next=nNode

2016-12-01 16:03:18 734

原创 数据结构—链表(三)

主要内容:检测链表是否有环、在不知道头指针的情况下怎么删除非末尾节点、判断两个链表是否相交、找到相交链表的交点。重点是看懂解题思路,思路明白了,代码就非常好写了。package com.sf.linkedlist;/** * Created by laxe on 2016/12/1. */public class LinkedListDemo2 { static

2016-12-01 14:59:35 445

原创 数据结构—链表(二)

主要内容:本次练习包括删除链表中的重复数据、找出单链表中倒数第K个元素、链表反转、从尾到头输出单链表、寻找单链表的中间节点。package com.sf.linkedlist;import java.util.ArrayList;import java.util.HashMap;import java.util.Iterator;import java.util.List;/

2016-12-01 08:57:35 340

原创 数据结构-链表(一)

单链表的增、删、排序package com.sf.linkedlist;/** * Created by ... on 2016/11/30. */class Node{ Node next=null; int val; public Node(int val){ this.val=val; }}public class Sing

2016-11-30 11:51:01 362

原创 Intellij IDEA--创建Struts2项目和使用JRebel实现热部署

一、创建Struts2项目刚开始用IDEA的时候,会对Project和Module有些疑惑,上网查了很多资料,得出这样的结论:1,IDEA中的project相当于Eclipse中的WorkSpace,Module相当于Eclipse中的project;2,一个project中可以包含多个Module;3,实际上,把Project也可以作为一个真正的项目()二、使用J

2016-11-29 15:13:32 1429

转载 IntelliJ IDEA 实用快捷键

Ctrl+/ 或 Ctrl+Shift+/ 注释(// 或者/*...*/ )Ctrl+D 复制行Ctrl+X 删除行快速修复 alt+enter (modify/cast)代码提示 alt+/ctr+G 定位某一行Shift+F6 重构-重命名Ctrl+R 替换文本Ctrl+F 查找文本Ctrl+E 最近打开的文件Ctrl+J 自动代码组织

2016-11-28 10:38:55 338

原创 Intellij IDEA--使用笔记1

一、创建Struts2项目可以根据网上的很多教程来成功创建Struts2项目。这里就不再多说了。上图看一下IDEA的强大。对于初次使用IDEA的妹纸来说,真心觉得好方便啊,创建完后长这样:Struts2项目多需要而jar包都有了。上手随便在Struts.xml文件中打了点代码,感觉代码提示功能很好用,成功成为迷妹一枚。二、服务器启动时出现服务器启动时出现java.lang.Clas

2016-11-27 20:32:47 658

原创 Intellij IDEA的下载和使用(针对学生的免费使用计划)

一、下载和使用授权(针对学生)1、下载可以在Intellij IDEA官网上下载需要的版本。下载地址:https://www.jetbrains.com/idea/2、学生免费试用首先,你得现有你们学校的官方邮箱账户,例如XXX@YYY.edu.cn其次,打开产品免费试用申请指南:学生授权申请 按照指南,注册自己的JetBrains账号。最后,在安装好IDEA后,使用你的J

2016-11-27 18:52:53 50818 2

转载 JVM系列三:JVM参数设置、分析

不管是YGC还是Full GC,GC过程中都会对导致程序运行中中断,正确的选择不同的GC策略,调整JVM、GC的参数,可以极大的减少由于GC工作,而导致的程序运行中断方面的问题,进而适当的提高Java程序的工作效率。但是调整GC是以个极为复杂的过程,由于各个程序具备不同的特点,如:web和GUI程序就有很大区别(Web可以适当的停顿,但GUI停顿是客户无法接受的),而且由于跑在各个机器上的配置不同

2016-11-25 19:47:05 372

原创 java-抽象类和接口的区别

接口(interface)可以说成是抽象类的一种特例,接口中的所有方法都必须是抽象的。接口中的方法定义默认为public abstract类型,接口中的成员变量类型默认为public static final。另外,接口和抽象类在方法上有区别:    1.抽象类可以有构造方法,接口中不能有构造方法。   2.抽象类中可以包含非抽象的普通方法,接口中的所有方法必须都是抽象的,不能有非抽象

2016-11-24 17:03:49 259

转载 JVM:垃圾回收机制和调优手段

引言:我们都知道JVM内存由几个部分组成:堆、方法区、栈、程序计数器、本地方法栈JVM垃圾回收仅针对公共内存区域即:堆和方法区进行,因为只有这两个区域在运行时才能知道需要创建哪些对象,其内存分配和回收都是动态的。本文主要讨论两点,一是垃圾回收策略,二是调优的方法。一、垃圾回收机制1.1 分代管理将堆和方法区按照对象不同年龄进行分代:u  堆中会频繁创建对

2016-11-24 15:23:25 320

转载 Minor GC、Major GC和Full GC之间的区别-JVM

> 在Java中,它的内存管理包括两方面:内存分配(创建Java对象的时候)和内存回收.了解JVM,才能写出更高效,充分利用有限的内存的程序。  Java垃圾回收主要做的是两件事:1)内存回收 2)碎片整理.  内存管理小技巧:  1)尽量使用直接量,eg:String javaStr = "小学徒的成长历程";  2)使用StringBuilder和StringBuffer进行字

2016-11-23 21:45:59 4438 1

转载 Java堆、栈和常量池以及相关String的详细讲解(经典中的经典)

一:在JAVA中,有六个不同的地方可以存储数据:   1. 寄存器(register)。 这是最快的存储区,因为它位于不同于其他存储区的地方——处理器内部。但是寄存器的数量极其有限,所以寄存器由编译器根据需求进行分配。你不能直接控制,也不能在程序中感觉到寄存器存在的任何迹象。    ------最快的存储区, 由编译器根据需求进行分配,我们在程序中无法控制.2. 堆栈(stack)

2016-11-23 11:40:53 394

原创 《深入理解Java虚拟机》--阅读笔记(思维导图,干货收好)

下面是Demetria同学阅读《深入理解Java虚拟机》时整理的思维导图,现在还在完善中。纯干货,仅供大家参考。共同学习共同进步。下载地址:http://img.blog.csdn.net/20161123095721845?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQ

2016-11-23 09:57:48 3603 1

原创 java关键字和保留字

goto和const是保留字也是关键字。1,Java 关键字列表 (依字母排序 共50组): abstract, assert, boolean, break, byte, case, catch, char, class,const(保留关键字), continue, default, do, double, else, enum, extends, final, finally

2016-11-15 21:50:42 571

转载 JVM 堆内存设置原理

堆内存设置原理JVM堆内存分为2块:Permanent Space 和 Heap Space。Permanent 即 持久代(Permanent Generation),主要存放的是Java类定义信息,与垃圾收集器要收集的Java对象关系不大。Heap = { Old + NEW = {Eden, from, to} },Old 即 年老代(Old Generation),Ne

2016-11-15 20:39:06 310

转载 java 理解多线程及线程可见性

进程,线程 进程:程序(任务)的执行过程,是动态的;持有资源(内存,文件)和线程,是资源和线程的载体。 线程:线程是系统中最小的执行单元,同一进程中有很多线程,线程共享进程的资源。java对线程的支持 java的lang包中包含thread类和runnable接口线程中常用的方法和含义 ThreadTest程序 如何正确停止线程 Stop()方法来停止线程,不合适。会突然停

2016-11-15 20:37:58 525

原创 java---牛客网java专项训练知识点集锦

1.关于原码、反码、补码的问题。经过强制类型转换以后,变量a,b的值分别为多少? 12short a =128;byte b =(byte) a;   已知负数的补码,求负数:补码-1=反码,反码按位取反=该负数绝对值 已知负数,求负数的补码:(1)、负数原码除了符号位,按位取反(不

2016-11-14 17:43:13 1159

转载 Java中8种基本数据类型及其默认值

Java语言中有8种基本数据类型,基本情况汇总如下:Java中8种基本数据类型总结序号数据类型大小/位封装类默认值可表示数据范围1byte(位)8Byte0-128~1272s

2016-11-14 17:14:08 74321 1

原创 java---String类的intern方法

在《深入理解Java虚拟机》的第二章中的运行时常量池知识点的讲解中,说到“运行时常量池相对于Class文件常量池的另外一个重要特征是具备动态性,java语言并不要求常量一定只能在编译器产生明也就是并非预置入Class文件中常量池的内容才能进入方法区运行时常量池,运行期间也可能将新的常量放入池中,这种特性被开发人员利用得比较多的便是String类的intern()方法”。在网上查找了有关inte

2016-11-14 10:07:53 631

原创 java---《深入理解java虚拟机》第二章【java内存区域与内存溢出异常】阅读笔记

1.程序计数器       它是一块较小的内存空间,它的作用可以看成是当前线程所执行的字节码的行号指示器。由于java虚拟机是的多线程是通过线程轮流切换并分配处理器执行时间的方式来实现的,在任何一个时刻,一个处理器(对于多核处理器来说就是一个内核)只会执行一条线程中的指令。因此,为了线程切换后能恢复到正确的执行位置,每条线程都需要有一个独立的程序计数器,各条线程之间的计数器互不影响,独立存储,

2016-11-13 18:17:49 434

原创 Java---关于forward和redirect的描述

下面有关forward和redirect的描述,正确的是?A:forward是服务器将控制权转交给另外一个内部服务器对象,由新的对象来全权负责响应用户的请求B:执行forward时,浏览器不知道服务器发送的内容是从何处来,浏览器地址栏中还是原来的地址C:执行redirect时,服务器端告诉浏览器重新去请求地址D:forward是内部重定向,redir

2016-11-13 10:41:40 1860

原创 Java---Which four statements are true

class A {}class B extends A {}class C extends A {}class D extends B {}Which four statements are true ?A:The type Listis assignable to List.B:The type Listis assignable to List.

2016-11-13 10:18:35 993

原创 JAVA中的数据存储(堆及堆栈)

转自:http://www.iteye.com/topic/6345301.寄存器:最快的存储区, 由编译器根据需求进行分配,我们在程序中无法控制.2. 栈:存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new 出来的对象)或者常量池中(对象可能在常量池里)(字符串常量对象存放在常量池中。)3. 堆:存放所有new出来的对象。4. 静态域:存放静态成员(

2016-11-11 17:51:14 710

原创 项目开发过程中的命名规范(约定)

设计约定(编码规定)>原则:简单就是美>库名:项目名      bbs>表的命名:_Model名        _User>字段的命名:保持和属性名一致(尽量不要起名和数据库命名冲突)           id>用层来划分包:com.bbs.action、com.bbs.model、com.bbs.service、com.bbs.DTO(VO)>Action

2016-11-10 10:44:55 2522

原创 Struts2---Struts-Tags

1.通用标签>property>set      >bean>include>param>debugproperty标签 property-name: property-String: property-age: property-default: property-escape:'" escape="false"

2016-11-09 22:53:39 925

原创 Struts2--OGNL

OGNL表达式1,user.xxx只有传递才会构造。http://localhost:8088/Struts2/demo1/demo1!add?user.age=20 ,想初始化domainModel,可以自己new,也可以传参数值,但是这时候需要有参数为空的构造方法。2,在Action中手动new一个user对象。

2016-11-09 19:58:39 241

原创 struts2--动态结果集

在action中定义一个字符串私有变量。package com.struts2.user.action;import com.opensymphony.xwork2.ActionSupport;public class DemoAction1 extends ActionSupport{ private String name; private String password; p

2016-11-08 17:57:52 377

原创 Struts2--Result Type、global-results、extends

1.struts2中result Type的类型(1)dispatcher:相当于请求转发forward,服务器端转发,只能跳转到页面,不能跳转到action(2)redirect:相当于重定向,客户端转发,两次请求,两次应答,地址改变,不能跳转到action(3)chain:forward到另外一个action,即服务器端跳转到另外一个action(4)redirectAtion

2016-11-08 17:24:32 524

转载 XShell的使用方法

XShell的使用方法XShell是一款Windows下非常优秀的远程连接Linux主机的工具,是平常使用不可缺少的工具。复制和粘贴由于在linux的Shell下,Ctrl+c是中断当前指令,这个快捷键和win系统下的复制快捷键冲突,在Xshell中,提供了其它的快捷键来执行这些操作:复制:Ctrl+Insert粘贴:Shift+Insert将当前Shell中的内容

2016-11-03 09:42:14 51227 1

原创 struts2--获取request、session、application、HttpRequest、HttpSession、ServletContext

四种方法:(1)使用struts2容器提供的ActionContext:package com.struts2.user.action;import java.util.Map;import com.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionSupport;/** * @au

2016-11-02 22:35:29 540

原创 Struts2--简单数据校验

自己手写校验。在Action中使用this.addFieldError()方法和在JSP页面中使用标签简单处理数据校验。但是标签的显示样式都是struts固定好的,如果需要修改样式,可以找到相应的CSS类名并覆盖之即可。比较常用的一种方法是使用标签,并且使用标签public String add(){ System.out.println("name"+name); if(

2016-11-02 20:42:25 322

原创 Struts2.0 乱码问题

在 struts.xml中按照上述代码设置了编码方式后,基本上不会出现中文乱码问题,但是有个地方需要注意,就是struts2.1.6版本有个bug,即使设置了编码格式依然会出现乱码,直到struts1.2.7才解决。所以在struts2.1.6中解决乱码的方式除了可以再Spring框架中设置解决以外,还可以使用如下方法: struts2 org.apache.s

2016-11-02 18:01:04 328

原创 Struts2--传递参数的三种方式

package com.struts2.userDTO;/** * @author Demetria * 第一种传输参数的方法是:http://localhost:8088/Struts2/user/user!add?name=zhangsan&age=20; * 在action层接收数据时,只需要在action类中定义两个私有变量name和age及相应的get和set方法即可。 *

2016-11-02 17:26:53 621

原创 二叉树的深度优先遍历和广度优先遍历

一、【二叉树是神马?】准载文章段落:关于树和二叉树的基本概念总结1.什么是(自由)树?树首先是无向图的一种,并且此无向图要满足下面两个特性:1)连通,即任何两对顶点之间都有路径相连。2)无回路,简单地说就是没有成环。2.什么是森林?当满足树特性2)而不满足1)时称为森林。可以简单地理解为,什么不满足连通性,所以森林中可含有多个(自由)树。3.树的特性

2016-10-31 13:13:48 879

转载 公钥私钥浅谈

转载来自:http://blog.sina.com.cn/s/blog_694dabea0100qxja.html尊重原创。一、首先我们来看一下消息摘要的一些相关信息。我们可以将我们要发送的消息,通过某种数学上的安全散列算法计算出一个值(这个值后面我们就称之为消息摘要)。消息摘要我们可以把它比喻成指纹,指纹大家都知道每个人都不一样,甚至一个人的不同手指也不一样。这就是说只要我们

2016-10-24 20:21:53 573

转载 JMS与MQ详解(二)

《一》1.ActiveMQ概述    企业消息软件从80年代起就存在,它不只是一种应用间消息传递风格,也是一种集成风格。因此,消息传递可以满足应用间的通知和互相操作。但是开源的解决方案是到最近10年才出现的。Apache ActiveMQ就是其中一种。它使应用间能以异步,松耦合方式交流。ActiveMQ 是Apache出品,最流行的,能力强劲的开源消息总线。 ‍   Act

2016-10-24 12:13:59 2043

转载 JMS简介(一)

jms即Java消息服务(Java Message Service)应用程序接口是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。Java消息服务是一个与具体平台无关的API,绝大多数MOM提供商都对JMS提供支持。JMS(Java Messaging Service)是Java平台上有关面向消息中间件(MOM)的技

2016-10-24 12:06:29 693

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除