用jbuilder7 jboss3 vss开发EJB

来源:互联网 发布:linux ibus rime配置 编辑:程序博客网 时间:2024/05/17 06:30
<script type="text/javascript">google_ad_client = "pub-8800625213955058";/* 336x280, 创建于 07-11-21 */google_ad_slot = "0989131976";google_ad_width = 336;google_ad_height = 280;//</script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>

前言

在n年前java只是一种编程语言的理解,但现在的java非常强大,其含义也发生变化,我们可以理解为海陆空总集合的部队,其下属分支很多,如jsp、servlet、javabean、applet、ejb、jms、j2se(无线通讯用)、java2D、java3D……此处我们着重介绍java的web应用和开发,即jsp、servlet、javabean、applet、ejb等。其中applet是比较特殊的,它需要jre(java运行环境)的支持,并且对jre版本有要求,即applet是用jdk1.4开发的,那么jre也得1.4版本的。java的web开发需要视情况而定,如果只是编译jsp、servlet、javabean、applet等,只需要安装jdk(java开发工具包),如果加上ejb,就得jdk+j2ee。jdk、j2ee的安装程序到http://java.sun.com下载,安装后,配置的环境变量如下:1.CLASSPATH路径:.;C:/j2sdk1.4.0/lib/tools.jar;C:/j2ee/lib/j2ee.jar;说明:jdk版本是1.4.0的,安装在c盘,读者可根据安装的目录自定2.J2EE_HOME路径:c:/j2ee说明:j2ee的目录3.java_HOME路径:C:/j2sdk1.4.0说明:jdk的目录4.Path路径:C:/j2sdk1.4.0/lib/tools.jar;C:/j2sdk1.4.0/lib/dt.jar;C:/j2sdk1.4.0/bin;C:/j2sdk1.4.0/jre/bin;说明:如果Path变量有其他的值,请在后面续接此处的值在windows2000XXX中,开始->设置->控制面板->系统->高级->环境变量->系统变量中设置上述的值。在window9X中,上述的变量写在autoexec.bat文件中,格式是变量=值(回车)。测试jdk是否可用的方法是在c盘下新建一个Test.java文件,写入以下代码import java.util.Date;public class Test{//构造函数public Test(){}//显示当前时间的方法public String getDate(){Date date=new Date();return date.toString();}}在dos状态下,键入C:/>javac ./Test.java,编译通过后,同目录下新增Test.class,说明jdk成功安装。测试j2ee:在dos状态下,键入C:/j2ee/bin>j2ee -verbose,如果启动的过程中没有错误,不要关闭窗口,在IE浏览器中访问HTTP://localhost:8000,看到默认的j2ee主页,由此可看出j2ee除了自带工具包外还可以充当web服务器的角色。2. jbuilder、jboss、ms sql2000配置开发ejb应用系统,较好的开发发布的工具组合是websphere visualAge,两者都是ibm出品,协同工作性非常好,包括建模、版本控制、ejb开发、web发布等一体化,让程序员从底层的ejb开发中解放出来。但该组合的价格大概是十万人民币,不是每个客户都可以承受的,所以我们推荐另一个组合:jbuilder7 jboss3,数据库选择微软的sql server2000(简称sql2000)。部分介绍参考了刘晓巍(liuxiaowei2000@sina.com)的文章,并加入作者的见解。jboss每一个版本的差别很大,它不象传统的软件兼容性好。此例jboss的版本是jboss-3.0.4_tomcat-4.0.6,下载地址:http://prdownloads.sourceforge.net/jboss/jboss-3.0.4_tomcat-4.0.6.zip?download。数据库sql2000和jboss一起协同工作,有两种方式,一种是odbc-jdbc,一种是jdbc。许多web服务器自带odbc-jdbc驱动,无需下载,在控制面板->管理工具->数据源(odbc)中设置数据源即可使用,但如果要开发ejb,要使用jdbc驱动。很多公司提供ms sql2000的jdbc驱动(属第四种类型驱动,即纯java驱动),作者建议大家到微软的官方站点下载:http://www.microsoft.com/downloads/details.aspx?FamilyID=86212d54-8488-481d-b46b-af29bb18e1e5&DisplayLang=en。下载后安装,默认安装路径是C:/Program Files/Microsoft SQL Server 2000 Driver for JDBC,jdbc的驱动包在lib中,分别是msbase.jar、mssqlserver.jar、msutil.jar。jboss和jbuilder协同工作,需要下载并安装JBossOpenTool For JBuilder 7,下载地址:http://weisoft.myrice.com/download/JBuilder_JBossOT.jar。将下载的JbossOpenTool.jar拷贝至Jbuilder7的lib/ext目录下,重启动JBuilder。准备工作完成后,我们开始配置工作:一、在jboss中配置sql2000的JDBC驱动将msbase.jar, msutil.jar, mssqlserver.jar三个文件拷贝至Jboss的Server/default/lib目录下。将Jboss的docs/examples/jca目录下的mssql-service.xml, mssql-xa-service.xml文件拷贝至Jboss的server/default/deploy目录下,修改mssql-service.xml,/*…..*/中是说明文件,千万不要拷贝到该xml文件中。<config-property name="ConnectionURL" type="java.lang.String">jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=Northwind</config-property>/*------sql2000默认端口是1433,如果sql2000和jboss分装不同机器,则localhost要改成数据库的ip地址,数据库选择sql2000自带的Northwind数据库,你可以改成别的数据库------*/<config-property name="UserName" type="java.lang.String">sa</config-property>/*------数据库的用户名----*/<config-property name="Password" type="java.lang.String">csdn</config-property>/*------与数据库用户名对应的密码------*/修改mssql-xa-service.xml,ServerName、DatabaseName要和上个文件的一样。<config-property name="XADataSourceProperties" type="java.lang.String">ServerName=localhost;DatabaseName=Northwind;SelectMethod=cursor</config-property>

