图解eclipse+myelcipse开发EJB

   在开发ejb之前,我们先得配置好服务器,我使用的是Weblogic9.0中文版,关于Weblogic9.0配置请看我的另一片文章: 配置Weblogic9.0
   
    首先需要配置好eclipse。我这里主要说明weblogic的配置。
     ejb19.jpg

    注意JDK选择JDK5.0的版本。
   
    顺便将weblogic8的配置也贴上来,供大家比较参考
    ejb18.jpg
   
    注意weblogic8的JDK版本必须是JDK1.4。
   
    接下来就开始我们的开发了。

ejb1.jpg

ejb2.jpg

ejb3.jpg

ejb4.jpg

ejb5.jpg

下面就是SessionBean的代码
30
<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--> 1 package com.ejb;
 2 
 3 import java.rmi.RemoteException;
 4 
 5 import javax.ejb.EJBException;
 6 import javax.ejb.SessionBean;
 7 import javax.ejb.SessionContext;
 8 
 9 /**
10  * XDoclet-based session bean.  The class must be declared
11  * public according to the EJB specification.
12  *
13  * To generate the EJB related files to this EJB:
14  *        - Add Standard EJB module to XDoclet project properties
15  *        - Customize XDoclet configuration for your appserver
16  *        - Run XDoclet
17  *
18  * Below are the xdoclet-related tags needed for this EJB.
19  * 
20  * @ejb.bean name="HelloWorld"
21  *           display-name="Name for HelloWorld"
22  *           description="Description for HelloWorld"
23  *           jndi-name="ejb/HelloWorld"
24  *           type="Stateless"
25  *           view-type="remote"
26  */
27 public class HelloWorld implements SessionBean {
28 
29     /** The session context */
30     private SessionContext context;
31 
32     public HelloWorld() {
33         super();
34         // TODO 自动生成构造函数存根
35     }
36 
37     /**
38      * Set the associated session context. The container calls this method 
39      * after the instance creation.
40      * 
41      * The enterprise bean instance should store the reference to the context 
42      * object in an instance variable.
43      * 
44      * This method is called with no transaction context. 
45      * 
46      * @throws EJBException Thrown if method fails due to system-level error.
47      */
48     public void setSessionContext(SessionContext newContext)
49         throws EJBException {
50         context = newContext;
51     }
52 
53     public void ejbRemove() throws EJBException, RemoteException {
54         // TODO 自动生成方法存根
55 
56     }
57 
58     public void ejbActivate() throws EJBException, RemoteException {
59         // TODO 自动生成方法存根
60 
61     }
62 
63     public void ejbPassivate() throws EJBException, RemoteException {
64         // TODO 自动生成方法存根
65 
66     }
67 
68     /**
69      * An example business method
70      *
71      * @ejb.interface-method view-type = "remote"
72      * 
73      * @throws EJBException Thrown if method fails due to system-level error.
74      */
75     public String hello() throws EJBException {
76         // rename and start putting your business logic here
77         return new String("HelloEJBWorld!");
78     }
79 
80 }
81 

其实就是修改了其中的一个方法:
<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />-->  1  /**
 2       * An example business method
 3       *
 4       * @ejb.interface-method view-type = "remote"
 5       * 
 6       *  @throws  EJBException Thrown if method fails due to system-level error.
 7        */
 8       public  String hello()  throws  EJBException {
 9           //  rename and start putting your business logic here
10           return   new  String( " HelloEJBWorld! " );
11      }
注意:代码中的解释文字不要删除,因为XDoclet需要。

配置属性
ejb6.jpg

添加weblogic.jar。我的路径是:bea\weblogic90\server\lib\weblogic.jar
ejb16.jpg

ejb7.jpg

ejb8.jpg

ejb9.jpg

ejb10.jpg

ejb11.jpg

ejb12.jpg

ejb13.jpg

ejb14.jpg

ejb15.jpg

就下来写EJBTest类:
<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />-->  1  package  com;
 2 
 3  import  java.rmi.RemoteException;
 4  import  java.util.Properties;
 5 
 6  import  javax.ejb.CreateException;
 7  import  javax.naming.Context;
 8  import  javax.naming.InitialContext;
 9  import  javax.naming.NamingException;
