新的Java架构(JWMS)? [英] New Java architecture (JWMS) ?

查看:88
本文介绍了新的Java架构(JWMS)?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经阅读了有关一个名为JWMS的新Java架构的文档!

我想知道任何人都知道吗?
请为我描述一下.

这是我已阅读的文档的链接:
http://SourceForge.net/projects/shine-enterpris/files/ [

I''ve read a document about a new java architecture that''s name is JWMS !

I want to know of any body know any thing about it?
Please describe it for me.

Here is link of the document I''ve read:
http://SourceForge.net/projects/shine-enterpris/files/[^]

推荐答案

我已经下载了它,并通过阅读doc将其镜像为:

I''ve download it, and by reading doc I image it as :

+-----------------------------------------------+
|	Shine-Enterprise-Pattern                |
|						|
|  Maplet  | JShooter |  JConnection  | Utils   |
+-----------------------------------------------+
|asm.jar, c3p0-0.9.0.jar, ...                   |
|		Open Source Libs                |
|commons-collections-2.1.1.jar, ...             |
+-----------------------------------------------+
|						|
|		Java SE				|
|						|
+-----------------------------------------------+



就像Spring使用许多OpenSource库并拥有自己的JEE和JSE框架一样.
但实际上像Maven Archetype一样闪耀,为什么?
因为它只是工具的集合,并且创建了可以帮助您并节省生命和/或时间(〜50%)的类和方法,以免重写它们.
您可以查看源代码(发光源代码仅为78kbyte)并使用许多库.



it''s like Spring that use many OpenSource lib and has own framework for JEE and JSE, it''s great.
but in reality Shine like Maven Archetype, why?
because it just a collection of tools, and has create classes and methods that help you and save your life and/or time (~50%) for not rewrite it.
you can look in source (Shine source code is just 78kbyte) and use many libs.

Developing a project with amateur developers is very dangerous. Because new developers don''t care about some important things, and if the project manager, technical architect or head developer don’t care about those points, the project will fail.



我们可以看到!作者想创建一个像(Maven Archetype)这样的项目示例,供所有人遵循并使用某些方法,这样可以很容易地节省开发中的许多事情.

(也许^ _ ^)



we can see! author want to create a project-example like (Maven Archetype), for all people follow and use some methods, this can easily save many things in development.

(maybe ^_^)


非常感谢

你是对的

令人着迷的东西

我想使用这种模式进行项目,但是我的知识受到限制

我对此一无所知

MVC和JWMS之间的主要区别是什么?

你完全了解maplet吗?
thanks a lot

you are right

it is some thing intresting

I want to do a project with this pattern but my knowledge is limitted

and i don''t understand some thing about it

what is the main differences between MVC and JWMS?

and do u understand maplet completely ?


检查我的代码,看看maplet不像spring
注意1:资源包不是.properties文件的类
注2:maplet:DataTable不同
注意3:启动方法只执行一次,就像servlet中的init方法一样
注意N:发现更多,让我知道:)


fileName:maplet.tld
====================
<?xml version ="1.0" encoding ="UTF-8"?>
<!DOCTYPE taglib PUBLIC-//Sun Microsystems,Inc.//DTD JSP标记库1.1//EN"
"http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">
< taglib>
< tlibversion> 1.0</tlibversion>
< jspversion> 1.1</jspversion>
< shortname> maplet</shortname>
< tag>
<名称>服务</名称>
< tagclass> org.j2os.shine.maplet.tag.Service</tagclass>
< bodycontent> JSP</bodycontent>
< attribute>
<名称>名称</名称>
</attribute>
</tag>
< tag>
< name> SecureService</name>
< tagclass> org.j2os.shine.maplet.tag.SecureService</tagclass>
< bodycontent> JSP</bodycontent>
< attribute>
<名称>名称</名称>
</attribute>
</tag>
< tag>
< name> ErrorService</name>
< tagclass> org.j2os.shine.maplet.tag.ErrorService</tagclass>
< bodycontent> JSP</bodycontent>
</tag>
< tag>
< name>资源</name>
< tagclass> org.j2os.shine.maplet.tag.Resource</tagclass>
< bodycontent> JSP</bodycontent>
< attribute>
< name> show</name>
</attribute>
< attribute>
< name>来自</name>
</attribute>
</tag>
< tag>
< name> DataTable</name>
< tagclass> org.j2os.shine.maplet.tag.DataTable</tagclass>
< bodycontent> JSP</bodycontent>
</tag>
< tag>
< name> DataRow</name>
< tagclass> org.j2os.shine.maplet.tag.DataRow</tagclass>
< bodycontent> JSP</bodycontent>
</tag>
</taglib>
====================



