首页> 网络编程教程
全部 ASP教程 ASP教程 ASP.NET教程 PHP教程 JSP教程 C#/CSHARP教程 XML教程 Ajax教程 Perl教程 Shell教程 Visual Basic教程 Delphi教程 移动开发教程 C/C++教程 Java教程 J2EE/J2ME 软件工程
网络编程教程
  • 从搭建Struts2 开发环境说起

    从搭建Struts2 开发环境说起

    Struts2Struts2是在WebWork2基础发展而来的。和struts1一样,Struts2也属于MVC框架。不过有一点大家需要注意的是:尽管Struts2和struts1在名字上的差别不是很大,但Struts2和struts1在代码编写风格上几乎是不一样的。那么既然有了struts1,为何还要推出struts2。主要是因为struts2有以下优点:1>在软件设计上Struts2没有像struts1那样跟ServletAPI和strutsAPI有着紧密的耦合,Struts2的应用可以不依赖于
    2024-11-19
  • 在Struts2中的结果集类型

    在Struts2中的结果集类型

    1、每个action方法都返回一个String类型的值,struts一次请求返回什么值是由这个值确定的。2、在配置文件中,每一个action元素的配置都必须有result元素,每一个result对应一个action的返回值。3、Result有两个属性:name:结果的名字,和action中的返回值一样,默认值为success;type:响应结果类型,默认值为dispatcher.在下面找到struts-default.xml文件中,如下面所示:说明:1、从上述可以看出总共10种类型2、默认类型为Servl
    2024-11-19
  • Struts2开发 基本配置与类型转换

    Struts2开发 基本配置与类型转换

    一、Action配置中的各项默认值<package name="csdn" namespace="/test" extends="struts-default"><action name="helloworld" method="execute" ><result name="success">/WEB-INF/page/hello.jsp</result></action></package> 1>如果没有为action指定c
    2024-11-19
  • Java下3中XML解析 DOM方式、SAX方式和StAX方式

    Java下3中XML解析 DOM方式、SAX方式和StAX方式

    先简单说下前三种方式:DOM方式:个人理解类似.net的XmlDocument,解析的时候效率不高,占用内存,不适合大XML的解析;SAX方式:基于事件的解析,当解析到xml的某个部分的时候,会触发特定事件,可以在自定义的解析类中定义当事件触发时要做得事情;个人感觉一种很另类的方式,不知道.Net体系下是否有没有类似的方式?StAX方式:个人理解类似.net的XmlReader方式,效率高,占用内存少,适用大XML的解析;不过SAX方式之前也用过,本文主要介绍JAXB,这里只贴下主要代码:复制代码代码如下
    2024-11-19
  • 关于Struts2的类型转换详解

    关于Struts2的类型转换详解

    一、类型转换的意义对于一个智能的MVC框架而言,不可避免的需要实现类型转换.因为B/S(浏览器/服务器)结构应用的请求参数是通过浏览器发送到服务器的,这些参数不可能有丰富的数据类型,因此必须在服务器端完成数据类型的转换MVC框架是一个表现层解决方案,理应提供类型转换的支持,Struts2提供了功能非常强大的类型转换支持.二、表现层数据的处理1、对于web应用而言,表现层主要用于与用户交互,包括收集用户输入数据,向用户呈现服务器的状态。因此表现层的数据的流向主要有两个方向:输入数据和输出数据。2、对于输入数
    2024-11-19
  • 关于国际化、OGNL表达式语言

    关于国际化、OGNL表达式语言

    一、国际化准备资源文件,资源文件的命名格式如下:baseName_language_country.propertiesbaseName_language.propertiesbaseName.properties其中baseName是资源文件的基本名,我们可以自定义,但language和country必须是java支持的语言和国家。如:中国大陆: baseName_zh_CN.properties美国: baseName_en_US.properties现在为应用添加两个资源文件:第一个存放中文:csd
    2024-11-19
  • 关于JAVA经典算法40题(超实用版)

    关于JAVA经典算法40题(超实用版)

    【程序1】题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第四个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?1.程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21....public class exp2{ public static void main(String args[]){ int i=0; for(i=1;i<=20;i++)System.out.println(f(i));}public static int f(int
    2024-11-19
  • 有关于整体刷新和局部刷新frameset窗口

    有关于整体刷新和局部刷新frameset窗口

    在项目中,经常会遇到页面分割,最常见的系统或网站的主界面。主页面分为,上面系统简介、下面作者简介、左边系统功能菜单、右边则是菜单真正展示的界面。 遇到这种这种分割页面,大家首先想到是frameset,使用framset分割多种frame,这种方式简单。若是不喜欢使用framset,喜欢前台设计的人也许会选择p拼接,浮动,这就考查css样式的功底了。这次主要讲解局部刷新的问题。需求是:左边frame,右边frame。大家肯定疑问,这样刷新没有问题啊。的确如此。现在使用framset,分割两frame,各自更
    2024-11-19
  • 关于struts返回对象json格式数据的方法

    关于struts返回对象json格式数据的方法

    想在struts中返回一个对象的json数据,通过定义复制代码代码如下:<action name="getUserByName" method="getUserByName"><result name="success" type="json">userInfo</result></action>结果返回的是整个action类的所有成员变量的json数据。要想返回userInfo对象的数据,需要将返回参数定义为root对象复制代码代码如下:<actio
    2024-11-19
  • JSP页面pageEncoding和contentType属性

    JSP页面pageEncoding和contentType属性

    JSP要经过两次的“编码”,第一阶段会用pageEncoding,第二阶段会用utf-8至utf-8,第三阶段就是由Tomcat出来的网页, 用的是contentType。关于JSP页面中的pageEncoding和contentType两种属性的区别:pageEncoding是jsp文件本身的编码contentType的charset是指服务器发送给客户端时的内容编码JSP要经过两次的“编码”,第一阶段会用pageEncoding,第二阶段会用utf-8至utf-8,第三阶段就是由Tomcat出来的网页
    2024-11-19
  • 如何用struts调用支付宝接口

    如何用struts调用支付宝接口

    一、ACTION类关键代码 没用的包可以干掉复制代码代码如下:package com.hzdracom.alipay.action;import it.sauronsoftware.base64.Base64;import java.io.IOException;import java.io.PrintWriter;import java.net.HttpURLConnection;import java.util.HashMap;import java.util.Map;import java.util
    2024-11-19
  • 在Java中自由块的执行顺序

    在Java中自由块的执行顺序

    java中的自由块分为静态的自由块和非静态的自由块。 非静态自由块的执行时间是:在执行构造函数之前。 静态自由块的执行时间是:class文件加载时执行。 非静态自由块可以多次执行,只要初始化一个对象就会执行,但是静态自由块只会在类装载的时候执行一次,一般用来初始化类的静态变量的值。 每次初始化一个对象,都会导致一次非静态块的执行。 如果涉及到继承,则是:首先执行父类的非静态块,然后是父类的构造函数,接着是自己的自由块,最后是自己的构造函数。静态块的执行时机是在class文件装载的时候,class文件只会装
    2024-11-19
  • review引发的有关于单例模式的思考

    review引发的有关于单例模式的思考

    一次代码调试中发现一个情况,即我在查看memcached的connection时,发现总是维持在100来个左右,当然这看似没什么问题,因为memcached默认connection有1024个。但是我想的是为什么会有100来个,因为我的memcachedclient的产生采用的是单例模式我定义了一个memcachedClientFactory类,主要代码如下:复制代码代码如下:MemcachedClientFactory{private MemcachedConnectionBuilder memcach
    2024-11-19
  • Java调用.dll文件的方法

    Java调用.dll文件的方法

    下截JNative组件jnative.sourceforge.net/ 到这里下载JNative开源项目,我下载的是1.3.2解压JNative-<st1:chsdate isrocdate="False" islunardate="False" day="30" month="12" year="1899">1.3.2</st1:chsdate>.zip获得三个文件,分别是:JNativeCpp.dll,libJNativeCpp.so,JNative.jar 。 JNative
    2024-11-19
  • java 重定义数组的实现方法(与VB的ReDim相像)

    java 重定义数组的实现方法(与VB的ReDim相像)

    复制代码代码如下://param objArr the expanded object of Array. //param newLength the length of the new Array public static Object getNewArr(Object objArr, int newLength) { if (!objArr.getClass().isArray()) {//判断类型 return null; } // get the array's componentType Cl
    2024-11-19