二、运行jboss

运行“jboss安装目录/bin/run.bat”,打开IE,在地址栏输入 http://localhost:8080,出现一些错误信息,大意是没有web应用程序等,读者可以先在“jboss安装目录/server/default/deploy”中新建一个简单的web应用程序,或者等待后面用jbuilder中发布一个web应用,如果需要新建,步骤如下:1、“jboss安装目录/server/default/deploy”中新建文件夹db_test.war,在db_test.war中新建index.jsp,内容如下:<%@page contentType="text/html"%> <%@ page import="java.sql.*, javax.sql.DataSource, javax.naming.InitialContext" %> <h3>Test sql2000 Database</h3> <% InitialContext ctx = new InitialContext(); DataSource ds = (DataSource) ctx.lookup("java:/MSSQLDS"); Connection conn = ds.getConnection(); Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery("SELECT * FROM Employees"); while ( rs.next() ) { out.println( rs.getInt(“EmployeeID”) "<br>"); }conn.close(); %>在db_test.war中新建文件夹WEB-INF,其中有两个文件jboss-web.xml和web.xml jboss-web.xml内容是<jboss-web> </jboss-web> web.xml内容是 <?xml version="1.0"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"><web-app></web-app>访问http://localhost:8080/db_test,成功后表示和数据库正常连接了。

三、配置JBuilder

1、启动jbuilder,Tools->Enterprise Setup,单击Database Drivers页上的Add, 在弹出的对话框中单击New,. 在弹出的对话框中填写Name为MS SQL Server JDBC, Location选择User Home,单击Add按钮,选择msbase.jar, msutil.jar, mssqlserver.jar,单击OK关闭当前对话框,可以看到MS SQL Server JDBC已被加入,单击OK关闭当前对话框,再次单击OK,配置完成。2、重起JBuilder 7,Tools->Configure Servers,选中左侧的JBoss 3.X,选中右边的Enable Server,填写:General页:Home Directiry = F:/jboss-3.0.4_tomcat-4.1.12 // <——JBoss的安装目录Main Class = org.jboss.MainVM Parameters =-ms64m -mx64m -Dprogram.name=run.batServer Parameters = -c defaultWorking Directory = F:/jboss-3.0.4_tomcat-4.1.12/binCustom页:JBoss Installation Directory = F:/jboss-3.0.4_tomcat-4.1.12 // <——JBoss的安装目录Tomcat 4X JBuilder Installation Directory = F:/JBuilder7/jakarta-tomcat-4.0.3 //<——Tomcat的安装目录JBoss Configuration to Use = default单击OK。3、Tools—>Configure Libraries, 在弹出的对话框中单击New按钮,在Name栏中填写JBoss Libs,单击Add按钮,加入JBoss目录下/Server/default/lib目录下的javax.servlet.jar和jboss-j2ee.jar文件,单击OK。4、Tools—>Database Pilot,新打开的“Database Pilot”窗口是察看数据库的,相当于数据库服务器的客户端,选择File—>New…,Driver=com.microsoft.jdbc.sqlserver.SQLServerDriverURL=jdbc:microsoft:sqlserver://localhost:1433;DatabaseName= Northwind单击OK,在左边窗口出现我们新建的数据库连接,双击,输入用户名密码就可以浏览数据库Northwind中的数据表。注意此处URL的写法要刚刚配置的jboss的xml文件一样。如果读者没法连上数据库,可以把sql2000的jdbc驱动msbase.jar、mssqlserver.jar、msutil.jar拷贝到“jbuilder安装目录/lib”中。

