如何下载ECARUCA数据库!

如何下载ECARUCA数据库!,第1张

如何修改ofbiz的默认数据库呢,我们这里拿mysql来举例子,

ofbiz自带的数据库是Derby,这是一种小型的适合于测试系统的数据库,但不适合在产品级系统中使用,所以通常我们需要将ofbiz数据库迁移到其它数据库上。

下面列出derby如何迁移至mysql的步骤,向大家讲述数据库迁移过程,迁移至其它数据库的过程类似

第一步:修改entityenginexml文件

该文件的位置是

ofbiz_home\framework\entity\config\entityenginexml

首先,在该文件的找到以下代码:

<delegator name="default" entity-model-reader="main" entity-group-reader="main" entity-eca-reader="main" distributed-cache-clear-enabled="false">

<group-map group-name="orgofbiz" datasource-name="localhsql"/>

<group-map group-name="orgofbizodbc" datasource-name="localderbyodbc"/>

</delegator>

将以上代码中<group-map group-name="orgofbiz" datasource-name="localhsql"/>

改成<group-map group-name="orgofbiz" datasource-name="localmysql"/>

其次,在文件的250行左右找到如下代码:

<datasource name="localmysql"

</datasource>

将其中的

jdbc-username="opentaps"

jdbc-password="opentaps-password"

改成数据库的用户名和密码,在该例中,我们保持该用户名和密码不变,即用该用户名和密码在数据库中创建用户

至此,对ofbiz框架的改造完成,还有一点就是要把mysql的jdbc驱动包放在%ofbiz_home%\framework\entity\lib\jdbc目录下。

第二步:配置mysql

mysql -u root -h 127001 -p //登录mysql,然后会提示输入密码

mysql> create database opentaps; //创建数据库opentaps

mysql> create user opentaps; //创建用户opentaps,对应entityenginexml里的用户

mysql> grant all privileges on opentaps to 'opentaps'@'localhost' identified by 'opentaps-password' with grant option; //授予opentaps用户访问opentaps数据库的所有权限,密码设为opentaps-password

第三步:运行ant run-install-seed创建种子数据

进入opentaps根目录后执行命令ant run-install-seed即可,然后ofbiz的实体引擎会根据entityenginexml里设置的默认数据库将种子数据加载到指定的数据库mysql里,这是一个比较漫长的过程,因为要创建732张表,以及表间的关系,大概需要7分钟左右build过程结束后,你可以进入mysql察看opentaps数据库,你会发现多了732多张表

在这里我谈谈我在学习j2ee流程,并谈到在此过程中领会的经验和教训。以便后来者少走弯路。

Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE。这三块相互补充,应用范围不同。

J2SE就是Java2的标准版,主要用于桌面应用软件的编程;

J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;

J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。

先学习j2se

要学习j2ee就要先学习j2se,刚开始学习j2se先建议不要使用IDE,然后渐渐的过渡到使用IDE开发,毕竟用它方便嘛。学习j2se推荐三本书,《java2核心技术一二卷》,《java编程思想》,《java模式》。其中《java编程思想》要研读,精读。这一段时间是基本功学习,时间会很长,也可能很短,这要看学习者自身水平而定。

不要被IDE纠缠

在学习java和j2ee过程中,你会遇到五花八门的IDE,不要被他们迷惑,学JAVA的时候,要学语言本身的东西,不要太在意IDE的附加功能,JAVA编程在不同IDE之间的转换是很容易的,过于的在意IDE的功能反而容易耽误对语言本身的理解。目前流行的IDE有jbuilder,eclipse和eclipse的加强版WSAD。用好其中一个就可以了,推荐从eclipse入手j2ee。因为Jbuilder更适合于写j2se程序。

选择和学习服务器使用配置

当你有了j2se和IDE的经验时,可以开始j2ee的学习了,web服务器:tomcat,勿庸置疑,tomcat为学习web服务首选。而应用服务器目前主要有三个:jboss、weblogic、websphere。有很多项目开始采用jboss,并且有大量的公司开始做websphere或weblogic向jboss应用服务器的移植(节省成本),这里要说的是,学习tomcat和jboss我认为是首选,也是最容易上手的。学习服务器使用配置最好去询问有经验的人(有条件的话),因为他们或许一句话就能解决问题,你自己上网摸索可能要一两天(我就干过这种傻事),我们应该把主要时间放在学习原理和理论上,一项特定技术的使用永远代替不了一个人的知识和学问。

学习web知识

如果你是在做电子商务网站等时,你可能要充当几个角色,这是你还要学习:

html,可能要用到dreamwave等IDE。

Javascript,学会简单的数据校验,数据联动显示等等

