JSPGenSDF软件开发框架(于2014年5月5号发布4.0版),简称JSPGen,专用Java Web方面平台式软件开发,整个框架也可以说是前台与后台的一个粘合剂,现在对JSPGenSDF进行开发配置,看看最基础的配置和最基本的使用方法。

 

JSPGenSDF学习成本不高,采用的都是Java原生态编码方式,按照官方说法:稍有Java基础知识均可做开发,这也是我打算整理此教程的根本原因(题外话:此次版本与之前版本区别很大,网上资料很少,官方资料又太过专业,希望此教程能帮助大家更好、更快熟悉这个开发框架)。

 

本次demo工程是一个官网提供的示例项目工程,开发方面我们采用官网提供的Eclipse3.7中文版进行Java开发以及项目管理。

一、准备工作

1、下载项目运行环境:WATMServer2.6

2、下载项目运行(开发)时所需第三方jar组件包:Jar20140505

3、下载开发环境(工具):Eclipse3.7

4、获取JSPGen示例项目:

有两种获取方式:

a、到官网在线预定,选免费型(建议选这种方式,获取都是最新版本);

b、加入官网提供的QQ交流群:12349848,在群共享里下载。

 

环境下载地址:

示例项目获取:

 

二、环境安装及项目导入

视频教程下载:

 

三、项目配置

A、项目结构

 

B、配置文件

1、jspgen-config.xml

框架所构建的平台基本信息配置:

    
    
       
JSPGen-让Java(Web)软件开发变得更敏捷! www.JSPGen.com       
       
http://127.0.0.1:8080/
    
        
    
JSPGen.com
    
http://www.jspgen.com/
    
JSPGen@163.com
    
    
Asia/Shanghai
    
    
zh_CN
    
    
UTF-8
    
    
    
    
true
    
    
       
       
       
       
static/
    
    
    
       
       
       
       
temp/upload/
       
       
1M
        
    
       
       
temp/download/
        
    
       
       
JSPGen
       
       
       
       
    
    
    
       
           
           
SMTP
           
smtp.163.com
           
25
           
jspgen@163.com
           
JSPGen官网
           
jspgen
           
jspgen
           
           
html
           
           
JSPGen-让Java(Web)软件开发变得更敏捷! www.JSPGen.com
       
    

2、jspgen-action.xml

业务动作配置,为后台业务与前台显示视图进行配对服务,这里需要注意仅定义Action所在包的地址,而非具体Action文件地:

    
    
       
       
true       
false       
       
false       
       
       
       
gen       
       
!       
       
/WEB-INF/template/       
       
       
       
true       
       
${space}/${action}_${result}.jsp        
    
       
       
error.jsp       
success.jsp    
    
    
       
       
           
           
demo.jsp           
demo_mail.jsp           
demo_upload.jsp           
demo_upload_list.jsp           

 

3、i18n_zh_CN.xml

国际化资源配置,主要用于Java程序中提示语句配置:

    
    
       
您的IP地址是:{0}       
       
操作失败       
操作成功       
       
上传失败       
上传成功    

 

4、log4j.properties

日志输出配置,仅修改输入文件地址即可:

# DEBUG < INFO < WARN < ERROR < FATALlog4j.rootLogger=DEBUG,console,rollingFile# -----------------------------------------------------------------------------------------log4j.appender.console=org.apache.log4j.ConsoleAppenderlog4j.appender.console.Threshold=DEBUGlog4j.appender.console.encoding=UTF-8log4j.appender.console.layout=org.apache.log4j.PatternLayoutlog4j.appender.console.layout.ConversionPattern=%-5p [%t] (%F:%L) - %m%n# -----------------------------------------------------------------------------------------log4j.appender.rollingFile=org.apache.log4j.RollingFileAppenderlog4j.appender.rollingFile.File=E:/web/log.loglog4j.appender.rollingFile.MaxFileSize=500KBlog4j.appender.rollingFile.Threshold=INFOlog4j.appender.rollingFile.encoding=UTF-8log4j.appender.rollingFile.layout=org.apache.log4j.PatternLayoutlog4j.appender.rollingFile.layout.ConversionPattern=%d{yyyy-MM-dd hh:mm:ss} [%-5p] (%F:%L) - %m%n

 

