自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

事后诸葛亮的程序人生(微信:zq9017197)

不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!

  • 博客(35)
  • 资源 (10)
  • 收藏
  • 关注

原创 struts2——文件上传!!!

<br />import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.InputStream;import java.io.OutputStream;import com.opensymphony.xwork2.ActionSupport;public class Test extends ActionSupport { private

2010-09-29 10:24:00 520

原创 Java流控制文件上传!!!

import java.io.FileNotFoundException;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;public class Test { public static void main(String[] args) { FileReader reader = null; FileWriter writer = null; try

2010-09-29 09:40:00 1208

原创 struts2——自定义拦截器!!!

import com.opensymphony.xwork2.ActionInvocation;import com.opensymphony.xwork2.interceptor.Interceptor;public class MyInterceptor implements Interceptor { public String intercept(ActionInvocation invocation) throws Exception { long start = Syste

2010-09-28 16:35:00 532

原创 struts2——拦截器原理模拟!!!

Mainpublic class Main { public static void main(String[] args) { new ActionInvocation().invoke(); }}ActionInvocationpublic class ActionInvocation { private int index = -1; private Action action = new Action(); private List interceptors = new

2010-09-28 15:30:00 539

原创 struts2——i18n!!!

<br />struts2国际化有三种级别:<br />第一:action级别。资源文件名字必须和action名字一样,如:actionname_zh_CN.properties。<br />第二:package级别。资源文件名字必须为:package_zh_CN.properties这种形式。<br />第三:项目级别。(struts1只支持这种)资源文件名字随便取:随便取_zh_CN.properties。<br />项目级别的国际化还要在配置文件里面加:<constant name="struts.c

2010-09-28 13:58:00 861

原创 struts2——处理异常!!!

<br />public class Test extends ActionSupport { public String execute() throws Exception { try { int i = Integer.parseInt("ing"); } catch (Exception e) { return "error"; } return "success"; }}<br /><struts> <constant name="st

2010-09-27 21:11:00 562

原创 struts2——Tags!!!

property: property 取值为字符串: property 设定默认值: property 设定HTML: set 设定adminName值(默认为request 和 ActionContext): set 从request取值:

2010-09-27 14:34:00 521

原创 struts2——OGNL表达式!!!

<br /> <ol> <li>访问值栈中的action的普通属性: username = <s:property value="username"/> </li> <li>访问值栈中对象的普通属性(get set方法):<s:property value="user.age"/> | <s:property value="user['age']"/> | <s:property value="user[/"age/"]"/> | wrong: <%--<s:property value="us

2010-09-27 11:21:00 579

原创 struts2——result配置!!!

<br /><struts> <package name="resultTypes" namespace="/r" extends="struts-default"> <!-- 全局结果集 --> <global-results > <result name="mainpage">/main.jsp</result> </global-results> <!--转发,不写,默认也是它。--> <action na

2010-09-26 17:21:00 1106 1

原创 struts2——ValueStack,模块包含,默认action!!!

<br />ValueStack:<br />在action中放键值对,在页面拿:<br />this.addFieldError("f", "v1");this.addFieldError("f", "v2");<br /><%@taglib uri="/struts-tags" prefix="s" %><s:fielderror fieldName="f" theme="simple"/><br /><s:property value="errors.f[0]"/><br /><s:p

2010-09-26 16:16:00 560

原创 Struts2——访问web元素!!!

<br />取得Map类型request,session,application的引用:<br />第一种:(不推荐使用,因为依赖于容器)<br />import java.util.Map;import com.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionSupport;public class LoginAction1 extends ActionSupport { private M

2010-09-26 09:43:00 565

原创 struts2——action接受参数!!!

<br />第一种在action里面定义属性,自动生成get和set方法,struts2会自动set进去。<br />public class UserAction extends ActionSupport { private String name; public String getName() { return name; } public void setName(String name) { this.name = name; } ...}

2010-09-25 17:25:00 802 1

原创 struts2——配置文件通配符!!!

<br />在struts2中使用通配符,配置文件如下:<br /><struts> <package name="actions" extends="struts-default" namespace="/actions"> <action name="Student*" class="com.struts2.action.StudentAction" method="{1}"> <result>/Student{1}_success.jsp</res

2010-09-25 16:19:00 1785 1

原创 struts2——动态方法调用(dmi)!!!

<br />暴露一个类的一个方法,可以这样:<br /> <package name="user" namespace="/user" extends="struts-default"> <action name="user" class="User" method="add"> <result name="success">/hello.jsp</result> </action> </package><br />调用的时候:h

2010-09-25 14:42:00 829

原创 觉悟——路径的问题!!!

struts2中的路径问题是根据action的路径而不是jsp路径来确定,所以尽量不要使用相对路径。解决办法非常简单,统一使用绝对路径。但是还有一个问题在struts2中“/”相当于:http://localhost:8080/a/,而在tomcat中“/”只是相当于:http://localhost:8080/。还是有解决办法,记得用myeclipse的时候jsp页面前面它都要自动生成一段东西,那个东西现在这里就用到了:在使用路劲的时候就这样:b.jsp。如果觉得每个跳转都要这样写也麻烦,那就加一句话到h

2010-09-25 11:36:00 532

原创 struts2——action!!!

<br />由于前面已经做过一个struts2的helloword了,后面我就不再讲加入jar包和web.xml的配置了,他们都完全一样,你可以理解我默认做过了这些事情了!!!除非有变化的地方我才会说。<br />/* * 这是第一种实现自定义action的方法,不推荐使用。 * 因为如果你们的类里面没有execute方法,struts2就不知道调了。 */public class MyAction1 { public String execute() { return "succ

2010-09-25 10:53:00 562

原创 struts2好简单——HelloWord!!!

从前有一个很不错的mvc框架叫struts1,从前还有一个更不错的mvc框架叫webwork,struts1因为推出时间比webwork早,所以做得比较瞥的东西反而流行起来了。struts1一想,这样下去不行,总有一天会被webwork超越的。它们俩一商量,就合并了。于是就出现了struts2,用的主要是webwork的技术,名字叫struts2。第一步:把jar包放到项目中第二步:下一个jsp页面

2010-09-24 22:56:00 696

原创 使用XStream把Java 对象序列化为XML!!!

<br />使用 XStream 不用任何映射就能实现多数 Java 对象的序列化。在生成的 XML 中对象名变成了元素名,类中的字符串组成了 XML 中的元素内容。使用 XStream 序列化的类不需要实现 Serializable 接口。XStream 是一种序列化工具而不是数据绑定工具,就是说不能从 XML 或者 XML Schema Definition (XSD) 文件生成类。<br />和其他序列化工具相比,XStream 有三个突出的特点: XStream 不关心序列化/逆序列化的类的字段的可

2010-09-21 09:56:00 552 1

原创 ant实例!!!

<br />这些是一个商业项目里面所用到的ant打包的脚本。介绍一下项目:一个ejb项目,主要是访问后台,stc下面是前台Java代码,operroot下面是前台web的jsp,wap下面前台是手机jsp,soap是web service接口代码,另外一个是针对整个项目的打包和发布脚本。应该包含了比较全面的ant脚本用法,贴出来是为了以后可能要自己写ant的时候有个依据!!!<br /> <br />ejb.xml<br /><?xml version="1.0" encoding="UTF-8"?><

2010-09-19 19:38:00 1195

原创 oracle 体系结构!!!

<br /><br /> <br />术语:<br />oracle server 甲骨文数据库<br />instance 实例<br />database 数据库<br />system global area(SGA) 系统全局区<br />shared pool 共享池<br />redo log buffer 重做日志缓存<br />database buffer cache 数据高速缓存<br />dirty buffer 脏缓冲区<br />free buffer 空闲缓冲区<br />pin

2010-09-18 22:47:00 1007

原创 MS-DOS批处理文件!!!

<br />批处理的作用就是自动的连续执行多条命令。每个编写好的批处理文件都相当于一个DOS的外部命令。在C:盘根目录下的AUTOEXEC.BAT批处理文件是自动运行批处理文件,每次系统启动时会自动运行该文件,你可以将系统每次启动时都要运行的命令放入该文件中。<br /> <br />常用命令:<br />echo、@、call、pause、rem(小技巧:用::代替rem)是批处理文件最常用的几个命令,我们就从他们开始学起。 <br />echo 表示显示此命令后的字符。 <br />echo off 表

2010-09-16 23:13:00 2142

原创 build.xml

<br /><?xml version="1.0" encoding="UTF-8"?><project basedir="." default="war"> <property name="target" value="1.0"/> <property name="source" value="1.0"/> <path id="classpath"> <pathelement location="../mcasd_ejb/build/classes"/>

2010-09-16 09:42:00 425

原创 Java数据结构!!!

线性表,链表,哈希表是常用的数据结构,在进行Java开发时,JDK已经为我们提供了一系列相应的类来实现基本的数据结构。这些类均在java.util包中。本文试图通过简单的描述,向读者阐述各个类的作用以及如何正确使用这些类。 Collection├List│├LinkedList│├ArrayList│└Vector│ └Stack└Set  ├HashSet  └TreeSetMap├Hashtable├TreeMap├HashMap└WeakHashMapCollection是集合类的上级接口,继承与他的

2010-09-15 22:38:00 454

原创 只需花1分钟就让你会用log4j!!!

很久很久以前,做软件开发,会在代码里面加很多的System.out.println。开发完后会把这些东东再删除。社会在进步,程序员的觉悟性提高了,想到抛异常了就提示一些错误信息,还有正常情况下的提示信息什么的。System.out.println就不能满足需求了,而且要把它删除也麻烦。这个时候log4j就出现了。log4j可以简单理解为是封装好的System.out.println。它

2010-09-14 16:45:00 775

原创 XFire的aegis绑定!!!

<br />先说一下要做什么:用XFire做WebService,接口里面返回一个自定义的对象。<br />对象里面放了集合,现在就主要是讲一下这个aegis绑定的配置怎么写。<br />直接上代码了:<br /> <br />接口:<br />public interface WebserviceInterface { public UserResp queryUserInfo(UserReq userReq);}<br /> <br />接口aegis配置:<br /><?xml version

2010-09-14 16:23:00 1195

原创 插入排序!!!

package sort;/* 插入排序: 插入排序总是假设指定位置的左边的数组是有序的,而后将指定位置的值插入左边的有序数组。 指定的位置从下标1开始,每次循环递增1,直到数组结束。 */public class Insert { public static void main(String[] args) { int[] a = new int[] { 6, 4, 2, 5, 3, 0, 9, 7, 8, 1 }; sort(a); for (int

2010-09-13 13:18:00 421

原创 冒泡排序!!!

<br />package sort;/* 冒泡排序: 假设一个数组有n个元素,从数组的最左边开始,比较0号位置和1号位置元素的大小。 如果0号元素大,就让两个元素交换。如果1号元素大,就什么也不做。 然后右移一位,比较1号位置和2号位置元素的大小,和刚才一样,如果1号元素大,则交换。 照这样依次比较下去,一直到数组的最右端。最大的元素已经被排在最右边了。 因为在算法执行的时候,最大的数据项总是“冒泡”到数组的顶端,所以叫做冒泡排序。 现在重新回到数组的最左端开始第二趟排

2010-09-13 13:17:00 458

原创 选择排序!!!

<br />package sort;/* 选择排序: 将数组中所有的数据项扫描一趟,从中选出最小的一个。最小的和数组的0号元素交换位置。 现在最左端的数据项就是有序的了。再次扫描数组,从1号位置开始,还是找最小的,然后和1号位置的元素交换。 这个过程持续到所有数据项排定。 */public class Select { public static void main(String[] args) { int[] a = new int[] { 6, 4, 2,

2010-09-13 13:17:00 348

原创 PL/SQL学习笔记十四之对象类型!!!

--对象类型包括对象类型规范和对象类型实体--对象类型可以不包含方法,但是至少包含一个属性--只包含属性的的对象类型可以没有对象类型实体--只包含属性的的对象类型create or replace type person_type1 as object( name varchar2(10), sex varchar2(2), age number(3));/--建立对象表c

2010-09-09 14:25:00 510

原创 PL/SQL 11g R2 ——动态SQL

--动态sql,使用using传入参数declare sql_stat varchar2(200);begin sql_stat:='update emp set sal=:v_sal where empno=:v_empno'; execute immediate sql_stat using &1,&2; commit;end;/set serveroutp

2010-09-06 10:26:00 720

原创 PL/SQL学习笔记十二之事件触发器!!!

--事件属性函数--客户端的ip地址select ora_client_ip_address from dual--当前数据库名select ora_database_name from dual--登录用户名select ora_login_user from dual--触发触发器的系统事件名ora_sysevent--ddl操作所对应的对象的所有者名ora_dict_obj_

2010-09-03 11:43:00 1179

原创 PL/SQL 11g R2 —— 触发器

set serveroutput on--触发器是被隐含执行的存储过程--语句级触发器create or replace trigger bonus_triggerafter insert or update or delete on bonusbegin case when inserting then dbms_output.put_line('inserted'); w

2010-09-03 11:12:00 615

原创 PL/SQL 11g R2 —— 包

set serveroutput on--包由包规范和包体两部分组成--包规范里面定义的对象是全局的--包体里面定义的对象是局部的--定义包规范create or replace package emp_package is --使用了重载,两个过程名相同,参数不同 procedure get_sal(v_empno in number); --全局过程 procedu

2010-09-02 13:37:00 489

原创 PL/SQL 11g R2 —— 函数

--带in参数的函数create or replace function get_ename(v_empno in number)return varchar2is v_ename emp.ename%type;begin select emp.ename into v_ename from emp where emp.empno=v_empno; return v_ena

2010-09-02 10:11:00 585

原创 PL/SQL 11g R2 —— 存储过程

--子程序:过程和函数--带有out参数的存储过程create or replace procedure query_emp( v_empno in emp.empno%type, v_ename out emp.ename%type, v_sal out emp.sal%type) isbegin select emp.ename,emp.sal into v_ename,v_sa

2010-09-01 17:35:00 568

《Oracle Wait Interface性能诊断与调整实践指南》

《Oracle Wait Interface性能诊断与调整实践指南》

2012-12-17

《ORACLE SQL 高级编程》随书脚本

《ORACLE SQL 高级编程》随书脚本 英文版叫《pro oracle sql》 想要精通oracle sql必读书籍!

2012-12-17

ORACLE SQL 高级编程

《pro oralce sql》经典书籍的中文版《ORACLE SQL 高级编程》! 找了好久才找到的书籍,是中文的,英文瞥的童鞋也可以看的!

2012-12-17

java面试宝典

java面试宝典,面试的时候必备资料!

2012-12-17

Linux Shell脚本攻略(pdf书+源码)

Linux Shell脚本攻略(pdf书+源码)

2012-12-17

oracle常用函数大全

oracle常用函数大全 包含了oracle常用的100多个函数

2011-02-13

oracle高级sql学习

1.集合操作 2.EXISTS和NOT EXISTS的使用 3.WITH子句 4.MERGE INTO合并资料 5.层次查询(HIERARICAL RETRIVAL) 6.DECODE函数和行列互换 7.CASE表达式 8.ROWNUM—TOP-N分析 9.相关子查询和非相关子查询 10.增强的GROUP BY 11.分析函数(ANALYTICAL FUNCTIONS) 12.ROWID的使用 13. ORACLE10G正则表达式 14.使用HINT 15.PARITION分区 16.并行操作 17.扩展DDL和DML语句 18.MODEL语句 19.10G闪回查询 20.专题—行列转换 21.专题—连续值和累计值问题 22.专题—NULL和DUAL详 23.专题—时间、数字、字符格式详解 24.专题—ORACLE字符集问题 25.专题-随机值查询

2011-02-13

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

TA关注的人

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