fileName:Resuest.jsp
====================
<%@ taglib uri ="/WEB-INF/maplet.tld" prefix ="maplet"%>
< html>
< body>
< form name ="myform" action ="Core.exec">
< maplet:资源show ="msg1"/>
<输入type ="text" name ="name"/>
< input type ="submit" value ="ClassicSendQuery"/>
</form>
</body>
</html>
====================



fileName:Response.jsp
====================
<%@页面contentType ="text/html; charset = windows-1252"%>
<%@ taglib uri ="/WEB-INF/maplet.tld" prefix ="maplet"%>
< maplet:SecureService name ="insert">

</maplet:SecureService>
< maplet:ErrorService>
< maplet:资源show ="msg2"/>
< maplet:DataTable>
<数据库驱动程序> oracle.jdbc.driver.OracleDriver</数据库驱动程序>
< database-url> jdbc:oracle:thin:@javaserver:1521:xe</database-url>
<数据库用户名> iranair</数据库用户名>
<数据库密码> iran123</数据库密码>
< database-query-sql>从用户中选择*</database-query-sql>
< view-border> style ="background-color:red; border:1px solid"</view-border>
< view-header> style ="background-color:green; border:5px solid"</view-header>
< view-first-records> style ="background-color:pink"</view-first-records>
< view-second-records> style ="background-color:grey"</view-second-records>
</maplet:DataTable>
</maplet:ErrorService>
====================



fileName:Core.java
====================
包控制器;

导入model.database.dao.T1DAO;

导入org.j2os.shine.maplet.Maplet;


公共类Core扩展Maplet {
私人T1DAO t1;
公共字符串名称;

public void startup()引发异常{
尝试{
t1 =新的T1DAO("model/database/setting/Connection.xml");
System.out.println("DataBaseLogin");
} catch(Exception e){
out.print(e);
}
}

公共无效request()引发异常{
t1.insert(0,name,"none");
secureForward("Response.jsp",插入");
}
}
====================



fileName:T1DAO.java
====================
包model.database.dao;

导入model.database.dto.*;

导入org.j2os.shine.jconnection.*;

导入java.util.*;


公共类T1DAO扩展了Hibernate {
公共T1DAO(字符串地址)引发异常{
登录名(地址);
}

公共无效插入(长id,字符串名称,字符串家族)
引发异常{
//如果id!= 0 =>更新
begin();

T1对象=新的T1();
object.setId(id);
object.setName(name);
object.setFamil(famil);
saveOrUpdate(object);
commit();
}

公共无效delete()引发异常{
begin();

迭代器i = getSQLQueryContent(从t1选择*",
"model.database.dto.T1");

而(i.hasNext()){
T1对象=(T1)i.next();
delete(object);
}

commit();
}

公共无效update()引发异常{
begin();

迭代器i = getSQLQueryContent(从t1选择*",
"model.database.dto.T1");

而(i.hasNext()){
T1对象=(T1)i.next();
object.setFamil("bahador");
saveOrUpdate(object);
}

commit();
}

public void select()引发异常{
begin();

迭代器i = getSQLQueryContent(从t1选择*",
"model.database.dto.T1");

而(i.hasNext()){
T1对象=(T1)i.next();
System.out.println(object.getName());
}

commit();
}
}
====================



fileName:T1.java
====================
包model.database.dto;
导入org.j2os.shine.maplet.tag.DataTable;
公共课T1 {
私人长ID;
私有字符串名称;
私人String famil;

public void setName(String name){
this.name =名称;
}

public String getName(){
返回名称;
}

public void setFamil(String famil){
this.famil =家庭;
}

public String getFamil(){
返回家庭;
}

public void setId(long id){
this.id = id;
}

公共长getId(){
返回ID;
}
}
====================



fileName:T1.xml
====================
<?xml version ="1.0" encoding ="utf-8"吗?
<!DOCTYPE休眠映射公共
-//休眠/休眠映射DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
< hibernate-mapping package ="model.database.dto">
<类名="T1"表="T1" dynamic-update ="true" dynamic-insert ="true">
< id name ="id" type ="long" column ="id">
< generator class ="increment"/>
</id>
<属性名称=名称" type ="java.lang.String"列=名称" insert ="true" update ="true"/>
<属性名称="famil" type ="java.lang.String" column ="famil" insert ="true" update ="true"/>
</class>
</hibernate-mapping>
====================



fileName:Connection.xml
====================
<?xml version ="1.0" encoding ="utf-8"?>
<!DOCTYPE休眠配置PUBLIC
-//休眠/休眠配置DTD//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<休眠配置>
< session-factory>
< property name ="hibernate.connection.driver_class"> oracle.jdbc.driver.OracleDriver</property>
<属性名称="hibernate.connection.url"> jdbc:oracle:thin:@javaserver:1521:xe</property>
< property name ="hibernate.connection.username"> root</property>
< property name ="hibernate.connection.password"> root</property>
< property name ="hibernate.connection.pool_size"> 10</property>
< property name ="show_sql"> true</property>
< property name ="dialect"> org.hibernate.dialect.GenericDialect</property>
< mapping resource ="model/database/dto/T1.xml"/>
</session-factory>
</hibernate-configuration>
====================



fileName:EN.java
====================
包资源;

公开课EN {
public String msg1 =插入您的名字";
public String msg2 =完成";
}
====================



fileName:FA.java
====================
包资源;

公共课FA {
public String msg1 =&#1606;&#1575;&#1605;&#1585;&#1575;&#1608;&#1575;رد &#1705;&#1606;&#1740;د;
public String msg2 =&#1575;&#1578;&#1605;&#1575;&#1605;";
}
====================
check my code and see that maplet is not like spring
note 1: resource bundle is class not .properties file
note 2: the maplet:DataTable is different
note 3: the startup method execute only once,exactly like init method in servlet
note N: discover more and let me to know :)


