当前位置: 技术问答>java相关
用JAVA做管理软件,三层结构,给点儿建议吧!高分送上。
来源: 互联网 发布时间:2015-06-26
本文导语: 用Weblogic服务器,oracle数据库,client不用Web方式而是用Application实现,这样性能和可行性有多大?如果可行,Weblogic应该怎么用好呢,是用EJB吗?还是有什么别的更好的方法? 领导说最多只用一些Session Bean,最好不要...
用Weblogic服务器,oracle数据库,client不用Web方式而是用Application实现,这样性能和可行性有多大?如果可行,Weblogic应该怎么用好呢,是用EJB吗?还是有什么别的更好的方法?
领导说最多只用一些Session Bean,最好不要使用Entity Bean,我不太理解,我想那要是用JMS实现server与client的通讯是不是也是一个解决方案呢?但是我不知道性能上怎么样?
哪位高手有过用Weblogic服务器开发过Application实现client的程序(用GUI做界面)呢?给点建议吧!
领导说最多只用一些Session Bean,最好不要使用Entity Bean,我不太理解,我想那要是用JMS实现server与client的通讯是不是也是一个解决方案呢?但是我不知道性能上怎么样?
哪位高手有过用Weblogic服务器开发过Application实现client的程序(用GUI做界面)呢?给点建议吧!
|
一切后果怎想象,如常望你但觉冰凉!!!
我感觉如果采用传统的C/S结构,或者说接近B/S结构,你用EJB有必要吗?
管理软件,它的BL很复杂吗?
个人认为: 如下组合!
Rich Client,Swing组件!
JavaBeans,实现BL,封装JDBC逻辑!
需要Weblogic ???感觉没必要!
我感觉如果采用传统的C/S结构,或者说接近B/S结构,你用EJB有必要吗?
管理软件,它的BL很复杂吗?
个人认为: 如下组合!
Rich Client,Swing组件!
JavaBeans,实现BL,封装JDBC逻辑!
需要Weblogic ???感觉没必要!
|
Java Web Start
你可以理解为客户端Application的下载工具
至于速度问题,也就是第一次下载的时候比较慢,以后就不用下载了!
JavaApplication 通过Http的方式访问服务器端的Servlet,
Servlet访问EJB,EJB访问DB,这种结构我觉得还可以。
你可以理解为客户端Application的下载工具
至于速度问题,也就是第一次下载的时候比较慢,以后就不用下载了!
JavaApplication 通过Http的方式访问服务器端的Servlet,
Servlet访问EJB,EJB访问DB,这种结构我觉得还可以。
|
Java Web Start
它为你实现代码的自动更新(通过http),运行环境受到Web Start的控制,运行机制类似于Applet。具体应用程序和服务器怎样通讯,Web Start是无法控制的。
它为你实现代码的自动更新(通过http),运行环境受到Web Start的控制,运行机制类似于Applet。具体应用程序和服务器怎样通讯,Web Start是无法控制的。
|
建议用web方式吧,用java application太慢。
建议关键应用用EJB,但是不要用entity bean,因为太慢。
建议关键应用用EJB,但是不要用entity bean,因为太慢。
|
1.用application做客户端的方式并不可取,不大的效率上的提高,带来维护上的麻烦。现在毕竟到处都在走集中。
2.EB的效率一直都使大家怀疑,所以还是不要用。
3.JMS可靠性是没问题的。效率也可以,用法也很多,看你在哪里需要,需要实现什么样的功能。
2.EB的效率一直都使大家怀疑,所以还是不要用。
3.JMS可靠性是没问题的。效率也可以,用法也很多,看你在哪里需要,需要实现什么样的功能。
|
EJB效率不高,占用资源。
JMS感觉用下来瞒好
JMS感觉用下来瞒好
|
可行性,在client端你可以用类似下面的方法调用ejb,不用心虚
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.rmi.PortableRemoteObject;
import java.math.BigDecimal;
public class ConverterClient {
public static void main(String[] args) {
try {
Context initial = new InitialContext();
Object objref = initial.lookup
("java:comp/env/ejb/SimpleConverter");
ConverterHome home =
(ConverterHome)PortableRemoteObject.narrow(objref,
ConverterHome.class);
Converter currencyConverter = home.create();
BigDecimal param = new BigDecimal ("100.00");
BigDecimal amount =
currencyConverter.dollarToYen(param);
System.out.println(amount);
amount = currencyConverter.yenToEuro(param);
System.out.println(amount);
System.exit(0);
} catch (Exception ex) {
System.err.println("Caught an unexpected exception!");
ex.printStackTrace();
}
}
}
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.rmi.PortableRemoteObject;
import java.math.BigDecimal;
public class ConverterClient {
public static void main(String[] args) {
try {
Context initial = new InitialContext();
Object objref = initial.lookup
("java:comp/env/ejb/SimpleConverter");
ConverterHome home =
(ConverterHome)PortableRemoteObject.narrow(objref,
ConverterHome.class);
Converter currencyConverter = home.create();
BigDecimal param = new BigDecimal ("100.00");
BigDecimal amount =
currencyConverter.dollarToYen(param);
System.out.println(amount);
amount = currencyConverter.yenToEuro(param);
System.out.println(amount);
System.exit(0);
} catch (Exception ex) {
System.err.println("Caught an unexpected exception!");
ex.printStackTrace();
}
}
}
|
帮你up
|
就是实现application的远程调用。
|
建議client用DELPHI,VB写,中间件用CORBA