【JEE】
文章平均质量分 52
小太阳在发光
越努力,越幸运。
展开
-
字符编码
本文以REBOL为例进行说明。如下图所示: 图1 大多数在ASCII之后出现的编码都会以兼容于ASCII为目标,毕竟ASCII在英文世界是主流。在兼容于ASCII的情况下,能够使用Unicode所有的文字,就要使用变动长度的编码UTF-8。 UTF-8编码遇到ASCII中的字符,会采用一个字节编码;遇到某些字符(包括欧洲一些国家的语言)采用两个字节原创 2017-01-14 20:36:23 · 641 阅读 · 18 评论 -
EJB——消息和消息驱动bean(一)
与会话bean直接处理来自于客户端的请求一样,MDB直接处理消息。消息有很多用处,包括系统集成、异步处理和分布式系统。Java EE通过再消息发送者和接收者之间添加可靠的中间者使消息健壮。在Java EE的角度来说,可靠的中间者被称为消息目的地(destination),由面向消息的中间件(Message-Oriented Middleware,MOM)管理。Java EE通过众所周知的API——原创 2016-07-17 11:33:40 · 1138 阅读 · 10 评论 -
EJB——会话bean(一)
会话bean的目的是建模业务处理或者操作,特别是系统用户能察觉到的。会话bean是EJB中最容易但也最通用的部分。会话bean有两种类型:无状态类型和有状态类型。无状态beanpackage com.ejb3inaction.actionbazaar.buslogic;import javax.ejb.Stateless;import javax.persistenc原创 2016-07-10 22:17:10 · 776 阅读 · 8 评论 -
EJB通用元数据注解
Java EE容器作为一个整体可以使用EJB 3的一些注解。特别的是,当这些注解将EJB集成到Web/servlet层极为有用。一些注解从EJB 3规范中分离出来,被命名为通用元数据注解。 下图是Java EE中引入的主要元数据注解。虽然主要与EJB配合,但是这些注解也应用于Java EE组件(比如servlet和JSF管理的bean)和应用程序客户端。原创 2016-07-04 08:10:53 · 618 阅读 · 7 评论 -
EJB的三种组件
EJB(Enterprise JavaBeans)是使用Java语言构造可移植的、可重用的和可伸缩的业务应用程序平台。EJB是EJB容器的特定运行时环境中执行的一段java代码,容器提供若干组件服务。EJB组件有三种类型:会话bean;消息驱动bean;实体;会话bean和消息驱动bean用于实现EJB应用程序的业务逻辑,而实体用于持久化。原创 2016-06-19 23:33:56 · 6664 阅读 · 8 评论 -
EJB安全
在说EJB之前我们先来了解一下什么是EJB。EJB是sun的JavaEE服务器端组件模型,设计目标与核心应用是部署分布式应用程序。简单来说就是把已经编写好的程序(即:类)打包放在服务器上执行。凭借java跨平台的优势,用EJB技术部署的分布式系统可以不限于特定的平台。EJB (Enterprise JavaBean)是J2EE(javaEE)的一部分,定义了一个用于开发基于组件的企业多重应用程序的原创 2015-11-29 20:06:09 · 974 阅读 · 19 评论 -
Servlet中Filter的简单介绍
Filter 可认为是 Servlet 的一种 “ 加强版“,它主要用于对用户请求进行预处理,也可以对 HttpServletResponse 进行后处理,是个典型的处理链。 Filter 也可对用户请求生成响应,这一点与 Servlet相同,但实际上很少会使用 Filter 向用户请求生成响应。 使用 Filter 完整的流程是Filter 对用户请求进行预处理, 接着将请求交给 Servl原创 2016-12-11 21:06:31 · 677 阅读 · 26 评论 -
采用Filter完成字符集的设置
filter是一种横切性技术,体现了一个模式“责任链模式”,提供了一种声明式服务,声明式服务非常强大,它具有可插拔的能力。Filter对request和response请求进行了拦截,只对post请求起作用。时序图如下所示: Filter的init方法是初始化方法,在这里取到配置文件中设置的编码值,然后动态的赋值给setCharacterEncoding方法,这样我们就可原创 2016-06-12 21:54:07 · 1574 阅读 · 18 评论 -
配置Filter
前面文章中已经提到,Filter可以认为是Servlet的 “增强版“,因此配置Filter与配置Servlet非常相似,都需要配置如下两个部分:配置Filter名。配置 Filter 拦截 URL 模式。 区别在于 , Servlet 通常只配置一个 URL,而 Filter 可以同时拦截多个请求的 URL。因此,在配置 Filter 的 URL 模式时通常会原创 2016-04-25 00:45:38 · 938 阅读 · 18 评论 -
Filter介绍
Filter 可认为是 Servlet 的一种 “ 加强版“,它主要用于对用户请求进行预处理,也可以对 HttpServletResponse 进行后处理,是个典型的处理链。 Filter 也可对用户请求生成响应,这一点与 Servlet相同,但实际上很少会使用 Filter 向用户请求生成响应。 使用 Filter 完整的流程是Filter 对用户请求进行预处理, 接着将请求交给 Servl原创 2016-04-10 21:22:23 · 677 阅读 · 11 评论 -
Servlet介绍
Servlet原创 2016-03-27 23:37:01 · 703 阅读 · 8 评论 -
JSP脚本中的9个内置对象
JSP脚本中包含9个内置对象,这9个内置对象都是Servlet API接口的实例,只是JSP规范对他们进行了默认初始化,所以,他们已经是对象,可以直接调用。以下是9个内置对象的详细说明。application: javax.servlet.ServletContext 的实例,该实例代表JSP 所属的Web 应用本身,可用于JSP 页面,或者在Servlet 之间交换信息。原创 2016-03-20 19:47:39 · 582 阅读 · 7 评论 -
创建Filter类
创建 Filter 必须实现 javax.servlet.Filter 接口, 在该接口中定义了如下三个方法。void init ( FilterConfig config ): 用于完成 Filter 的初始化。void destroy(): 用于 Filter 销毁前, 完成某些资源的回收。void doFilter ( ServletRequest request, Servle原创 2016-04-17 22:44:40 · 1287 阅读 · 5 评论 -
虚拟机使用rememberedSet来避免全堆扫描
虚拟机使用rememberedSet来避免全堆扫描的过程总结如下:原创 2017-06-04 21:59:08 · 3364 阅读 · 3 评论 -
String.intern()内存分析
String.intern()是一个Native方法:字符串常量池中已经包含一个等于此string对象的字符串,则返回池中对象;否则添加到常量池并返回引用。 下面这段代码在jdk1.6中会得到两个FALSE,jdk1.7中一个true一个FALSE:1.6中intern()方法会把首次遇到的字符串实例复制到永久代中,返回的是永久代中的引用,StringBuilder创建的字符串在堆上原创 2017-05-14 20:44:51 · 648 阅读 · 7 评论 -
ThreadLoal的使用
ThreadLocal是Java为线程安全提供的工具类,它代表一个线程局部变量,通过把数据放到ThreadLocal中可以让线程创建一个该变量的副本,从而避免并发访问的线程安全问题。下面是对该类的使用:class Account{ /* 定义一个ThreadLocal类型的变量,该变量将是一个线程局部变量 每个线程都会保留该变量的一个副本 */ private ThreadLoca原创 2017-03-12 21:33:45 · 582 阅读 · 6 评论 -
java创建线程的方式
创建线程的方式一继承Thread类创建线程的方式二创建线程的第二种方式.使用Runnable接口.该类中的代码就是对线程要执行的任务的定义.1:定义了实现Runnable接口2:重写Runnable接口中的run方法,就是将线程运行的代码放入在run方法中3:通过Thread类建立线程对象4:将Runnable接口的子类对象作为实际参原创 2017-02-19 21:37:02 · 424 阅读 · 18 评论 -
EJB——消息和消息驱动bean(二)
大多数MDB都是实现JMS接口(比如javax.jms.MessageListener)和使用Java组件(比如javax.jms.Message)的JMS消息消费者。 在Java EE环境中组件之间的通信有同步和异步两种方式,同步是指调用者和调用目标必须出现以便通信成功完成,也意味着调用者在处理之前必须等待目标完成服务请求 。举例来说, 当你(调用者)给某个人打电原创 2016-07-23 15:31:39 · 739 阅读 · 19 评论 -
EJB 3会话bean与Spring的区别
在考法应用程序业务层时我们可以选择EJB 3的会话bean,也可以选择Spring,下面说明两者的区别以及什么情况下该使用哪种方式。 如果应用程序需要访问远程组件时的健壮支持或无缝的将业务逻辑暴露为Web服务的能力,那么选择EJB 3。Spring缺乏与实例池化、自动会话状态维护和钝化/激活相匹敌的良好功能。注解的大量使用,很大程度的避免在使用EJB 3时遇到“XML 地狱”原创 2016-08-14 23:50:17 · 692 阅读 · 14 评论 -
EJB中的AOP:拦截器
AOP是什么 AOP是一种面向切面编程的思想,AOP背后的本质概念是,对于大多数应用程序来说,都有一些共同的代码,它们在许多方法中重复出现,与解决核心业务问题并不一定直接相关,只是用来处理各种基础设施问题。 最常被引用的例子是日志记录,尤其是在基础调试级别。我们假设要在进入系统中每个方法时记入日志。如果没有AOP,这就表示要在系统的每个方法的开始添加日志原创 2016-08-21 22:40:58 · 1587 阅读 · 22 评论 -
java导入excel
下面是导入excel公用转化// 创建一个通用的多部分解析器 CommonsMultipartResolver multipartResolver = new CommonsMultipartResolver( request.getSession().getServletContext()); InputStream inExcelFile = null;原创 2017-02-12 22:24:08 · 654 阅读 · 12 评论 -
警惕自增的陷阱
public static void main(String[] args) { int count =0; for(int i=0;i10;i++){ count=count++; } System.out.println("count="+count); } 运行结果是 count 等于 0。 为什么呢? count++ 是一个表达式,原创 2017-02-05 19:23:51 · 395 阅读 · 17 评论 -
避免带有变长参数的方法重载
在项目和系统的开发中, 为了提高方法的灵活度和可复用性, 我们经常要传递不确定数量的参数到方法中, 在 Java 5 之前常用的设计技巧就是把形参定义成 Collection 类型或其子类类型, 或者是数组类型, 这种方法的缺点就是需要对空参数进行判断和筛选, 比如实参为null 值和长度为 0 的 Collection 或数组。 而 Java 5 引入变长参数( varags) 就是为了更好原创 2017-01-23 19:24:23 · 633 阅读 · 18 评论 -
java构建并引用用户自定义库
创建java项目的时候我们常常会引用一些架包,很多架包在一起就构成了库。java有系统自带的库,当然我们也可以创建自己的库。下面说说如何创建一个自己的库,并将其引用到项目中。(我的电脑中使用的eclipse是汉化版的,对于英文版的朋友,还请自己翻译英文,自动对应~~学好英语很重要~~!!)1、窗口——》首选项——》java——》构建路径——》用户库——》新建2、我建的名为HIB原创 2015-12-13 20:47:57 · 3480 阅读 · 21 评论 -
Java 语言基础
java语言是面向对象的程序设计语言,它是解释执行的,能跨平台使用,具有较高的性能和高度的安全性,并且支持多线程,具有内存垃圾自动收集机制。原创 2015-09-13 23:25:33 · 936 阅读 · 31 评论 -
Android开发计算器之布局
学习了一段时间的安卓,现在开始操作一个小例子——计算器。相信我们的手机中都有计算器这个软件,但是你知道它是怎么进行具体操作的吗?其实我暂时也还不知道,现在就简单的布局来做一个小总结。 对于一个软件,漂亮的用户界面(UI)总能给使用者留下深刻印象,这也是我们听了界面设计课之后应有的思想。对于Android这样的手机应用软件而言,用户界面更是不可忽略的。在Android中,View是原创 2015-03-29 00:08:20 · 3803 阅读 · 21 评论 -
Java异常处理
Java的异常机制主要依赖try-catch-finally、throws、throw五个关键字。throws主 要在方法签名中使用,声明方法可能抛出的异常;throw抛出一个实际异常。 Java将异常分为两种,checked异常(编译阶段)和runtime异常(运行阶段)。异常继承关系 error错误,一般指与虚拟机相关的问题,如系统崩溃、虚拟机错误原创 2017-05-21 21:42:10 · 442 阅读 · 3 评论 -
Java序列化
对象序列化的目标是将对象保存到磁盘中,或允许在网络中直接传输对象。序列化机制允许把内存中的Java对象转换为平台无关的二进制流,从而允许把这种二进制流保存在磁盘上,或通过网络进行传输。其他程序获取到二进制流就能将其恢复成原来的Java对象。类可序列化必须实现如下两接口之一:①Serializable②Externalizable实现Serializable接口writeOb原创 2017-05-28 21:35:38 · 447 阅读 · 4 评论 -
Java远程通讯
对Java远程通讯过程中所涉及的知识进行总结如下:原创 2017-06-25 21:44:22 · 468 阅读 · 5 评论 -
解决乱码问题的三种方式
1.在control的注解中声明@RequestMapping(value="/httpclient/post", method=RequestMethod.POST, produces=MediaType.TEXT_PLAIN_VALUE+";charset=utf-8")2.在web.xml中配置如下 CharacterEncodingFilter原创 2016-10-02 22:59:32 · 52744 阅读 · 23 评论 -
转发和重定向,get和post
get和post的区别1.get是从服务器上获取数据,post是向服务器传送数据。2.get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。3. 对于ge原创 2016-06-05 20:49:28 · 9223 阅读 · 20 评论 -
JSP内置对象——application对象
在介绍appl ication 对象之前,先简单介绍一些Web 服务器的实现原理。 对于大部分浏览器而言,它通常负责完成三件事情:(1)向远程服务器发送请求。(2)读取远程服务器返回的字符串数据。(3)负责根据字符串数据渲染出一个丰富多彩的页面。 实际上,浏览器是一个非常复杂的网络通信程序,它除了可以向服务报送请求,读取网络原创 2016-03-31 20:04:35 · 7729 阅读 · 18 评论 -
JSP 的基本原理
JSP 的本质是 Servlet , 当用户向指定 Servlet 发送请求时, Servlet 利用输出流动态生成 HTML 页面, 包括每一个静态的 HTML标签和所有在 HTML 页面中出现的内容。 由于包括大量的 HTML在L标签、 大量的静态文本及格式等, 导致 Servlet 的开发效率极为低下。 所有的表现逻辑, 包括布局、 色彩及图像等, 都必须嵌入在 Java原创 2016-03-13 22:29:50 · 723 阅读 · 18 评论 -
java的string字符串拼接
上回说到:String s="a"+"b"+"c"+"d"创建了几个对象?(假设之前串池是空的)本文将作出回答,先看一下下面简单代码:package com.xufengzhu;public class client { /** * @param args */ public static void main(String[] args) { String strin原创 2017-03-05 21:40:57 · 3879 阅读 · 13 评论 -
java的string对象
String s="a"+"b"+"c"+"d"创建了几个对象?(假设之前串池是空的)原创 2017-02-26 21:41:20 · 767 阅读 · 15 评论 -
Java BIO、NIO、AIO 学习
先来个例子理解一下概念,以银行取款为例:同步 : 自己亲自出马持银行卡到银行取钱(使用同步IO时,Java自己处理IO读写)。异步 : 委托一小弟拿银行卡到银行取钱,然后给你(使用异步IO时,Java将IO读写委托给OS处理,需要将数据缓冲区地址和大小传给OS(银行卡和密码),OS需要支持异步IO操作API)。阻塞 : ATM排队取款,你只能等待(使用阻塞I转载 2016-02-29 22:15:54 · 609 阅读 · 19 评论