3. 在jbuilder中开发ejb

一、新建一个Project:选择File->New Project,在Name栏填写JBossDemo,在Directory栏输入保存路径,其它不变,单击Finsih。选择Project->Project properties,在Path页的Required Libraries中单击Add按钮,在弹出的对话框中选择我们刚才建立的JBoss Libs,单击OK。选择Server页,选中Single Server For All Service in Project,在下拉列表中选择JBoss 3.X,单击OK。二、新建一个EJB Module:选择File->New,在弹出的对话框中选择Enterprise页中的EJB Module图标,单击OK。在弹出的对话框中Name栏填写JBossDemoModule,其它不变,单击OK。三、新建两个CMP:右键单击左下角的DataSource,选择Import Schema From Database,在弹出的对话框“Database Schema Provider”中选择“Choose Existing Connection”,在弹出的“Select Database”中选择我们刚建立的“jdbc:microsoft:sqlserver…”,单击ok,在“Database Schema Provider”中,按如下信息填写,其他不变:UserName:saPassword:csdnJNDI Name:java:/MSSQLDSExtended properties:DatabaseName=Northwind勾选All Schemas和Views项单击OK。成功的话,在DataSource下面将出现一个java:/MSSQLDS项,单击其左侧的 号,将其展开,将会看到表名。右键单击Employees表,选择CMP 2.0 Entity Bean, 同样右键单击Orders表,选择CMP 2.0 Entity Bean。四、建立表关联的关系:右键单击右侧的代表Employees表的矩形,选择Add->Relationship后,单击指向代表Oderss表的矩形后,将会看到一条线把两个矩形连接起来了,同时Employees表多了一个orders字段。单击右下角的JBossCMP-JDBC页,按如下填写,其它不变:datasource = MSSQLDSdatasource-mapping = Hypersonic SQL选择File->Save All保存项目。选择Project->“Make Project JbossDemo.jpx”编译项目。五、建立Session Bean:在右边的空白处单击右键,选择Create EJB-> Session Bean, 将Bean Name改为GetData,右键单击代表这个Session Bean的矩形,选择Add->Method,按如下填写:Method Name = GetOrdersByEmployeesIDReturn Type = VectorInput Parameters = Integer IDInterface = Remote六、编写代码:右键单击代表GetData的矩形,选择 View Bean Source。在开始处加入以下语句:import java.util.*;import javax.naming.*;按如下填写GetOrdersByEmployeesID:public Vector GetOrdersByEmployeesID(Integer ID){Vector result = new Vector();result.add(ID);try{Context ctx = new InitialContext();EmployeesHome home = (EmployeesHome)ctx.lookup("Employees");Employees emp = home.findByPrimaryKey(ID);Collection orders = emp.getOrders();Iterator it = orders.iterator();while(it.hasNext()){Orders order = (Orders)it.next();result.add(order.getOrderID());}}catch (Exception ex){System.out.println("ShowOrdersByEmployeesID() error : " ex.getMessage());}return result;}七、建立Servlet:选择File->New,在弹出的对话框中选择Web页中的Servlet图标,单击OK。在弹出的对话框中Class Name栏填写FormServlet,其它不变,单击Next,选中doGet()项,单击Next,此处的Name和URL pattern是有讲究的,它说明该servlet的web位置和web显示名称,其它不变,单击Finish。按如下填写FormServlet.java的doGet()函数:public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{response.setContentType(CONTENT_TYPE);PrintWriter out = response.getWriter();out.println("<h1>Enter the Employees ID</h1>");out.println("<strong>Enter Employees ID in the input fields below.</strong>");out.println("<br><br>");out.println("<form action=showordersservlet method=POST>");out.println("Name<br>");out.println("<input type=text name=EmployeeID value=/"/" size=20 maxlength=150>");out.println("<br><br><br><br>");out.print("<input type=submit value=Submit>");out.println("</form>");}再次选择File->New,在弹出的对话框中选择Web页中的Servlet图标,单击OK。在弹出的对话框中Class Name栏填写ShowOrdersServlet,其它不变,单击Next,选中doPost()项,其它不变,单击Next,单击Next,单击Add Parameter,按如下填写:Name = EmployeeIDType = StringDesc = employee’s IDVariable = employeeIDDefault = 1单击Next,单击Finish。按如下填写ShowOrdersServlet.java的doPost()函数:别忘了在开始处加入以下语句:import java.util.*;import javax.naming.*;public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{String employeesID = request.getParameter("EmployeeID");if (employeesID == null){employeesID = "1";}response.setContentType(CONTENT_TYPE);PrintWriter out = response.getWriter();Vector orders = new Vector();try{Context ctx = new InitialContext();GetDataHome home = (GetDataHome)ctx.lookup("GetData");GetData getData = home.create();orders = getData.GetOrdersByEmployeesID(new Integer(employeesID));}catch (Exception ex){System.out.println("GetOrdersServlet doPost() error :" ex.getMessage());}Iterator it = orders.iterator();out.println("<html>");out.println("<head><title>ShowOrdersServlet</title></head>");out.println("<body>");out.println("<p>Orders with EmployeesID " employeesID "</p>");while(it.hasNext()){out.println("<p>OrderID = " it.next().toString() "</p>");}out.println("<h1>Order Count = " orders.size() "</h1>");out.println("</body></html>");}八、建立EAR文件:右键单击左侧目录树中的的<Default WebApp>,选择Properties。将WebApp页的Name填写为JBossDemo,将Dependencies页中的所有项设置成Exclude All,单击OK。选择File->New,在弹出的对话框中选择Enterprise页中的EAR图标,单击OK。第一页不变,单击Next,选中JBossDemoModule,单击Next,单击Next,单击Next,选中JBossDemo,单击Finish。选择File->Save All保存项目。选择Project->“Rebuild Project JBossDemo.jpx”编译项目。九、发布整个应用程序:右键单击左侧目录树中的的JBossDemo.eargrp,选择Deploy Options for “JBossDemo.ear” —>Deploy,发布应用程序。十、测试应用程序:打开IE,在地址栏输入 http://localhost:8080/JBossDemo/formservlet,回车,在编辑框中输入3,单击“submit”即可。