5、jspgen-parse.xml

视图(模板)解析配置,一般情况下不需要修改,保持默认即可:

    
    
       
       
<%@page import="java.util.*"%> <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@taglib prefix="g" uri="http://api.jspgen.com/taglib/jstl" %>      ]]>              
       
UTF-8       
UTF-8       
UTF-8       
5       
       
zh_CN       
UTF-8       
1       
true        
       
jspgen.parse.provider.JSTLProvider       
jspgen.parse.provider.VelocityProvider       
jspgen.parse.provider.FreemarkerProvider       
       
    

C、业务动作处理

1、IndexAction.java

默认视图动作:

package demo.action;import grapes.Dates;import java.io.IOException;import javax.servlet.http.HttpServletResponse;import jspgen.action.Action;/** * Action类:默认主页 *  * @author JSPGen * @copyright (c) JSPGen.com * @created 2013年03月 * @email jspgen@163.com * @address www.jspgen.com */publicclass IndexAction extends Action {     /**     * 默认方法     */    @Override    public String execute() {       HttpServletResponse response = getResponse();       try {           // 直接输出字符串           response.getWriter().write("

Hello JSPGener!

");           response.getWriter().write("Time:"+Dates.getDateTime());       } catch (IOException e) {           thrownew IllegalArgumentException(e);       }       return NONE;    }}

2、DemoAction.java

演示动作:

package demo.action;import grapes.Dates;import grapes.Files;import grapes.Grapes;import grapes.tools.Browser;import java.io.File;import java.net.MalformedURLException;import java.net.URL;import java.util.ArrayList;import java.util.List;import java.util.Map;import jspgen.action.Action; /** * Action类:演示 *  * @author JSPGen * @copyright (c) JSPGen.com * @created 2013年03月 * @email jspgen@163.com * @address www.jspgen.com */publicclass DemoAction extends Action {    /**    Action文件常用方法对象:     获取用户端请求对象:HttpServletRequest request = getRequest();     获取服务端响应对象:HttpServletResponse response = getResponse();     获取用户端IP地址:String ip = Browser.getIP(getRequest());     获取用户界面表单值:String name = getParameter("name"); // 接收表单值(表单名称:name)      获取当前系统时间戳:long dateline = Dates.getTimeMillis();     向用户界面(模板)赋值:setAttribute("属性名称", 属性值); // 属性值可以是对象或具体数值     向用户界面直接输出:response.getWriter().write("

Hello JSPGener!

这是一个  Action 演示页面…");     向日志文件输出:logger.info("日志输出:"+ ip);     */    /**     * 创建     */    @Override    protected String create() {       // 先处理父级方法,再处理本类定义       String result = super.create();       if (NONE.equalsIgnoreCase(result) || ERROR.equalsIgnoreCase(result) ) return result;       // --------------------------       // 本类定义       return SUCCESS;    }        /**     * 销毁     */    @Override    protectedvoid destroy() {       // 本类定义       // --------------------------       // 先处理本类定义,再处理父级方法       super.destroy();    }    // -----------------------------------------------------------    /**     * 默认方法     */    @Override    public String execute() {       String ip = Browser.getIP(getRequest());       String youIp = getMessageValue("global.access_ip", new Object[]{ ip });      // 资源调用                         // 日志输出       logger.info("日志输出:"+ youIp);                         // 字符串输出       String str = "

Hello JSPGener!

 这是一个演示Action中的默认方法… " + youIp;       setAttribute("message", str);       // 跳转页面(若直接输出,则跳转无用,主要与模板结合使用)       // this.redirectUrl = "http://www.jspgen.com/";       return "demo";    } }

3、demo.jsp

演示视图(模板)文件:

<%@page trimDirectiveWhitespaces="true"%><%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%><%@taglib prefix="g" uri="http://api.jspgen.com/taglib/jstl"%>
演示
  
     ${message}      
返回首页   

 

四、项目发布

A、项目部署至Tomcat

 

B、进行测试

 

 

 

本文由 JSPGener 提供,作者:西雅