J2eeAPI学习

学习j2eeAPI和学习服务器应该是一个迭代的过程。

先学习jsp和servlet编程,这方面的书很多,我建立看oreilly公司的两本《jsp设计》和《java servlet编程》,oreilly出的书总是那本优秀,不得不佩服。

学习jdbc数据库编程,j2ee项目大多都是MIS系统,访问数据库是核心。这本应属于j2se学习中,这里拿出来强调一下。

学习jndi api,它和学习ejb可以结合起来。

学习ejb api,推荐书《精通ejb》

经过上面的这些的学习,大概可以对付一般的应用了。

有人说跟着sun公司的《j2ee tutorial》一路学下来,当然也可以。

学习ejb设计模式和看代码(最重要)

设计模式是练内功,其重要性可以这么说吧,如果你不会用设计模式的话,你将写出一堆使用了ejb的垃圾,有慢又是一堆bug,其结果不如不用ejb实现(ejb不等于j2ee)

无论学习什么语言,都应该看大量代码,你看的代码量不到一定数量,是学不好j2ee的

目前有很多开源的工程可以作为教材:

jive论坛

petstore sun公司

dune sun公司

等等,研读一个,并把它用到自己的工程中来。

J2ee其他学习

当你渐渐对j2ee了解到一定深度时,你要开始关注当前领域中的一些技术变化,J2ee是一块百家争鸣的领域,大家都在这里提出自己的解决方案,例如structs,hiberate,ofbiz等等,学习这些东西要你的项目和目标而定,预先补充一下未尝不可,但不用涉及太深,毕竟学习原理和理论是最最重要的事。

目前常见j2eeAPI

JavaServer Pages(JSP)技术12

Java Servlet技术23

JDBC API 20

Java XML处理API(JAXP)11

Enterprise JavaBeans技术20

Java消息服务(JMS)10

Java命名目录接口(JNDI)12

Java事务API(JTA) 10

JavaMail API 12

JavaBeans激活架构(JAF)10

J2EE连接器体系结构(JCA)10

Java认证和授权服务(JAAS)10

学习上面的某些API要以你的项目而定,了解所有他们总之是有好处的

上面印证了大家说的一句话,java语言本身不难学,但是技术太多,所以学java很费劲。

从上面看来你应该是一个做技术的吧,我身边有很多EBS的技术顾问都转走了,或者跳槽了,因为这个太容易接触到天花板了。。。毕竟EBS的技术是成型的平台。。并且EBS也会慢慢淘汰了虽然近几年不会,但这是必然的。。。

ETL现在一直很火,并且未来也是趋势。。。

如果想从事数据库就得做DBA,想做非java技术其实我不太能理解,难道你想做php或net?这两个工资必然不如做JAVA,或者EBS这样的信息系统工资高来着。。。毕竟不是技术大牛。。。

所以做ETL还阔以,做EBS至少你有基础几年内不愁吃饭,而且工资也可观,做数据库的话不知道你基础怎样。。。

好的学习方法对于你的学习至关重要,对于每一个刚开始学习Java的程序员新人来说,都希望有一种快速学习的方法,漫无目的和长时间的学习很容易消耗你的信息,最后学的混乱,也没有实质性的收获,以至于学习到最后越来越焦虑。

初学者想要快速学习Java技术的心情大家都可以理解,但是有一句话:欲速则不达。盲目的追求快并不能达到理想的学习效果,问题来了,那么作为Java新人如何快速的学习Java编程呢?

新人学习进步非常缓慢,是因为很多的Java难题自己都没有办法解决,身边没有懂技术的人,所以只能一直在网上苦苦查找答案,就算你找到了解答,但是也不一定能够保证是对的。

初学者如何快速学Java

方法1:Java初学者可以加入一个比较好的Java学习交流群,或者论坛,群不需要加的太多,在群中提出问题,有时候其他人的只言片语也可以帮助你走出困境。多与技术好的人交流沟通,你的技术才能变得更好。比如我的这个技术交流群

我创建的Java自学交流裙,前面输入是:926中间是:452最后连起来:303,需要java最新录制视频教程及学习路线,开发工具,jar包。源码等都可以找我,有遇见任何问题都可以随时来交流,只有不断的碰撞和交流,我们才能发现解决自己的问题,以此取长补短。

方法2:对于初学者来说快速学Java,还有一个有效的办法就是收集有用代码和工具,一些代码是可以重复使用的,随着你Java代码的练习越来越多,你对Java代码编写越来越得心应手,你就会发现你之前搜集的有用的代码和工具,大大节省了你敲代码的时间,比如工具类的:StringUtils(字符串工具),DBUtils(数据库工具)等等。