fileName : maplet.tld
=====================
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN"
"http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">
<taglib>
<tlibversion>1.0</tlibversion>
<jspversion>1.1</jspversion>
<shortname>maplet</shortname>
<tag>
<name>Service</name>
<tagclass>org.j2os.shine.maplet.tag.Service</tagclass>
<bodycontent>JSP</bodycontent>
<attribute>
<name>name</name>
</attribute>
</tag>
<tag>
<name>SecureService</name>
<tagclass>org.j2os.shine.maplet.tag.SecureService</tagclass>
<bodycontent>JSP</bodycontent>
<attribute>
<name>name</name>
</attribute>
</tag>
<tag>
<name>ErrorService</name>
<tagclass>org.j2os.shine.maplet.tag.ErrorService</tagclass>
<bodycontent>JSP</bodycontent>
</tag>
<tag>
<name>Resource</name>
<tagclass>org.j2os.shine.maplet.tag.Resource</tagclass>
<bodycontent>JSP</bodycontent>
<attribute>
<name>show</name>
</attribute>
<attribute>
<name>from</name>
</attribute>
</tag>
<tag>
<name>DataTable</name>
<tagclass>org.j2os.shine.maplet.tag.DataTable</tagclass>
<bodycontent>JSP</bodycontent>
</tag>
<tag>
<name>DataRow</name>
<tagclass>org.j2os.shine.maplet.tag.DataRow</tagclass>
<bodycontent>JSP</bodycontent>
</tag>
</taglib>
=====================



fileName : Resuest.jsp
=====================
<%@ taglib uri="/WEB-INF/maplet.tld" prefix="maplet"%>
<html>
<body>
<form name="myform" action="Core.exec">
<maplet:Resource show="msg1"/>
<input type="text" name="name"/>
<input type="submit" value="ClassicSendQuery"/>
</form>
</body>
</html>
=====================



fileName : Response.jsp
=====================
<%@ page contentType="text/html;charset=windows-1252"%>
<%@ taglib uri="/WEB-INF/maplet.tld" prefix="maplet"%>
<maplet:SecureService name="insert">