4. 在jbuilder中使用vss进行团队开发

部分参考网上“CN-JAVA论坛->CASE工具->VSS与Jbuilder5/6进行代码控制的说明书”。一、vss安装如果你的电脑装有vss,但版本的不是vss6.0,那你可以卸装(服务器版本)或者清理注册表记录(客户端版本),开始->运行->regedit.exe,清除 HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/SourceSafe 中的所有记录。vss6.0是微软Visual Studio 6.0中的一员,你可以从中安装,作者安装的是vss6.0独立版,运行vss_ss/setup.exe,安装成功后重启电脑。二、vss服务器端设置运行“开始->程序->Microsoft Visual Studio 6.0-> Microsoft Visual SourceSafe-> Visual SourceSafe 6.0 Admin”,用户名Admin,密码默认为空,在“Visual SourceSafe Administrator”中,Users->Change Password,修改管理员密码,单击ok。vss6.0默认的数据库名是VSS,我们创建新的数据库Tools->Create Database…,选择该数据库放置的位置,例如D:/VSSDB,勾选New 6.0 database…,单击ok。Users->Open SourceSafe Database,双击vssdb,此时我们操作的是vssdb数据库,修改管理员密码并增加该数据库的使用用户,例如Users->Add User…,User name:cjw,Password:1234,单击ok。选择tools->Options,在弹出窗口选择 Project Security 标签,选择 enable project security 复选框,单击ok。选择tools->Rights by Project,在弹出窗口设置用户的权限,设置完成之后,单击close。三、在vss数据库中新建项目运行“开始->程序->Microsoft Visual Studio 6.0-> Microsoft Visual SourceSafe-> Microsoft Visual SourceSafe 6.0 ”,选择File->Open SourceSafe Database…,双击我们刚建立的数据库。vss允许以任何的层次结构存储组织项目,在一个数据库中,可以创建多个项目,选择File->Create Project…,创建一个项目,例如daxt。四、jbuilder中设置vss打开Jbuilder,打开我们建立的JbossDemo工程,选择Team->Select Project VCS,选择Visual SourceSafe,单击ok。选择Team->Place Project into VSS,在弹出窗口中,填写“vss安装目录/win32”,单击next,填写刚建立数据源的目录路径,单击next,填写admin的用户名和密码,单击next,选择想置入vss中的目录或文件,单击next、next,填写数据源的位置(一般情况下,不填也可以),单击finish,等待jbuilder把项目加入vss中,根据对话框的内容知道操作是否成功。 五、项目开发人员获得VSS上的项目工程vss6.0服务器安装后,项目开发人员运行vss服务器中“vss安装目录/NETSETUP.EXE”,根据提示安装。或者把vss服务器中“vss安装目录/win32/SSEXP.EXE”的快捷方式放到本机,直接运行即可。以下部分作者没有非常详细测试过,请读者见谅,若有问题,请发email:peiwen_lin@163.net。访问服务器共享出来的VSS数据源目录和jbuilder工程,把它们映射到自己的电脑上。运行Jbuilder,打开Demo工程。选择Team->Select Project VCS,选择Visual SourceSafe,单击ok。选择Team->Pull Project from VSS,选择映射的服务器上的VSS数据源目录,单击next,填写自己的用户名称和密码,单击next,选择数据源内合适的项目工程,单击next,选择一个空目录作为新项目的存放地点,单击finish。 根据对话框的内容知道操作是否成功。工程check in后,选择Team->Configure Visual SourceSaft,在弹出式窗口中可以重新设定vss的参数。六、在jbuilder中如何使用vss在jbuilder中打开JBossDemo工程。通过VSS进行代码控制,需要经常得到最新的项目代码文档,选择Team->Commit Browser,在弹出窗口中可以得到最新代码版本与本地版本之间的变更列表,单击Commit使本地的版本得到更新(注:可选择变更记录的action项选择对此变更的操作)。修改文件前,要把文件check out出来,在jbuilder左边工程窗口中右击需要修改的文件,选择 Visual SourceSafe->Check out “…...”,文件修改完成后,用同样的方法把文件check in 进去,别人才能访问修改此文件。添加文件,开发人员在工程内添加了文件之后,需要把它加入到 VSS,右击需要增加的文件,选择 Visual SourceSafe->Add…。 删除文件,把需要删除的文件chechout 出来,右击文件,选择Delete “…”。进行此操作时,可能出现VSS操作停顿的现象,解决方法:(1)激活Windows2000的任务管理窗口,把进程 ss.exe 干掉;(2)通过 VSS 的 Explorer 窗口把没有清除的文件删掉。

5. 结束语

作者刚刚涉足EJB,不免学识单薄,此篇文章若有误漏,请读者们多多包涵。写这篇文章的目的有两个:(1)配置过程遇到很多问题,所以要把正确的过程写出来,避免别人象我一样浪费时间;(2)调配服务器过程中,我从网上获得很多有用的信息,所以我要反馈信息,与别人共享信息资源。
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 毛刷加工厂 猪毛刷厂 毛刷型号 硬毛刷 剃毛刷 清洁毛刷 梳毛刷 毛刷长 电脑毛刷 鱼池过滤毛刷 洗车毛刷 大毛刷 医用毛刷 滚毛刷 毛刷规格 毛刷轮 输送毛刷 细毛刷 除毛刷 猪鬃毛刷 刷毛刷 鱼池毛刷 毛刷生产设备 猪毛刷 软毛刷 粘毛刷 吸尘器毛刷 毛刷头 植毛刷厂家 毛刷辊厂家 机器毛刷 生产毛刷 什么是毛刷 马毛刷 防静电毛刷 长柄毛刷 毛刺 冠状沟有小毛刺 毛坦厂中学入学条件 安徽毛坦厂中学 毛坦厂中学在哪里