方法3:养成良好的记录笔记的习惯,因为在快速学习Java的过程中,记录显得尤为重要,比如在Java学习中,把你碰到的问题,或者突然间的奇思妙想记录下来,不时翻翻,你会很清楚你一路以来的学习历程是怎样的。

它不仅是你Java学习的成长日记,更是鼓励支持你坚持学Java的好法宝,还可以成为你Java学习的动力源泉。

好的学习方法再加上良好的习惯,你会发现学习Java也不是一件多么困难的事情。当然,以上这些方法适用于那些有足够时间学习,或者是有较强自控力的人,如果你面临的就业,面临着经济问题,很难有一颗平常心去好好学习。

总之,学好Java技术才你才能享受生活带来的乐趣,为了你的梦想,努力学习吧。

有哪些适合java初学者的项目?

20个当时初学时的Java 练手项目,结尾提供项目源码。

需要可以群文件自行下载

首先要明确后端包括哪些职业:DBA(数据库维护优化专家),Developer(程序猿),Architect(构架师),Scrum master及类似(敏捷开发专家),Project Manager(产品狗),Maintenance&IT support(通讯和服务器相关),当然这只是一个大致的分类,并没有一个清晰的界限。

按程序猿内功而言:关系型数据库,领域驱动设计(Domain-Driven Design),设计模式Design Pattern,算法Algorithm,面向对象编程OOP(SOLID),线程安全,事件驱动,测试驱动开发,依赖注入框架,等等。

对于初学Java并且有志于后端开发的同学来说,需要重点关注以下几个部分:

基础:比如计算机系统、算法、编译原理等等

Web开发: 主要是Web开发相关的内容,包括HTML/CSS/js(前端页面)、 Servlet/JSP(J2EE)以及MySQL(数据库)相关的知识。它们的学习顺序应该是从前到后,因此最先学习的应该是HTML/CSS/JS(前端页面)。

J2EE:你需要学习的是Servlet/JSP(J2EE)部分,这部分是Java后端开发必须非常精通的部分,因此这部分是这三部分中最需要花精力的。关于Servlet/Jsp部分视频的选择,业界比较认可马士兵的视频。

最后一步,你需要学会使用数据库,mysql是个不错的入门选择,而且Java领域里主流的关系型数据库就是mysql。这部分一般在你学习Servlet/Jsp的时候,就会接触到的,其中的JDBC部分就是数据库相关的部分。你不仅要学会使用JDBC *** 作数据库,还要学会使用数据库客户端工具,比如navicat,sqlyog,二选一即可。

开发框架:目前比较主流的是SSM框架,即spring、springmvc、mybatis。你需要学会这三个框架的搭建,并用它们做出一个简单的增删改查的Web项目。你可以不理解那些配置都是什么含义,以及为什么要这么做,这些留着后面你去了解。但你一定要可以快速的利用它们三个搭建出一个Web框架,你可以记录下你第一次搭建的过程,相信我,你一定会用到的。还要提一句的是,你在搭建SSM的过程中,可能会经常接触到一个叫maven的工具。这个工具也是你以后工作当中几乎是必须要使用的工具,所以你在搭建SSM的过程中,也可以顺便了解一下maven的知识。在你目前这个阶段,你只需要在网络上了解一下maven基本的使用方法即可,一些高端的用法随着你工作经验的增加,会逐渐接触到的。

因此,你需要去看一些JDK中的类的源码,也包括你所使用的框架的源码。这些源码能看懂的前提是,你必须对设计模式非常了解。否则的话,你看源码的过程中,永远会有这样那样的疑问,这段代码为什么要这么写?为什么要定义这个接口,它看起来好像很多余?由此也可以看出,这些学习的过程是环环相扣的,如果你任何一个阶段拉下来了,那么你就真的跟不上了,或者说是一步慢步步慢。而且我很负责的告诉你,我在这个阶段的时候,所学习的东西远多于这里所罗列出来的。

总而言之,这个阶段,你需要做的是深入了解Java底层和Java类库(比如并发那本书就是Java并发包javaconcurrent的内容),也就是JVM和JDK的相关内容。而且还要更深入的去了解你所使用的框架,方式比较推荐看源码或者看官方文档。

ofbiz中定时任务的用法

1ofbiz中创建一个定时任务关联到两张表

TemporalExpression(定义任务执行的时间段)

JobSandbox(定义任务调用的Service)

tempExprTypeId有如下几种:

DateRange date级别 Integer1 Integer2 (表示日期之内) String1 String2 (表示时间段内) (例如 Integer1=1 Integer2 = 3 String1=20:00:00 String2=20:00:00 表示每月1到3号的晚上8点执行)