10 
11  import  com.interfaces.HelloWorld;
12  import  com.interfaces.HelloWorldHome;
13 
14  public   class  EJBTest {
15 
16       /**
17       *  @param  args
18        */
19       public   static   void  main(String[] args) {
20           //  TODO 自动生成方法存根
21          Properties properties = new  Properties();
22          properties.setProperty(Context.INITIAL_CONTEXT_FACTORY, " weblogic.jndi.WLInitialContextFactory " );
23          properties.setProperty(Context.PROVIDER_URL, " t3://localhost:7001 " );
24          
25          Context context;
26           try  {
27              context  =   new  InitialContext(properties);
28              HelloWorldHome hwh = (HelloWorldHome)context.lookup( " ejb/HelloWorld " );
29              HelloWorld hw = hwh.create();
30              String s = hw.hello();
31              System.out.println(s);
32          }  catch  (NamingException e) {
33               //  TODO 自动生成 catch 块
34              e.printStackTrace();
35          }  catch  (RemoteException e) {
36               //  TODO 自动生成 catch 块
37              e.printStackTrace();
38          }  catch  (CreateException e) {
39               //  TODO 自动生成 catch 块
40              e.printStackTrace();
41          }
42          
43      }
44 
45 
46  }
47 


最后就是看结果了,先启动weblogic,然后运行EJBTest程序。

ejb17.jpg
在使用Python来安装geopandas包时,由于geopandas依赖于几个其他的Python库(如GDAL, Fiona, Pyproj, Shapely等),因此安装过程可能需要一些额外的步骤。以下是一个基本的安装指南,适用于大多数用户: 使用pip安装 确保Python和pip已安装: 首先,确保你的计算机上已安装了Python和pip。pip是Python的包管理工具,用于安装和管理Python包。 安装依赖库: 由于geopandas依赖于GDAL, Fiona, Pyproj, Shapely等库,你可能需要先安装这些库。通常,你可以通过pip直接安装这些库,但有时候可能需要从其他源下载预编译的二进制包(wheel文件),特别是GDAL和Fiona,因为它们可能包含一些系统级的依赖。 bash pip install GDAL Fiona Pyproj Shapely 注意:在某些系统上,直接使用pip安装GDAL和Fiona可能会遇到问题,因为它们需要编译一些C/C++代码。如果遇到问题,你可以考虑使用conda(一个Python包、依赖和环境管理器)来安装这些库,或者从Unofficial Windows Binaries for Python Extension Packages这样的网站下载预编译的wheel文件。 安装geopandas: 在安装了所有依赖库之后,你可以使用pip来安装geopandas。 bash pip install geopandas 使用conda安装 如果你正在使用conda作为你的Python包管理器,那么安装geopandas和它的依赖可能会更简单一些。 创建一个新的conda环境(可选,但推荐): bash conda create -n geoenv python=3.x anaconda conda activate geoenv 其中3.x是你希望使用的Python版本。 安装geopandas: 使用conda-forge频道来安装geopandas,因为它提供了许多地理空间相关的包。 bash conda install -c conda-forge geopandas 这条命令会自动安装geopandas及其所有依赖。 注意事项 如果你在安装过程中遇到任何问题,比如编译错误或依赖问题,请检查你的Python版本和pip/conda的版本是否是最新的,或者尝试在不同的环境中安装。 某些库(如GDAL)可能需要额外的系统级依赖,如地理空间库(如PROJ和GEOS)。这些依赖可能需要单独安装,具体取决于你的操作系统。 如果你在Windows上遇到问题,并且pip安装失败,尝试从Unofficial Windows Binaries for Python Extension Packages网站下载相应的wheel文件,并使用pip进行安装。 脚本示例 虽然你的问题主要是关于如何安装geopandas,但如果你想要一个Python脚本来重命名文件夹下的文件,在原始名字前面加上字符串"geopandas",以下是一个简单的示例: python import os # 指定文件夹路径 folder_path = 'path/to/your/folder' # 遍历文件夹中的文件 for filename in os.listdir(folder_path): # 构造原始文件路径 old_file_path = os.path.join(folder_path, filename) # 构造新文件名 new_filename = 'geopandas_' + filename # 构造新文件路径 new_file_path = os.path.join(folder_path, new_filename) # 重命名文件 os.rename(old_file_path, new_file_path) print(f'Renamed "{filename}" to "{new_filename}"') 请确保将'path/to/your/folder'替换为你想要重命名文件的实际文件夹路径。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值