Java web开发
文章平均质量分 69
techlgwjda
这个作者很懒,什么都没留下…
展开
-
Spring系列(6)---总结(完)
下面我们来看看IOC和AOP的一些优劣:IOC:优势:1)可以解耦一些逻辑关系,使得这种关系更加松散,而且可以在不重新编译程序的情况下通过配置信息的更改达到更改程序逻辑的目的;2)可以大量减少一些中间(比如典型的创建逻辑)类;3)带来了很大的灵活性和可扩展性。劣势:1)只适合逻辑比较简单,而且形式比较统一,量比较大的地方,对于复杂的逻辑使用配置文件完成,反而会增加系统的复杂转载 2015-01-28 12:05:17 · 679 阅读 · 0 评论 -
深入Struts2的过滤器FilterDispatcher--中文乱码及字符编码过滤器
引用前几天在论坛上看到一篇帖子,是关于Struts2.0中文乱码的,楼主采用的是spring的字符编码过滤器(CharacterEncodingFilter)统一编码为GBK,前台提交表单数据到Action,但是在Action中得到的中文全部是乱码,前台的页面编码都是GBK没有问题。这是为什么呢?下面我们就通过阅读FilterDispatcher和CharacterEncodingFilter转载 2014-10-16 11:03:04 · 619 阅读 · 0 评论 -
关于JSP页面中的pageEncoding和contentType两种属性的区别
在JSP标准的语法中,如果pageEncoding属性存在,那么JSP页面的字符编码方式就由pageEncoding决定,否则就由contentType属性中的charset决定,如果charset也不存在,JSP页面的字符编码方式就采用默认的ISO-8859-1。 ContentType属性指定了MIME类型和JSP页面回应时的字符编码方式。MIME类型的默认值是“text/html转载 2014-10-16 10:57:37 · 464 阅读 · 0 评论 -
JAVA编码转换的详细过程理解—>浏览器和服务器的接收和发送数据的编码
一、JAVA编码转换的详细过程我们常见的JAVA程序包括以下类别: *直接在console上运行的类(包括可视化界面的类) *JSP代码类(注:JSP是Servlets类的变型) *Servelets类 *EJB类 *其它不可以直接运行的支持类这些类文件中,都有可能含有中文字符串,并且我们常用前三类JAVA程序和用户直接交互,用于输出和输入字符,如:我们在转载 2014-10-16 10:59:25 · 3372 阅读 · 0 评论 -
htmlparser学习总结
由于公司需要,开发了一个抓取网上数据爬虫的程序,如抓取点评网、阿里巴巴网和慧聪网城市和行业信息,采用的技术是:htmlparser。本文是简单的介绍htmlparser抓取的常用代码示例,具体详见:htmlparser下载包中的api文档。下面理清一下Node节点与节点之间的关系及NodeFilter的全部实现类。Interface Node|||All Known Subinterf转载 2014-09-02 11:56:18 · 505 阅读 · 0 评论 -
HTTP状态码
HTTP状态码(英语:HTTP Status Code)是用以表示网页服务器HTTP响应状态的3位数字代码。它由RFC 2616规范定义的,并得到RFC 2518、RFC 2817、RFC 2295、RFC 2774、RFC 4918等规范扩展。所有状态码的第一个数字代表了响应的五种状态之一。目录11xx消息22xx成功33xx重定向44xx客户转载 2014-08-29 11:49:07 · 403 阅读 · 0 评论 -
HttpClient入门
HttpClient入门HttpClient 是 Apache Jakarta Common 下的子项目,可以用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包,并且它支持 HTTP 协议最新的版本和建议。本文首先介绍 HTTPClient,然后根据作者实际工作经验给出了一些常见问题的解决方法。19评论:发华 金, 软件工程师,IBM CS转载 2014-08-27 17:42:18 · 436 阅读 · 0 评论 -
Web开发技术之间的关系
摘要:本文主要探讨了Web开发技术之间的关系,以及他们组合起来到底有什么用的问题。 如果你是一个Web开发初学者,那么你难免会在网上搜索HTML, CSS, XML, JS(Javascript), DOM, XSL等等这些词的意思,然而,随着学习的深入。当你把他们搅在一起,你又糊涂了,你会不停的问,HTML是什么?CSS是什么?XML是什么?JS是什么?它们到底有什么用?无论是转载 2014-08-27 14:01:36 · 676 阅读 · 0 评论 -
Fiddler 教程
阅读目录Fiddler的基本介绍Fiddler的工作原理同类的其它工具Fiddler如何捕获Firefox的会话Fiddler如何捕获HTTPS会话Fiddler的基本界面Fiddler的统计视图QuickExec命令行的使用Fiddler中设置断点修改RequestFiddler中设置断点修改ResponseFiddler中创建AutoResponder规则Fiddler中如何过滤会话F转载 2014-08-27 13:57:22 · 500 阅读 · 0 评论 -
HTTP 协议详解
当今web程序的开发技术真是百家争鸣,ASP.NET, PHP, JSP,Perl, AJAX 等等。 无论Web技术在未来如何发展,理解Web程序之间通信的基本协议相当重要, 因为它让我们理解了Web应用程序的内部工作. 本文将对HTTP协议进行详细的实例讲解,内容较多,希望大家耐心看。也希望对大家的开发工作或者测试工作有所帮助。使用Fiddler工具非常方便地捕获HTTP Request和HT转载 2014-08-27 13:57:23 · 440 阅读 · 0 评论 -
Struts2文件上传下载
Struts2文件上传下载(一)要想将文件从客户端上传到服务器,首先要将form的enctype属性设置为” multipart/form-data”,method属性设置为post。然后在服务端获取上传的二进制流,解析出二进制流中所包含的全部表单域。表单域中包含的信息可能是文本信息,也可能是二进制的字节码,文本和字节码混合在一起。要想将一个文件中包含的二进制信息从一个二进制流中“转载 2014-03-24 21:21:01 · 1203 阅读 · 0 评论 -
java字符编码原理解析
什么是字符,什么是字节?可以理解为计算机没有字符的概念,只有字节。字符是存在于人类语言层的概念,其作用是为了人与人之间的交流,因为字节对于人类是不可读的,但是计算机存储所有的数据都是按照字节存储。因 此要将人类意识中的字符存储到计算机中,则必须将字符转换为字节数据,那么怎么转化呢,则必须要一种映射规则,这里的映射规则就是通常意义中的字符编码, 比如说该文件是GBK编码,可以说为:这个文档中转载 2014-10-16 11:00:40 · 654 阅读 · 0 评论 -
Struts2执行流程
Struts2执行流程1. web.xml 部署描述符2. FilterDispatcher 实现StrutsStatics, Filter接口(1)Filter:一个filter是一个对象用于执行过滤任务为每个请求资源(一个servlet或静态内容),或响应一个资源,或两者.过滤器执行过滤是在doFilter方法中.每个过滤器访问一个FilterConfig对象从中获取初始化参数,一转载 2014-10-16 11:05:29 · 435 阅读 · 0 评论 -
JSP编码以及乱码解决总结
首先,说说JSP/Servlet中的几个编码的作用:1.作用:* 告诉JSP编译器在将JSP文件编译成Servlet时使用的编码。通常,在JSP内部定义的字符串(直接在JSP中定义,而不是从浏览器提交的数据)出现乱码时,很多都是由于该参数设置错误引起的。例如,你的JSP文件是以GBK为编码保存的 (右击jsp-->Properties --> Text file encoding设置成转载 2014-10-16 11:08:59 · 442 阅读 · 0 评论 -
Spring系列(6)---总结(1)
Spring当然不仅仅只包括我们前面看到的这些技术,但其核心的思想主要是IOC+AOP这两块。在前面的几块中我们着重讲了AOP,最后简单介绍了一下IOC.这个系列介绍到这儿,基本涉及了Spring主要思想和技术,并建立了自己的一个简单的AOP模型。(一)我们首先来看看我们用到了那些关键性技术:1) 动态编译或IL指令注入 框架提供了这种技术的类库支持,如果没有这种库的支持转载 2015-01-28 12:03:39 · 571 阅读 · 0 评论 -
Spring系列(3/4)----一个较为完善的模型(完)
接上一篇,我们继续来完善这个模型,我们为附加责任类定义了一个接口,这样,只要实现这个接口的类都可以注册,接收代理类的调用通知;同时为了更好的交互,我们还定义了一个调用参数接口,和一个具体的调用参数类,接下来,我们再看看代理类:/// /// 代理类,从AClass继承. /// public class ProxyAClass1 : AClass转载 2015-01-28 12:00:08 · 693 阅读 · 0 评论 -
Spring系列(3/4)----一个较为完善的模型(续)
接上篇:4、我们知道我们进行动态代理的目的是为了附加责任,也就是在目标类方法执行的时候,我们能增加一些附加的功能。我们前面的模型虽然可以达到这个目的,但通信信息不够。观察者虽然可以获取目标类,但无法知道当前执行的方法和参数值,这在有些情况下虽然没什么不利,但既然我们的目标其实就是监视目标类的方法的执行,能有目标类执行方法时的方法信息和当前实际参数的信息,当然是更好了,为此,我们可以专门增加转载 2015-01-28 11:59:31 · 439 阅读 · 0 评论 -
Spring系列(3/3)---一个较为完善的模型
上一篇,我们建立了一个可用的模型,但我们也看到了它的不足,下面,我们就来继续完善这个模型:1、首先,因为委托的目的其实是为了与附加责任类进行交互,而挂接了委托的附加责任类才会收到消息,从这点来看,是一个非常典型的观察者模式应用场景,因此我们觉得引入这个模式,好处是观察注册有专门的类来负责管理,在这里是代理类行使这个责任(后面的模型会转到代理类工厂),二是附加责任类以类的身份参与,而不再是简转载 2015-01-28 11:58:57 · 484 阅读 · 0 评论 -
Spring系列(3/2)---交互的改进
前面一篇,我们写了一个代理类,可以实现一些功能,但作为动态代理类的原型,还是有问题的。我们来改进一下原来的类,如下: /// /// 代理类,从AClass继承.这是必须的,否则AClass能用的地方, ProxyAClass1却没法用.这里的改进主要是将需要切入的委托,采用构造参数传递进去,有利于动态构造实例。 /// public cla转载 2015-01-28 11:55:41 · 524 阅读 · 0 评论 -
Spring系列(3/1)---交互的一种尝试
前一篇,我们知道可以利用委托和代理来实现为目标类增加额外责任,这里我们先用一个简单的例子说明如何去实现.//目标类,有3个公共方法,但由于非虚方法无法继承,所以能够切入的只有2个公共虚方法。虽然从生产代理的角度来讲,非虚公共方法也可以截获,//但要求代理类重写该方法,而一旦重写,根据方法的调用规则,在用目标类型调用这个方法时,其实是调不到代理类中的这个方法的,所以就没有机会截获和监视。转载 2015-01-28 11:55:19 · 413 阅读 · 0 评论 -
Spring系列(2)--为什么需要动态代理
前一篇我把我自己实现动态包装的工厂类实现贴了出来,这一篇就来讲讲为什么要进行动态的代理。理由看起来有以下几点:1、有的时候我们需要为一些类的方法增加一些额外的责任,因为这些责任是额外的,去改动这些类当然是不好的。 对于这点,大家可以很快的想到用装饰模式或者代理模式去实现。当然,如果责任固定,而且是事先可预料的,可以在代码中预先进行处理,例如增加一个转载 2015-01-28 11:53:36 · 646 阅读 · 0 评论 -
Spring系列(1)--创建动态代理类
象DotNet,Java之类的语言能够进行动态代理类的创建,得益于其本身并不是直接编译成机器代码,而是编译成中间语言,在运行时才解释或动态编译成目标机器语言。这也是为什么这些概念先在Java兴起的根本原因。产生动态代理类,一般都是利用Emit命名空间的指令,但这个对IL的要求比较高,我这里利用C#提供的动态编译功能实现,优点是直观,容易理解,不用熟悉IL指令,缺点当然是显得不怎么专业。转载 2015-01-28 11:51:26 · 672 阅读 · 0 评论 -
Spring系列(5)---IOC技术.
说实话,我对Spring技术还是不算很了解,IOC的技术我在实体框架技术中提到过,但IOC和AOP作为Spring技术的两个核心思想,我觉得在总结之前,还是有必要说明一下我所理解的IOC.我们知道,如果两个事务之间存在逻辑关系,而且你需要根据这个逻辑关系做事,(比如类A和类B,类A需要调用类B的方法,比如ORM等),那么该做的事情,其实一件都不会少的,只是我们可以利用一些技术手段来减少直接转载 2015-01-28 12:01:49 · 641 阅读 · 0 评论 -
JAVA之编码/解码-文件输入输出流
问题一:在java中读取文件时应该采用什么编码?Java读取文件的方式总体可以分为两类:按字节读取和按字符读取。按字节读取就是采用InputStream.read()方法来读取字节,然后保存到一个byte[]数组中,最后经常用new String(byte[]);把字节数组转换成String。在最后一步隐藏了一个编码的细节,new String(byte[]);会使用操作系统默认的转载 2014-10-16 15:00:36 · 478 阅读 · 0 评论 -
struts2 select 标签(表单标签)
select 标签 此标签用于生成一个下拉列表框,、常用属性: list:指定的集合来生成下拉列表框的选项。 listKey:指定集合元素中的某个属性作为复选框的value 。如果集合是 Map,则可以使用 key-value 分别对应 Map 的key-value 作为复选框的value 。 listValue: 用于指定集合元素转载 2014-03-22 10:35:33 · 696 阅读 · 0 评论 -
struts2 通用属性(表单标签)
通用属性属性 Theme 数据类型 描述 cssClass simple String 定义 html class转载 2014-03-22 10:32:08 · 1021 阅读 · 0 评论 -
Struts2.1的异常处理
提起异常处理,不由想起铺天盖地的try{}catch{}语句 ,在方法中使用catch块处理异常已经成了java程序员的习惯。在Struts2.1看来,是该改变一下的时候了,于是Struts2.1凭借自己的强大拦截器功能,隆重推出声明式异常处理机制,使Struts2.1程序员体验到一种前所未有的快感。 Struts2.1的声明式异常处理机制是在struts.xml文件中配置except原创 2013-11-30 16:05:16 · 1131 阅读 · 0 评论 -
用TransactionProxyFactoryBean实现spring的声明式事务
spring对声明式事务是通过它的AOP框架实现的。要在spring中使用声明式事务,需用到TransactionProxyFactoryBean,它类似于ProxyFactoryBean,不过其目的是将方法包装在事务上下文中。可以创建自己的ProxyFactoryBean来处理事务,也能达到同样的效果,但TransactionProxyFactoryBean是专门为声明式事务设计的,用它转载 2013-11-30 11:06:20 · 763 阅读 · 0 评论 -
Spring配置事务管理和简化事务配置
一.使用TransactionProxyFactoryBean创建事务代理(通常事务代理以Service层为目标bean) PROPAGATION_REQUIRED,-MyCheckedException PROPAGATION_REQUIREDPROPAGATION_REQU原创 2013-11-30 10:40:50 · 3264 阅读 · 0 评论 -
document.body和document.documentElement的比较
ocument.body是DOM中Document对象里的body节点, document.documentElement是文档对象根节点(html)的引用。 IE在怪异模型(quick mode)下document.documentElement无法正确取到clietHeight scrollHeight等值,比如clietHeight=0。可以见IE的怪异模型并没有把htm转载 2013-11-27 15:33:13 · 664 阅读 · 0 评论 -
iframe高度自适应
在包含iframe页面中的最终代码:scriptlanguage="javascript"type="text/javascript"> function reinitIframe(){ var iframe= document.getElementById("iframeId"); try{ var bHeight=转载 2013-11-27 15:31:58 · 1231 阅读 · 0 评论 -
去掉超链接点击时出现的虚线框(好像只有IE能识别)
原型:”text/css”>a,img {可以自定义的属性: expression(onfocus=function(){this.blur()})}也可引用外联css文件,把上面的style中间的那句代码写入css文件同样可以实现去掉虚线框下面的好像都可以做到:”text/css”>a,img {zuo: expression(onfocus=function(){this.转载 2013-11-27 15:27:51 · 1565 阅读 · 0 评论 -
<img src="中文文件名" /> 无法显示图片,图片名改成英文就可以显示;试了下在电脑桌面写了个HTML测试下,可以显示中文名称的图片,解决方法
解决方案:Tomcat5的http Connector所用的URI解码默认用的是 ISO-8859-1,一般浏览器默认用的发送编码为UTF-8, 在server.xml中类似如下配置: …… URIEncoding="UTF-8" / > 其中URIEncoding="UTF-8"这项,其含义是指定URI的编码为:UTF-8。在后面加上这一项后问题就可以解决了转载 2013-11-27 15:26:34 · 3323 阅读 · 0 评论 -
通过端口 1433 连接到主机 127.0.0.1 的 TCP/IP 连接失败。错误:“connect timed out。"
请验证连接属性并检查 SQL Server 的实例正在主机上运行,且在此端口接受 TCP/IP 连接,还要确保防火墙没有阻止到此端口的 TCP 连接。解决方法:1. 点击 开始 --> 所有程序 --> Microsoft SQL Server2008--> 配置工具-->SQL Server configurationManager- 选择左边 SQL Server 2008 网络配置转载 2013-11-27 15:36:04 · 2129 阅读 · 0 评论 -
解决JSP页面中路径问题的方法(jsp文件开头path, basePath作用)
读懂的基础知识:String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; request.getSchema()可以返回当前页面使用的协议,http 或是转载 2013-11-27 15:30:07 · 1553 阅读 · 0 评论 -
CKEditor在jsp中的应用
CKEditor在jsp中的应用 CKEditor即大名鼎鼎的FCKeditor终于在最近发布新版本了,与增加版本号不同,这次完全把它改名了,更名为CKeditor。这应该是和它的开发公司CKSource的名字有关吧,该公司的另一个产品为CKFinder(一个Ajax文件管理器),这次可能为了保持一致,将FCK更改为CK,但是版本号继承了下来,为CKeditor3.0版。使用CKEdit转载 2013-11-27 15:42:07 · 1285 阅读 · 0 评论 -
关于MyEclipse编写jsp很卡的修改方法
1,改默认编辑模式就可以了。将默认编辑器由“myeclipse visual jsp designer”改为“myeclipse jsp editor”就不卡了。(我试验过就很灵) 2,菜单 [Window]->[Preferences]->[MyEclipse]->[JavaEnterprise Project]- >[Library Sets]在[J2EE1.4转载 2013-12-02 10:24:23 · 822 阅读 · 0 评论 -
禁用myeclipse中不常用的各种插件
禁用myeclipse中不常用的各种插件,关闭自动更新。大幅度加快启动和响应速度 去除不需要加载的模块windows–>perferences–>general–>startup and shutdown关掉没用的启动项:怎样才能知道哪些启动项有用呢?我现在把我知道的启动项用处说一下,还有很多不懂的,希望大家懂的回复在下面啊:WTP :一个跟myecli转载 2013-12-02 10:18:27 · 5099 阅读 · 0 评论 -
ExtJS的使用方法汇总(1)——配置和表格控件使用
ExtJS时一套AJAX控件,本人认为它是目前我见过最好最美的JS控件库,所以非常有学习和使用价值,如果你还没有接触过ExtJS或者压根对其不感兴趣,那么没有必要看下去了,ExtJS是一套完整的RIA解决方案,也因为功能完整造成了ext-all.js有400多k,由于是基于JS和CSS的功能实现,对客户端机器性能也有一定的要求,即不支持IE6以下的版本。如果您的项目对网页响应时间有严格的限制,或者转载 2013-12-02 17:05:30 · 965 阅读 · 0 评论 -
struts2的 component标签(非表单标签)
component标签 component标签用于使用自己的自定义组件,这是一个非常灵活的用法,如果经常需要使用某个效果片段,就可以考虑将这个效果片段定义成一个自定义组件,然后在页面中使用component标签来使用该自定义组件。因为使用自定义组件还是基于主题、模板管理的,因此在使用component标签时,常常需要指定如下三个属性:theme:自定义组件所使用的主题,转载 2014-03-22 10:17:20 · 1776 阅读 · 0 评论