
Java程序员从笨鸟到菜鸟
文章平均质量分 87
java从初级到高级总结,贯穿整个java知识点,一步步完善。。。。
曹胜欢
滨州学院计算机科学与技术系软件技术2010级学生。优快云博客专家。2012IT博客大赛“优秀学生博客”。专注于java开发领域。向往云计算、大数据。喜欢和大家技术交流。希望大家能够互相学习。共同提高。
展开
-
Java程序员从笨鸟到菜鸟之(一百零九)一步一步学习webservice(三)开发第一个基于XFire的webservice
在日常开发中,常用的webservice引擎主要有Axis,axis2,Xfire以及cxf(Xfire的升级版)。现在只有axis2和cxf官方有更新。今天我们先以一个比较老的引擎为例。来讲诉一下webservice的主要用法和简单原理。 XFire是新一代的Java Web服务引擎,XFire使得在JavaEE应用中发布Web服务变得轻而易举。和其他Web服务引擎相比,XFire的配原创 2012-11-27 12:05:53 · 11825 阅读 · 16 评论 -
Java程序员从笨鸟到菜鸟之(一百零八)一步一步学习webservice(二)webservice基本原理
本来这第二篇打算讲解“开发第一个基于XFire的webservice”的内容来着。但是想想。开发实例只是局限于了会用的层面上。如果想真正的理解webservice还是需要挖掘其原理。所以本篇文章我想还是和大家一起来学习一下webservice的原理吧。知其原理,应用直接就是小case了。在学习webservice的原理之前。我想还是有必要弄清另一个概念—SOA.这个概念在很多学术论文和文章中经常和原创 2012-11-26 10:30:23 · 19415 阅读 · 12 评论 -
Java程序员从笨鸟到菜鸟之(一百零六)java操作office和pdf文件(四)页面列表导出cvs,excel、pdf报表.
在平常的开发中我们常常遇到不仅仅只是导出excel报表的情况。有时候也需要导出pdf或者CSV报表。其实原理都差不多。刚开始本来不打算也这篇博客介绍这个的。感觉这篇博客和前面的博客有点雷同。原理基本都一样。但想了想。有时候可能有些童鞋遇到这样的需求会无从下手。所以还是记录下来。帮助一下那些需要这个需求的童鞋。如果你对前面几篇博客的原理都搞明白了。这篇博客你完全可以不看了。仅仅只是代码的实现不同而已原创 2012-11-21 13:20:53 · 10256 阅读 · 12 评论 -
Java程序员从笨鸟到菜鸟之(一百零七)一步一步学习webservice(一)开篇
Webservice技术在web开发中算是一个比较常见技术。这个对于大多数的web开发者,别管是java程序员还是.NET程序员应该都不是很陌生。今天我就和大家一起来学习一下webservice的基本内容。此篇文章作为webservice的开篇,首先我们来看一下什么是webservice。他能干什么用呢?什么是webservice? Web Services是由企业发布的完成其特定商务需求原创 2012-11-25 09:06:37 · 22070 阅读 · 20 评论 -
Java程序员从笨鸟到菜鸟之(一百零五)java操作office和pdf文件(三)利用jxl实现数据导出excel报表以及与POI的区别
在上一篇博客中我们介绍了利用Apache开源项目POI实现数据库数据导出excel报表的知识。其实在Java世界里,有两套成熟的开源工具支持对Excel文件的操作:一个是Apache POI;另一个则是本文将要介绍的Java Excel API。Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程式对Microsoft Office格式档案读/写功能。该项目分原创 2012-11-14 08:56:58 · 7066 阅读 · 6 评论 -
Java程序员从笨鸟到菜鸟之(一百零四)java操作office和pdf文件(二)利用POI实现数据导出excel报表
在上一篇博客中,我们简单介绍了java读取word,excel和pdf文档内容 ,但在实际开发中,我们用到最多的是把数据库中数据导出excel报表形式。不仅仅简单的读取office中的数据.尤其是在生产管理或者财务系统中用的非常普遍,因为这些系统经常要做一些报表打印的工作。而数据导出的格式一般是EXCEL或者PDF 。所以今天我们来简单看一下利用Apache POI实现数据库中数据导出excel原创 2012-11-12 08:24:10 · 11435 阅读 · 8 评论 -
Java程序员从笨鸟到菜鸟之(一百零三)java操作office和pdf文件(一)java读取word,excel和pdf文档内容
在平常应用程序中,对office和pdf文档进行读取数据是比较常见的功能,尤其在很多web应用程序中。所以今天我们就简单来看一下java对word、excel、pdf文件的读取。本篇博客只是讲解简单应用。如果想深入了解原理。请读者自行研究一些相关源码。首先我们来认识一下读取相关文档的jar包:1. 引用POI包读取word文档内容poi.jar 下载地址http://apache.freelamp原创 2012-11-08 10:49:28 · 39994 阅读 · 37 评论 -
Java程序员从笨鸟到菜鸟之(一百零二)sql注入攻击详解(三)sql注入解决办法
在前面的博客中,我们详细介绍了: sql注入攻击详解(二)sql注入过程详解 sql注入攻击详解(一)sql注入原理详解 我们了解了sql注入原理和sql注入过程,今天我们就来了解一下sql注入的解决办法。怎么来解决和防范sql注入,由于本人主要是搞java web开发的小程序员,所以这里我只讲一下有关于java w原创 2012-11-05 08:46:45 · 23528 阅读 · 17 评论 -
Java程序员从笨鸟到菜鸟之(一百零一)sql注入攻击详解(二)sql注入过程详解
在上篇博客中我们分析了sql注入的原理,今天我们就来看一下sql注入的整体过程,也就是说如何进行sql注入,由于本人数据库和网络方面知识有限,此文章是对网上大量同类文章的分析与总结,其中有不少直接引用,参考文章太多,没有注意出处,请原作者见谅) SQL注入攻击的总体思路是:1.发现SQL注入位置;2.判断后台数据库类型;3.确定XP_CMDSHELL可执行情况4.发原创 2012-10-25 10:12:50 · 23706 阅读 · 19 评论 -
Java程序员从笨鸟到菜鸟之(一百)sql注入攻击详解(一)sql注入原理详解
前段时间,在很多博客和微博中暴漏出了12306铁道部网站的一些漏洞,作为这么大的一个项目,要说有漏洞也不是没可能,但其漏洞确是一些菜鸟级程序员才会犯的错误。其实sql注入漏洞就是一个。作为一个菜鸟小程序员,我对sql注入的东西了解的也不深入,所以抽出时间专门学习了一下。现在把学习成果分享给大家,希望可以帮助大家学习。下面我们就来看一下。一、什么是sql注入呢? 所原创 2012-10-24 08:00:51 · 37012 阅读 · 46 评论 -
Java程序员从笨鸟到菜鸟之(九十九)深入java虚拟机(八)开发自己的类加载器
欢迎阅读本专题的其他博客: 深入java虚拟机(一)——java虚拟机底层结构详解 深入java虚拟机(二)——类的生命周期(上)类的加载和连接 深入java虚拟机(三)——类的生命周期(下)类的初始化原创 2012-10-22 09:26:43 · 19214 阅读 · 20 评论 -
Java程序员从笨鸟到菜鸟之(九十八)深入java虚拟机(七)深入源码看java类加载器ClassLoader
欢迎阅读本专题的其他博客: 深入java虚拟机(一)——java虚拟机底层结构详解 深入java虚拟机(二)——类的生命周期(上)类的加载和连接 深入java虚拟机(三)——类的生命周期(下)类的初始化原创 2012-10-19 11:34:36 · 10630 阅读 · 7 评论 -
Java程序员从笨鸟到菜鸟之(九十七)深入java虚拟机(六)——类加载的父亲委托机制
在前面两篇博客中我们简单介绍了类加载器的基础和类的生命周期的基础内容,今天我们来继续深入的来看一下java的类加载器的详细内容。我们都知道。类加载器用来把类加载到java虚拟机。从JDK2.0开始,类的加载过程采用父亲委托机制。JVM的ClassLoader采用的是树形结构,除了根类加载器以外,每个ClassLoader都会有且仅有一个父类加载器,用户自定义的ClassLoader默认的父类加载器原创 2012-10-16 12:11:23 · 12495 阅读 · 14 评论 -
Java程序员从笨鸟到菜鸟之(九十六)深入java虚拟机(五)——java本地接口JNI详解
对于java程序员来说,java语言的好处和优点,我想不用我说了,大家自然会说出很多一套套的。但虽然我们作为java程序员,但我们不得不承认java语言也有一些它本身的缺点。比如在性能、和底层打交道方面都有它的缺点。所以java就提供了一些本地接口,他主要的作用就是提供一个标准的方式让java程序通过虚拟机与原生代码进行交互,这也就是我们平常常说的java本地接口(JNI——java native原创 2012-10-12 09:25:50 · 16956 阅读 · 19 评论 -
Java程序员从笨鸟到菜鸟之(九十五)深入java虚拟机(四)——java虚拟机的垃圾回收机制
Java语言从出现到现在,一直占据编程语言前列,他很大的一个原因就是由于java应用程序所运行的平台有关。我们大家都知道java应用程序运行在java虚拟机上。这样就大大减少了java应用程序和底层操作系统打交道的频率。这也就为java程序的跨平台提供了良好的基础。在java虚拟机中为我们提供了一个很重要的机制就是java虚拟机的自动的内存管理机制。也就是我们平时所说的垃圾回收机制,这使得开发人员原创 2012-10-06 10:11:03 · 16822 阅读 · 18 评论 -
Java程序员从笨鸟到菜鸟之(九十四)深入java虚拟机(三)——类的生命周期(下)类的初始化
上接深入java虚拟机——深入java虚拟机(二)——类加载器详解(上),在上一篇文章中,我们讲解了类的生命周期的加载和连接,这一篇我们接着上面往下看。 类的初始化:在类的生命周期执行完加载和连接之后就开始了类的初始化。在类的初始化阶段,java虚拟机执行类的初始化语句,为类的静态变量赋值,在程序中,类的初始化有两种途径:(1)在变量的声明处赋值。(2)在静态代码块处赋值,原创 2012-09-08 15:00:55 · 13157 阅读 · 34 评论 -
Java程序员从笨鸟到菜鸟之(九十三)深入java虚拟机(二)——类的生命周期(上)类的加载和连接
本文来自:曹胜欢博客专栏。转载请注明出处:http://blog.youkuaiyun.com/csh624366188 类加载器,顾名思义,类加载器(class loader)用来加载 Java 类到 Java 虚拟机中。一般来说,Java 虚拟机使用 Java 类的方式如下:Java 源程序(.java 文件)在经过 Java 编译器编译之后就被转换成 Java 字节代码原创 2012-09-05 10:30:19 · 21373 阅读 · 24 评论 -
Java程序员从笨鸟到菜鸟之(九十二)深入java虚拟机(一)——java虚拟机底层结构详解
本文来自:曹胜欢博客专栏。转载请注明出处:http://blog.youkuaiyun.com/csh624366188 在以前的博客里面,我们介绍了在java领域中大部分的知识点,从最基础的java最基本语法到SSH框架。这里面应该包含了在java领域里面的大部分内容了吧。但是,那些知识点是让我们从一个应用的层面上了解了java,java程序真正底层的运行机制和一些底层虚拟机的工作我原创 2012-09-03 11:27:51 · 78943 阅读 · 48 评论 -
Java程序员从笨鸟到菜鸟之(九十一)跟我学jquery(七)jquery动画大体验
本文来自:曹胜欢博客专栏。转载请注明出处:http://blog.youkuaiyun.com/csh624366188 最近一直感觉自己好忙,每天都浑浑噩噩的过着,转眼间,好像有好长时间没有更新笨鸟到菜鸟了。现在想想,实在罪过了。自从从北京回来就一直投入不了状态,所以也想利用一下这个写博客的机会来促进自己早日投入状态吧。今天我们要讲的是jquery动画的东西,其实原创 2012-08-10 11:46:57 · 7933 阅读 · 4 评论 -
Java程序员从笨鸟到菜鸟之(九十)跟我学jquery(六)jquery中事件详解
由于jquery本身就是web客户端的有力帮手,所以事件对于它来说就显得尤为重要了,事件是脚本编程的灵魂. 所以此内容也是jQuery学习的重点。 在传统的javascript中,注册一个事件也是非常简单的事情,下面我们具体看一下一个简单的示例:document.getElementById("testDiv2").onclick = showMsg;等效于原创 2012-07-24 08:13:03 · 11955 阅读 · 14 评论 -
Java程序员从笨鸟到菜鸟之(八十九)跟我学jquery(五)jquery中的ajax详解
Ajax让用户页面丰富起来, 增强了用户体验. 使用Ajax是所有Web开发的必修课. 虽然Ajax技术并不复杂, 但是实现方式还是会因为每个开发人员的而有所差异.jQuery提供了一系列Ajax函数来帮助我们统一这种差异, 并且让调用Ajax更加简单. Ajax 最常见的用法就是把一块 HTML 代码加载到页面的某个区域中去。为此,只需简单地选择所需的元素,然后使用 load() 函数即可。 然原创 2012-07-21 10:32:59 · 8784 阅读 · 8 评论 -
Java程序员从笨鸟到菜鸟之(八十八)跟我学jquery(四)JQuery框架操作元素的属性与样式
在前面几篇博客中,我们初步了解了一下jquery的好处,基本语法,还有一些基本函数,这是学习jquery的基础,在这篇博客中,我们一起来学习一下JQuery框架操作元素的属性与样式,在web开发中,修改页面元素的属性和样式是我们需要常用的功能。所以掌握好这个知识点,对于我们在web开发中也是一个非常有力的利剑。好,下面我们就具体来看一下:首先来看一下两个概念的区别:元素属性和Dom原创 2012-07-01 13:07:00 · 8649 阅读 · 11 评论 -
Java程序员从笨鸟到菜鸟之(八十七)跟我学jquery(三)jquery动态创建元素和常用函数示例
在上面两篇博客中列举了太多的API相信大家看着眼晕. 不过这些基础还必须要讲, 基础要扎实.其实对于这些列表大家可以跳过, 等以后用到时再回头看或者查询官方的API说明.在本博客中就给大家讲解一下这些头晕的API 主要讲解动态创建元素操作jQuery包装集的各个函数一.动态创建元素(这块转至网络,具体地址不详,以前找到的资料))1.错误的编程方法我们经常使用javascript原创 2012-06-20 11:34:57 · 18478 阅读 · 8 评论 -
Java程序员从笨鸟到菜鸟之(八十六)跟我学jquery(二)大话jquery选择器
本篇博客我将带大家来学习一下jquery的第一个比较重要的知识点,这个知识点对学习jquery的同学来说是必须掌握的,因为他是所有操作的基础,这个知识点就是jquery的对象选择器,我们利用jquery的操作都是基于对象上的,我们只有正确的选择好了我们要操作的对象,我们才能进行我们下一步的操作。jQuery的选择器是什么方便的,我们几乎可以利用它获取页面上任意的一个或一组对象, 可以明显减轻开发人原创 2012-06-18 11:09:50 · 12367 阅读 · 7 评论 -
Java程序员从笨鸟到菜鸟之(八十五)跟我学jquery(一)爱之初体验jquery
一、Jquery简介Jquery是一个优秀的Javascrīpt框架。它是轻量级的js库(压缩后只有21k) ,它兼容CSS3,还兼容各种浏览器 (IE 6.0+, FF 1.5+, Safari 2.0+, Opera 9.0+)。 Jquery应用到我们的项目中能够使程序员从设计和书写繁杂的JS应用中解脱出来,将关注点转向功能需求而非实现细节上,从而提高项目的开发速度。它有助于简化 Jav原创 2012-06-17 14:01:13 · 12751 阅读 · 17 评论 -
Java程序员从笨鸟到菜鸟之(八十四)深入浅出Ajax
Ajax(Asynchronous JavaScript and XML),异步的JavaScript与XML 。所谓同步,就是在进行一个操作之前必须要等到上一个操作返回操作结果才能进行这个操作,而异步则是在进行一个操作时可以不受上一个操作的影响,上一个操作是否返回操作都可以执行这个操作,各个操作可以同时进行,对用户来说,不用等待了,不用等待上一个操作就可以执行新的操作了。给用户的体验增强了。异步原创 2012-06-17 11:12:34 · 7074 阅读 · 2 评论 -
Java程序员从笨鸟到菜鸟之(八十三)细谈Spring(十二)OpenSessionInView详解及用法
首先我们来看一下什么是OpenSessionInView? 在hibernate中使用load方法时,并未把数据真正获取时就关闭了session,当我们真正想获取数据时会迫使load加载数据,而此时session已关闭,所以就会出现异常。 比较典型的是在MVC模式中,我们在M层调用持久层获取数据时(持久层用的是load方法加载数据),当这一调用结束时,session随之关闭,而我原创 2012-06-16 10:15:51 · 8746 阅读 · 6 评论 -
Java程序员从笨鸟到菜鸟之(八十二)细谈Spring(十一)深入理解spring+struts2整合(附源码)
Spring和struts2是我们在项目架构中用的比较多的两个框架,怎么才能把这两个框架用好,怎么来整合是我们掌握运用这两个框架的关键点,下面我们就怎么来整合,从哪来整合,为什么要整合,从这几点来看一下struts2和spring的整合。下面我们来具体分析一下: 我们一起来想想,如果让spring和struts2进行整合,我们就希望我们可以在spring中直接注入action原创 2012-06-15 14:22:30 · 13397 阅读 · 12 评论 -
Java程序员从笨鸟到菜鸟之(八十一)细谈Spring(十)深入源码分析Spring之HibernateTemplate 和HibernateDaoSupport
spring提供访问数据库的有三种方式: HibernateDaoSupportHibernateTemplate(推荐使用)jdbcTemplate(我们一般不用)类所在包:HibernateTemplate:org.springframework.orm.hibernate3.HibernateTemplateHibernateDaoSupport:org.原创 2012-06-15 10:29:23 · 13470 阅读 · 25 评论 -
Java程序员从笨鸟到菜鸟之(八十)细谈Spring(九)spring+hibernate声明式事务管理详解
声明式事务管理是spring对事务管理的最常用的方式,因为这种方式对代码的影响最小,因此也符合非侵入性的轻量级容器的概念。Spring的事务管理是通过AOP的方式来实现的,因为事务方面的代码与spring的绑定并以一种样板式结构使用。在理解spring声明式事务管理我们首先要理解他是通过AOP怎么具体实现的。其中的事务通知由元数据(目前基于xml和注解)驱动。代理对象由元数据结合产生一个新的代理对原创 2012-06-14 09:58:01 · 13162 阅读 · 9 评论 -
Java程序员从笨鸟到菜鸟之(七十九)细谈Spring(八)spring+hibernate整合基本详解
由于Spring和Hibernate处于不同的层次,Spring关心的是业务逻辑之间的组合关系,Spring提供了对他们的强大的管理能力, 而Hibernate完成了OR的映射,使开发人员不用再去关心SQL语句,直接与对象打交道。 将Hibernate做完映射之后的对象交给Spring来管理是再合适不过的事情了, Spring也同时提供了对Hibernate的SessionFactory的集成功能原创 2012-06-13 15:38:12 · 22714 阅读 · 6 评论 -
Java程序员从笨鸟到菜鸟之(七十八)细谈Spring(七)spring之JDBC访问数据库及配置详解
利用spring访问数据库是我们ssh程序中必不可少的步骤,在没有hibernate之前,我们一般都用jdbc访问数据库,所以用jdbc访问数据库必不可少的要进行一些配置,spring中为我们提供了访问数据库的数据源配置,配置完以后我们就可以很容易的利用jdbc对数据库进行访问了。下面我们就具体来看一下spring所支持的集中jdbc数据源的配置:在Sping的配置文件中,关于da原创 2012-06-13 09:36:44 · 18204 阅读 · 4 评论 -
Java程序员从笨鸟到菜鸟之(七十七)细谈Hibernate(十九)Hibernate二级缓存详解
与Session相对的是,SessionFactory也提供了相应的缓存机制。SessionFactory缓存可以依据功能和目的的不同而划分为内置缓存和外置缓存。 SessionFactory的内置缓存中存放了映射元数据和预定义SQL语句,映射元数据是映射文件中数据的副本,而预定义SQL语句是在Hibernate初始化阶段根据映射元数据推导出来的。SessionFactory的内置缓存是只读的原创 2012-06-12 15:00:56 · 7496 阅读 · 5 评论 -
Java程序员从笨鸟到菜鸟之(七十六)细谈Hibernate(十八)悲观锁和乐观锁解决hibernate并发
锁( locking),这个概念在我们学习多线程的时候曾经接触过,其实这里的锁和多线程里面处理并发的锁是一个道理,都是暴力的把资源归为自己所有。这里我们用到锁的目的就是通过一些机制来保证一些数据在某个操作过程中不会被外界修改,这样的机制,在这里,也就是所谓的“锁”,即给我们选定的目标数据上锁,使其无法被其他程序修改。Hibernate支持两种锁机制:即通常所说的“悲观锁(Pessimist原创 2012-06-12 10:25:46 · 16652 阅读 · 9 评论 -
Java程序员从笨鸟到菜鸟之(七十五)细谈struts2(十四)struts2+ajax实现异步验证
由于老师布置作业的需要,在添加管理员的时候,要实现验证添加的管理员的用户名是否在数据库中已经存在,然后再客户端给用户一个提示。我首先想到的就是利用ajax实现异步验证技术,由于利用的ssh框架,所以在这要对struts2和ajax进行整合,由于我还没把ajax的一些知识总结出来,所以在这也不提了,有关ajax的详细内容将会在以后的博客中写出来。现在我们就以我做的这个添加管理员,验证管理员的用户名是原创 2012-06-11 13:59:12 · 8134 阅读 · 11 评论 -
Java程序员从笨鸟到菜鸟之(七十四)细谈Spring(六)spring之AOP基本概念和配置详解
首先我们来看一下官方文档所给我们的关于AOP的一些概念性词语的解释:切面(Aspect):一个关注点的模块化,这个关注点可能会横切多个对象。事务管理是J2EE应用中一个关于横切关注点的很好的例子。在Spring AOP中,切面可以使用基于模式)或者基于Aspect注解方式来实现。通俗点说就是我们加入的切面类(比如log类),可以这么理解。连接点(Joinpoint):在程序执行过程中某个特原创 2012-06-11 11:11:11 · 45932 阅读 · 8 评论 -
Java程序员从笨鸟到菜鸟之(七十三)细谈Spring(五)spring之AOP底层大揭秘
众所周知,java是面向对象语言的有力代表,提到java我们就会立即想到面向对象,提到面向对象我们就会想到java。然而面向对象也并非完美无缺的,它更注重于对象层次结构方面的东西,对于如何更好的管理对象行为内部结构,还存在着些许不足。那么我们如何使这个问题的得到更完美的解决呢?答案就是AOP。 AOP:Aspect-Oriented Programming。AOP是OOP的补充,原创 2012-06-10 16:19:46 · 13195 阅读 · 23 评论 -
Java程序员从笨鸟到菜鸟之(七十二)细谈Spring(四)利用注解实现spring基本配置详解
注:由于本人不大习惯注解方式,所以讲解完这里的注解实现基本配置之后,以后就不再单独把注解拿出来讲解了。五:Spring注解1.准备工作(1)导入common-annotations.jar(2)导入schema文件 文件名为spring-context-2.5.xsd(3)在xml的beans节点中配置2.xml配置工作 <beans x原创 2012-06-09 11:28:32 · 13532 阅读 · 6 评论 -
Java程序员从笨鸟到菜鸟之(七十一)细谈struts2(十三)struts2实现文件上传和下载详解
文件上传和文件下载是我们在web应用程序中常用的两个功能,在java中,实现这两种功能的方式也有很多种,其中struts2就给我们提供了一种算是比较简单的方式吧,下面我们就一起来看一下,首先我们来看文件上传: 文件上传 文件上传我们首先应该注意的是在上传页面的表单,这个表单也是有讲究的,由于我们提交表单的数据中有文件上传,所以这个表单的所使用的编码类型就不能是原原创 2012-06-08 14:19:21 · 9928 阅读 · 12 评论 -
Java程序员从笨鸟到菜鸟之(七十)细谈Spring(三)IOC和spring基本配置详解
对于IoC 的一些知识点,相信大家都知道他在Spring框架中所占有的地位,应该可以算的上是核心之一吧,所以IOC是否理解清楚,决定了大家对Spring整个框架的理解 Ioc的理解spring 的两个核心概念:一个是控制反转IoC,也可以叫做依赖注入DI。还有一个是面向切面编程AOP。控制反转:当某个java 对象需要(依赖)另一个java 对象时,不是自身直接创建依赖对象,而是由原创 2012-06-08 10:59:39 · 11706 阅读 · 3 评论