Web开发
骆昊的技术专栏
传道、授业、解惑,分享知识带来的快乐
展开
-
Java Web项目中使用Freemarker生成Word文档
Web项目中生成Word文档的操作屡见不鲜,基于Java的解决方案也是很多的,包括使用Jacob、Apache POI、Java2Word、iText等各种方式,其实在从Office 2003开始,就可以将Office文档转换成XML文件,这样只要将需要填入的内容放上${}占位符,就可以使用像Freemarker这样的模板引擎将出现占位符的地方替换成真实数据,这种方式较之其他的方案要更为简单。原创 2014-09-21 15:33:20 · 86313 阅读 · 29 评论 -
Java面试题集(116-135)
这一部分讲解基于Java的Web开发相关面试题,即便在Java走向没落的当下,基于Java的Web开发因为拥有非常成熟的解决方案,仍然被广泛应用。不管你的Web开发中是否使用框架,JSP和Servlet都是一个必备的基础,在面试的时候被问到的概率还是很高的。在此次更新中,加入了Servlet 3的新特性,包括基于注解的配置,包括对上传的支持,包括异步处理等内容。原创 2013-12-29 17:14:57 · 20728 阅读 · 2 评论 -
关于Log4j
Log4j是Apache的一个开源项目,通过使用Log4j可以灵活的配置和控制日志功能,将日志信息输出到控制台、文件、GUI组件、套接字服务器指定端口的服务、Windows NT的事件记录器、UNIX Syslog守护进程等,同时也可以控制每一条日志的输出格式以及日志的级别。Log4j通常由三个重要的组件构成:日志信息的优先级,日志信息的输出目的地和日志信息的输出格式。日志信息的优先级从高到低有F原创 2012-10-30 23:52:41 · 2589 阅读 · 0 评论 -
Servlet&JSP思维导图
Java Web表示层技术知识点总结的思维导图原创 2015-01-11 21:53:26 · 16607 阅读 · 7 评论 -
HTML&CSS&JavaScript思维导图
客户端网页编程知识点的思维导图原创 2015-01-11 21:50:57 · 16529 阅读 · 3 评论 -
JavaScript模板引擎初探 - HandleBars
Handlebars是一个Javascript模板引擎,能让你轻松高效的编写语义化模板,能将Web前端的视图和数据分离,降低两者之间耦合。原创 2015-04-02 17:19:16 · 7641 阅读 · 0 评论 -
JavaScript(03): 面向对象
面向对象的开发方式是目前软件开发的主流方式,JavaScript也是面向对象事件驱动的编程语言,如果能够掌握JavaScript的面向对象编程的知识,就有了构建自己的JavaScript库的基础和前提。原创 2012-08-05 02:36:49 · 2167 阅读 · 0 评论 -
HTTP响应代码
HTTP响应代码的详细列表,记录在这里以备参考。原创 2014-05-13 00:29:20 · 4688 阅读 · 0 评论 -
Web项目中使用Spring 3.x + Quartz 2.x实现作业调度详解
Quartz是一个基于Java的作业调度管理的轻量级框架,目前在很多企业应用中被使用,它的作用类似于java.util中的Timer和TimeTask、数据库中的job等,但Quartz的功能更强大、更灵活。从Quartz2开始,你可以使用POJO作为一个任务(Job),这种开发方式进一步降低了代码的耦合度,如果跟Spring进行整合,使用起来将更加方便简单。原创 2013-11-24 12:50:58 · 12783 阅读 · 1 评论 -
Java Web自定义MVC框架详解
最近给学生讲Java Web,希望他们能够在学完这部分内容后自己实现一个MVC框架。但是突然发现百度上能搜索到的靠谱的资料并不是很多,有些只是原理没有代码实现,有些有代码实现但是对于初学者来说理解起来还是比较困难,于是决定把自己讲自定义MVC框架的内容放在这里分享给大家,不仅仅是代码,也有原理和探讨。内容会比较长,因为我打算用递增的方式讲解如何写一个自定义MVC框架,重点是前端控制器的开发。先...原创 2015-01-16 10:56:01 · 52532 阅读 · 26 评论 -
缓存方案之Redis
Redis是Remote Dictionary Server(Redis) 的缩写,或许光听名字你就能猜出它大概是做什么的。不错,它是一个由Salvatore Sanfilippo编写的key-value存储系统,是一个使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型的Key-Value数据库,并提供多种语言的API。原创 2015-04-03 15:49:13 · 40742 阅读 · 3 评论 -
字符编码和Java中的乱码问题
一篇文章帮你理解字符编码以及Java中的各种编码问题,从此以后,妈妈再也不用担心我程序中乱码和编码黑洞这些问题啦!原创 2017-01-17 18:42:50 · 12347 阅读 · 1 评论 -
SpringMVC中的异常处理
SpringMVC中使用声明式异常处理方式处理Web项目中的异常原创 2017-08-05 11:02:47 · 6757 阅读 · 2 评论 -
JavaScript(02): ECMAScript基础
ECMAScript提供了实现通用程序设计任务必需的JavaScript的语法、运算符和基本对象。1. 语法ECMAScript借用了Java、C等语言的语法,对于熟悉这些语言的开发者掌握ECMAScript的语法应该是非常容易的。区分大小写变量是弱类型:定义变量时只用var关键字并且可以将变量初始化为任意值每行结尾的分号可有可无(一个良好的习惯是总是在语句的末尾加原创 2012-08-05 02:38:13 · 2030 阅读 · 0 评论 -
JavaScript(01): JavaScript简介
1. JavaScript的历史JavaScript诞生于1995年,如今全世界无数的网页在依靠它完成各种关键任务,JavaScript已经从过去装饰性的一种脚本语言转变为主流的编程语言,可以用它来开发更大更复杂的程序。在1992年,Nombas公司开始开发一种叫做C-minus-minus(简称Cmm)的嵌入式脚本语言。这个脚本语言捆绑在一个叫做CEnvi的共享软件产品中,当Nets原创 2012-05-03 15:48:40 · 6414 阅读 · 0 评论 -
JavaScript中Web应用程序事件处理
浏览器中使用JavaScript绑定事件处理代码的方式原创 2014-05-08 23:08:55 · 2736 阅读 · 0 评论 -
HTML5之FileReader的使用
HTML5定义了FileReader作为文件API的重要成员用于读取文件,根据W3C的定义,FileReader接口提供了读取文件的方法和包含读取结果的事件模型。FileReader的使用方式非常简单,可以按照如下步骤创建FileReader对象并调用其方法:1.检测浏览器对FileReader的支持if(window.FileReader) { var fr =原创 2013-05-23 22:46:06 · 146540 阅读 · 29 评论 -
[连载]JavaScript讲义(04)--- 函数和闭包
讲解了JavaScript的函数、匿名函数、函数表达式、函数的递归调用、闭包等知识点,讲解了如何使用闭包来避免命名空间污染的问题,探讨了两个专题单例和回调原创 2014-05-03 12:46:23 · 2383 阅读 · 0 评论 -
[连载]JavaScript讲义(03)--- JavaScript面向对象编程
介绍了JavaScript中创建对象的5种方式以及实现继承的5种方式,探讨了动态语言类型判定的鸭子判定法,讨论了JavaScript中的Object以及全局对象原创 2014-05-03 12:23:48 · 2506 阅读 · 0 评论 -
[连载]JavaScript讲义(06)--- 浏览器对象模型
讲解了浏览器中的JavaScript的重要组成部分BOM(浏览器对象模型),包括window对象以及它的重要属性location、navigator、history等内容原创 2014-05-07 08:32:17 · 2306 阅读 · 0 评论 -
JavaScript实现网页元素的拖拽效果
JavaScript实现网页元素的拖拽效果原创 2014-04-26 00:27:44 · 16302 阅读 · 1 评论 -
[连载]JavaScript讲义(02)--- JavaScript核心编程
讲述了JavaScript核心编程,包括类型、变量、运算符、循环和分支结构等内容原创 2014-04-26 18:01:29 · 3307 阅读 · 0 评论 -
[连载]JavaScript讲义(01)--- JavaScript概述
JavaScript连载系列第一章,讲解了JavaScript的历史、JavaScript引擎、运行环境、开发工具、库、压缩工具等内容,并给出了第一个例子"Hello, world!"原创 2014-04-15 23:06:33 · 2495 阅读 · 0 评论 -
[连载]JavaScript讲义(05)--- 数据处理
讲解了JavaScript中各种类型的数据处理,包括数组的使用、JSON类提供的字符串和JS对象相互转换的方法、时间日期类以及正则表达式的创建和使用原创 2014-05-05 23:39:59 · 2201 阅读 · 0 评论 -
JavaScript(06): 优秀JavaScript库概览
jQuery设计思想简洁的思想:几乎所有操作都是以选择DOM元素(有强大的Selector)开始,然后是对其的操作(Chaining等特性)。优点小,压缩后代码只有20多k(无压缩代码94k)。Selector和DOM操作的方便.Chaining:总是返回一个jQuery对象,可以连续操作。文档的完整,易用性(每个API都有完整的例子,这原创 2012-08-14 00:51:57 · 2230 阅读 · 0 评论 -
JavaScript(07): 实例3---Google Eye
下面的例子源于Google Eye(如下图所示的效果),通过这个例子可以好好体会一下JavaScript的面向对象编程。 Google Eye #l_pupil, #r_pupil { position: relative; /* the position of pupil is relative to its container eye*/原创 2012-08-18 00:20:26 · 2171 阅读 · 0 评论 -
JavaScript的对象深度克隆
Object.prototype.clone = function() { var newObj = {}; for(var i in this) { if(typeof(this[i]) == "object" || typeof(this[i]) == "function") { newObj[i] = this[i].clone(); } else {原创 2013-11-10 20:05:03 · 2573 阅读 · 0 评论 -
JavaScript(05): 正则表达式
当检索某个文本的时候,我们可能需要一种模式来描述被检索的内容,在这种情况下就可以考虑使用正则表达式。正则表达式可以定义一种模式,这种模式可能是一个简单的字符、也可能是一个非常复杂的字符串,通常被用于解析、格式检查、替换等。关于正则表达式的具体内容可以参考以下链接,本文只是对JavaScript如何使用正则表达式进行讨论。《正则表达式30分钟入门教程》 - http://www.cnblog原创 2012-08-05 02:39:37 · 1656 阅读 · 0 评论 -
JavaScript(07): 实例2---网页广告漂浮效果(面向对象版)
在上一个版本的基础上使用JavaScript的面向对象完成,为了不影响阅读,去掉了随滚动条移动的广告 Example function $(id) { return document.getElementById(id); } function Adv(id, speedX, speedY) { this.id = id;原创 2012-08-17 23:15:26 · 2388 阅读 · 0 评论