</maplet:SecureService>
<maplet:ErrorService>
<maplet:Resource show="msg2"/>
<maplet:DataTable>
<database-driver>oracle.jdbc.driver.OracleDriver</database-driver>
<database-url>jdbc:oracle:thin:@javaserver:1521:xe</database-url>
<database-username>iranair</database-username>
<database-password>iran123</database-password>
<database-query-sql>select * from users</database-query-sql>
<view-border>style="background-color: red; border: 1px solid"</view-border>
<view-header>style="background-color: green; border: 5px solid"</view-header>
<view-first-records>style="background-color: pink"</view-first-records>
<view-second-records>style="background-color: gray"</view-second-records>
</maplet:DataTable>
</maplet:ErrorService>
=====================



fileName : Core.java
=====================
package controller;

import model.database.dao.T1DAO;

import org.j2os.shine.maplet.Maplet;


public class Core extends Maplet {
private T1DAO t1;
public String name;

public void startup() throws Exception {
try {
t1 = new T1DAO("model/database/setting/Connection.xml");
System.out.println("DataBaseLogin");
} catch (Exception e) {
out.print(e);
}
}

public void request() throws Exception {
t1.insert(0, name, "none");
secureForward("Response.jsp", "insert");
}
}
=====================



fileName : T1DAO.java
=====================
package model.database.dao;

import model.database.dto.*;

import org.j2os.shine.jconnection.*;

import java.util.*;


public class T1DAO extends Hibernate {
public T1DAO(String address) throws Exception {
login(address);
}

public void insert(long id, String name, String famil)
throws Exception {
// if id!=0 => update
begin();

T1 object = new T1();
object.setId(id);
object.setName(name);
object.setFamil(famil);
saveOrUpdate(object);
commit();
}

public void delete() throws Exception {
begin();

Iterator i = getSQLQueryContent("select * from t1",
"model.database.dto.T1");

while (i.hasNext()) {
T1 object = (T1) i.next();
delete(object);
}

commit();
}

public void update() throws Exception {
begin();

Iterator i = getSQLQueryContent("select * from t1",
"model.database.dto.T1");

while (i.hasNext()) {
T1 object = (T1) i.next();
object.setFamil("bahador");
saveOrUpdate(object);
}

commit();
}

public void select() throws Exception {
begin();

Iterator i = getSQLQueryContent("select * from t1",
"model.database.dto.T1");

while (i.hasNext()) {
T1 object = (T1) i.next();
System.out.println(object.getName());
}

commit();
}
}
=====================



fileName : T1.java
=====================
package model.database.dto;
import org.j2os.shine.maplet.tag.DataTable;
public class T1 {
private long id;
private String name;
private String famil;

public void setName(String name) {
this.name = name;
}

public String getName() {
return name;
}

public void setFamil(String famil) {
this.famil = famil;
}

public String getFamil() {
return famil;
}

public void setId(long id) {
this.id = id;
}

public long getId() {
return id;
}
}
=====================



fileName : T1.xml
=====================
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="model.database.dto">
<class name="T1" table="T1" dynamic-update="true" dynamic-insert="true">
<id name="id" type="long" column="id">
<generator class="increment"/>
</id>
<property name="name" type="java.lang.String" column="name" insert="true" update="true"/>
<property name="famil" type="java.lang.String" column="famil" insert="true" update="true"/>
</class>
</hibernate-mapping>
=====================



fileName : Connection.xml
=====================
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="hibernate.connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<property name="hibernate.connection.url">jdbc:oracle:thin:@javaserver:1521:xe</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password">root</property>
<property name="hibernate.connection.pool_size">10</property>
<property name="show_sql">true</property>
<property name="dialect">org.hibernate.dialect.GenericDialect</property>
<mapping resource="model/database/dto/T1.xml"/>
</session-factory>
</hibernate-configuration>
=====================



fileName : EN.java
=====================
package resource;

public class EN {
public String msg1 = "insert your name";
public String msg2 = "finish";
}
=====================



fileName : FA.java
=====================
package resource;

public class FA {
public String msg1 = "&#1606;&#1575;&#1605; &#1585;&#1575; &#1608;&#1575;&#1585;&#1583; &#1705;&#1606;&#1740;&#1583;";
public String msg2 = "&#1575;&#1578;&#1605;&#1575;&#1605;";
}
=====================


这篇关于新的Java架构(JWMS)?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