DayInMonth

DayOfMonthRange

DayOfWeekRange

Difference

Frequency

Intersection

MonthRange

TimeOfDayRange

Union

2代码实例

entitymodelxml

<entity entity-name="TestTable" package-name="orgofbizhumanresability" title="Party Qualification Type Entity"> <field name="testId" type="id-ne"></field> <field name="username" type="indicator"></field> <field name="password" type="indicator"></field> <field name="description" type="description"></field> <prim-key field="testId"/> </entity>

servicexml

<service name="createTestData" engine="simple" location="org/hotwax/practice/PracticeServicesxml" invoke="createTestData" default-entity-name="TestTable" auth="false"> </service>

simple-method

<simple-method method-name="createTestData" short-description="create a Person"> <make-value entity-name="TestTable" value-field="newEntity"/> <sequenced-id sequence-name="TestTable" field="newEntitytestId"/> <set field="newEntityusername" value="Y"/> <set field="newEntitypassword" value="N"/> <create-value value-field="newEntity"/> </simple-method>

testDataxml

(每分钟执行一次)

<TemporalExpression tempExprId="MINUTE_0_59" tempExprTypeId="MINUTE_RANGE" integer1="0" integer2="59"/> <JobSandbox jobId="Test_Job" jobName="Mail Notification Job" runTime="2010-02-25 18:00:00000" serviceName="createTestData" poolId="pool" runAsUser="system" tempExprId="MINUTE_0_59" maxRecurrenceCount="-1"/>

(maxRecurrenceCount为执行的次数, -1为无限执行)

ant load-demo重新启动服务即可发现表中每分钟插入一条数据

3在Java中添加定时任务:

dispatcherschedule( jobName, poolName, serviceName, serviceContext,

startTime, frequency, interval, count, endTime, maxRetry );

Dispatcherschedule()方法参数配置详解:

jobName :计划任务名称, 唯一标识

poolName : job池名称 如果你不清楚这个是干嘛的话 默认pool好了

serviceName : job 要调用的服务名称

serviceContext :map型参数 ,job调度需要用到的数据 ,会被转化成XML格式保存到runtimeData中 (重复调度的时候会再次用到)

startTime :long 格式 执行调度的开始时间

frequency :执行频率 (数据类型有 RecurrenceRuleDAILY(执行频率以天为单位) 、 RecurrenceRuleHOURLY(执行频率以小时为单位)等等)

interval : 执行间隔 配合frequency 使用 , frequency 为单位 , interval 为数量 ,联合起来其 XX天/次(XX天执行一次) 、XX小时/次(XX小时执行一次)

count:执行次数 。 最大执行次数,当执行次数达到这个值时就不在执行了 。 如果设置-1 即不限次数

endTime :执行结束时间,一般用在count 为-1 的时候 使用 ,当限时时间达到这一时间时 即不在执行

maxRetry :失败后重复执行次数 , 某次调度执行失败的话 ,重复执行的次数 , -1 无限 , 知到执行成功为止

----------------------------

Ofbiz 定时任务配置规则

<!-- TemporalExpression field details -->

<!-- The TemporalExpression field meanings depend upon what type of expression it is The integer

values are typically obtained from the javautilCalendar field constants For more

information, see the orgofbizservicecalendarTemporalExpressionsjava file

tempExprTypeId integer1 integer2 date1 date2 string1 string2

==================== ============== =============== ====== ====== ========== ========

HOUR_RANGE start[8] end[8]

DATE_RANGE start end

DAY_OF_WEEK_RANGE start [1] end [1]

MINUTE_RANGE start [9] end [9]

MONTH_RANGE start [2] end [2]

DAY_OF_MONTH_RANGE start [3] end [3]

DAY_IN_MONTH day [1] occurrence [4]

FREQUENCY freq type [5] freq count [6] start[7]

[1] Day of week: 1 = Sunday, 7 = Saturday

[2] Month: January = 0, Undecimber = 12

[3] Day of month: 1 to 31

[4] Integer: -5 to +5, zero excluded

[5] Second = 13, Minute = 12, Hour = 11, Day = 5, Month = 2, Year = 1

[6] Positive integer, zero excluded

[7] If null, defaults to system date when the expression was retrieved from storage

[8] Integer: 0 to 23, midnight = 0

[9] Integer: 0 to 59

-->

以上就是关于如何下载ECARUCA数据库!全部的内容,包括:如何下载ECARUCA数据库!、大连哪有学习数据库和JAVA的学习班、ETL(datastage),EBS,数据库,该做什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9458149.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-28
下一篇2023-04-28

发表评论

登录后才能评论

评论列表(0条)

    保存