2006年7月4日随笔档案一亩三分地

Somebeautymemory--thissongtakemetolonglongago--YesterdayOnceMore

厂牌:Mercury

主打推荐:

艺人介绍

空前绝后的超強个人音乐纪录

根据Billboard统计,EltonJohn从《HonkyChateau》到《RockOfTheWesties》,连续7张专辑拿下排行冠军,创下单一艺人最高纪录。

专辑《CaptainFantasticAndTheBrownDirtCowboy》于1975年6月7日首周入榜就空降排行榜第一,这是Billboard排行史上第一人,紧接着《RockOfTheWesties》也重复这项光荣纪录。

为悼念英国王妃黛安娜而第三度发行的《CandleInTheWind》1997全球总销售突破3300万张,是史上最畅销、同时也是销售速度最快的单曲。

1970~1999年,创下连续30年每年都有单曲打进Billboard流行单曲榜Top40的惊人纪录

EltonJohn葛莱美奖得奖纪录

第42届GrammyLegendAward传奇贡献奖

专辑介绍

AnnotationHibernateAnnotationJson

由于pragmaticprogrammer对中国IP的封锁,国内不能在该网站下载到随书的源代码。今天请一位美国朋友帮忙才得到

Linux对FAT32的支持是可读可写的,所以没有必要再安装什么模块之类的;1.我们要建一个挂载点的目录,比如是在/mnt/目录下建一个wind的目录:

RadRails是基于eclipse平台的RubyonRails(ROR)IDE.熟悉eclipse的开发人员很容易使用.下面简单介绍一下RadRails在WindowsXP下面的安装,配置.1.安装RadRails

2.配置RadRails

配置RadRails应该是最容易出问题的地方,下面将分类说明Ruby,Rails,Rake的配置方法.本指南中Ruby安装在"D:\ruby",根据情况修改成个人的Ruby安装目录

2.1配置Ruby

2.1.1配置Interpreters打开"Windows-->Preferences",选择"Ruby-->InstalledInterpreters",点击"Add"出现的提示框中代码

2.1.2配置Ri/rdoc打开"Windows-->Preferences",选择"Ruby-->Ri/rdoc"代码

2.2配置Rails和Rake打开"Windows-->Preferences",选择"Rails-->Configuration"代码

我用过的2个:

还有其他的好的js,大家可以补充。

作者:KuassiMensah

利用Java存储过程沟通SQL、XML、Java、J2EE和Web服务。

存储过程(storedprocedure)允许将运行于数据库层中的持久性逻辑与运行于中间层中的商务逻辑有效地分离开来。这种分离可以降低整个应用程序的复杂性,并提供其重用性、安全性、性能和可伸缩性。

但是,妨碍存储过程广泛采用的一个主要障碍是不同数据库厂商使用各种专有的、且依赖于数据库的实现语言。使用基于Java的存储过程可以解决这一问题。Oracle已经实现了ANSI标准,这些标准规定了从SQL中将静态Java方法作为过程或函数进行调用的能力。这种实现被简单地称作"Java存储过程"。

在本文中,你将了解基于Java的存储过程如何帮助简化商务逻辑、提高其性能,并扩展数据库的功能。本文将介绍Oracle如何在数据库内启用基于Java的存储过程。还会介绍Java存储过程如何访问数据,以及如何创建基本Java存储过程。

选择PL/SQL还是Java

两种语言都适用于数据库编程,都有自己的优点和弱点。在决定选择哪一种语言时,可以参考下面根据经验得出的通用规则:

对于要求与SQL进行无缝集成的数据库中心来说则逻辑使用PL/SQL,从而完成对数据库对象、类型和特性的访问。

出于与数据库的无关性考虑时,可以选择Java作为开放式的语言来取代PL/SQL,同时也为了集成和沟通SQL、XML、J2EE和Web服务等各个领域。OralceJVM使得Java可以运行在数据库中

从Oracle8i版本1(Oralce8.1.5)开始,Oracle便提供紧密集成的Java虚拟机(JVM),JVM支持Oralce的数据库会话期结构。任何数据库对话期都可以在第一Java代码调用时启动一个虚拟上专用的JVM,后续的用户可以使用这一已经存在的支持Java的会话期。事实上,所有会话共享同一JVM代码并保持"仅静态"的私有状态,而垃圾则收集在单个对话期空间内,从而为各个Java对话期提供了和SQL操作相同的对话期隔离和数据完整性能力。这里,不需要为了数据完整性而进行单独的Java支持的过程。这一基于对话期的结构提供了较小的内存占用率,并使OracleJVM具有与Oracle数据库一样的线性SMP可伸缩性。

创建Java存储过程

要将Java方法转换为Java存储过程需要几个步骤,包括:用loadjava实用程序将Java类加载到数据库中,利用调用规范(CallSpec)发布Java方法,将Java方法、参数类型和返回类型映射到其SQL的对应部分。下面部分说明如何完成这些步骤。

我将使用一个简单的Hello类,它有一个方法Hello.world(),返回字符串"Helloworld":

publicclassHello{publicstaticStringworld(){return"Helloworld";}}Loadjava实用程序

Loadjava是加载Java源文件、Java类文件和Java资源文件的实用程序,它可以用来验证字节码,并将Java类和JAR文件布置到数据库中。它既可以通过命令行调用,也可以通过包含于DBMS_JAVA类中的loadjava()方法调用。为了加载我们的Hello.class示例,输入:

loadjava-userscott/tigerHello.class

从Oracle9i版本2开始,loadjava允许通过为包含在被处理的类中的方法创建相应的CallSpecs来自动将Java类发布为存储过程。Oracle为开发、测试、调试和布置Java存储过程提供了Oracle9iJDeveloper。

TheResolverSpec

基于JDK的JVM在列于CLASSPATH中的目录中查找类引用,并对其进行解析。因为Oracle数据库类存在于数据库模式中,所以OracleJVM利用数据库解析器(resolver)通过列于ResolverSpec中的模式查找并解析类引用。与CLASSPATH不同(CLASSPATH可以应用于所有的类),ResoverSpec根据每类的情况进行应用。缺省解析器首先在加载类的模式中搜寻类,然后在公共同义词(publicsynonyms)中搜索。

loadjava-resolve你可能需要指定不同的解析器,也可以在使用loadjava时强制进行解析,从而在布置时确定可能在以后运行时发生的任何问题。

loadjava-resolve-resolver"((*SCOTT)(foo/bar/*OTHERS)(*PUBLIC))"CallSpec和存储过程调用

为了从SQL中调用Java方法(以及从PL/SQl和JDBC中调用),必须首先通过CallSpec发布公共静态方法,它为SQL定义方法采用的参数以及返回的SQL类型。

在我们的例子中,我们将利用SQL*Plus连接到数据库,并为Hello.world()定义一个顶级CallSpec:

SQL>connectscott/tigerSQL>createorreplacefunctionhelloworldreturnVARCHAR2aslanguagejavaname'Hello.world()returnjava.lang.String';/Functioncreated.可以像下面这样调用Java存储过程:

SQL>variablemyStringvarchar2[20];SQL>callhelloworld()into:myString;Callcompleted.SQL>printmyString;MYSTRING---------------------HelloworldJava存储过程可以通过其CallSpec从以下各项中进行调用:SQLDML语句(INSERT,UPDATE、DELETE、SELECT、CALL、EXPLAINPLAN、LOCKTABLE和MERGE)、PL/SQL块、子程序、程序包以及数据库触发器。CallSpec的美妙之处在于存储过程实现可以从PL/SQL转换为Java,反之亦可,这一点对于请求者是透明的。

CallSpec从实现语言中(PL/SQL或Java)中抽象出调用界面,因而使之能够在原有应用程序和新的基于Java/J2EE的应用程序之间共享商务逻辑。但是,在从Java客户程序调用在数据库驻留的Java类时,你可能不希望通过PL/SQL包装器(wrapper)。在以后的版本中,Oracle计划提供一种机制,它可以使开发人员略过CallSpec。

高级数据访问控制

原有应用程序与J2EE应用程序之间的数据逻辑共享

因为原有应用程序与J2EE应用程序都通过CallSpec调用存储过程,所以J2EE和非J2EE应用程序可以共享相同的数据逻辑。由于有了CallSpec,所以不用考虑所用的是何种实现语言(无论是PL/SQL还是Java),该数据逻辑都可以共享。

为BMP实体Bean自动生成主关键字

可以用以下三个步骤实现这一模式:>创建一个Java存储过程,在公共GenPk类中定义一个公共静态Java方法insertAccount()。此方法将插入数据、计算惟一的关键字(通过发出一个序列号),并返回计算出的关键字作为主关键字。

定义CallSpec

CREATEORREPLACEPROCEDUREinsertAccount(ownerINvarchar,balINnumber,newidOUTnumber)ASLANGUAGEJAVANAME'GenPK.insertAccount(java.lang.String[])';/

在ejbCreate()内调用存储过程

PublicAccountPKejbCreate(StringownerName,intbalance)throwsCreateException{try{CallableStatementcall=conn.prepareCall{"{callinsertAccount(,,)}"};returnnewAccountPK(accountID);}}为CMP实体Bean定制主关键字查找器

数据驱动的EJB调用

数据驱动的消息传送

Oracle9i数据库嵌入了AdvancedQueuing(AQ,高级排队),它是一种集成的、稳定、可靠、安全、可扩展和事务处理式的消息排队框架。Oracle通过标准的Java消息传送系统(JavaMessagingSystem,JMS)API为Java开发人员提供AQ功能。Java存储过程可以通过JMS接口调用AQ操作,从而能够实现快速、在会话期内、可扩展的、数据驱动的消息传送。

Java存储过程可以利用JMS调用AQ操作。可以用以下4个步骤实现这一模式:

创建并启动JMSQueue(为此,可以将以下一些操作嵌入SQL脚本内):

executedbms_aqadm.create_queue_table(queue_table=>'queue1',queue_payload_type=>'SYS.AQ$_JMS_TEXT_MESSAGE',comment=>'atestqueue',multiple_consumers=>false,compatible=>'8.1.0');executedbms_aqadm.create_queue(queue_name=>'queue1',queue_table=>'queue1');executedbms_aqadm.start_queue(queue_name=>'queue1');

创建Java存储过程(代码摘录如下):

publicstaticvoidrunTest(StringmsgBody){try{//getdatabaseconnectionora_drv=newOracleDriver();db_conn=ora_drv.defaultConnection();//setupsender(cfonlinecodesample)..//createmessages_msg=s_session.createTextMessage(msgBody);//sendmessagesender.send(s_msg);s_session.commit();//receivemessager_msg=(TextMessage)receiver.receive();r_session.commit();//outputmessagetextStringbody=r_msg.getText();System.out.println("messagewas'"+body+"'");..}}

创建CallSpec:

createorreplaceprocedurejmsproc(t1INVARCHAR)aslanguagejavaname'jmsSample.main(java.lang.String[])';/

调用存储过程:

calljmsproc('hello');数据库辅助的Web发布(缓冲失效)

为了跟踪原始数据的所有变化,并刷新已缓存的数据,Java存储过程会作为一个触发器被附加在一个表上。这个表的任何变化都会自动调用该存储过程,后者再调出一个已定义的JSP使JCACHE对象失效,该对象将其状态映射到该数据库表。在失效时,紧跟其后的查询将强制缓存器根据数据库的数据进行更新。下面的步骤阅读关于Java存储过程的更多信息本文摘自白皮书"释放Java存储过程的能量(UnleashthePowerofJavaStoredProcedures)",可以在以下位置找到该白皮书:otn.oracle.com/tech/java/java_db/pdf/OW_30820_JAVA_STORED_PROC_paper.PDF

Oracle9i数据库第2版中的新PL/SQL特性otn.oracle.com/tech/pl_sql/pdf/Paper_30720_Doc.pdf

ResolverSpecotn.oracle.com/docs/products/oracle9i/doc_library/release2/java.920/a96659.pdf

OracleJVMandJava2Securityotn.oracle.com/docs/products/oracle9i/doc_library/release2/java.920/a96656.pdf

下载代码练习本文中的代码示例:otn.oracle.com/sample_code/tech/java/jsp/Oracle9iJSPSamples.html

了解作为Web服务的存储过程otn.oracle.com/tech/webservices

扩展数据库的功能

在数据库中直接运行Java代码的一个妙处就在于要实现新的功能,只需要简单地加载代码或库,并利用CallSpec制作可用于SQL、PL/SQL、Java、J2EE和非JavaAPI的进入点(公共静态方法)。Oracle9i数据库用户可以很容易地扩展数据库功能。Oracle自己利用这种能力来获得新的应用程序和工具包,如XMLDeveloperKits(XDKs)。

沟通SQL、PL/SQL、Java、J2EE、.NET和XML

OracleXDK是用Java编写的,并将其公共方法可用作Java存储过程,从而扩展了数据库的XML可编程能力。SQL、PL/SQL、Java、J2EE和非Java(.NET)商务逻辑都能够访问XML分析器、XSLT处理器、XPath引擎和XMLSQLUtility(XSU)。

XML分析器可以通过xmlparser和xmldom包进行访问。XSU是一种Java实用程序,它可以由SQL查询结果或JDBCResultSet生成XML文档,并将XML文档中的数据写入数据库表或视图中。利用XSU,XML输出可以输出为文本、Dom树或DTS。通过dbms_xmlquery和dbms_xmlsave包,XSU即可用于PL/SQL。

结论

Oracle数据库与JavaVM的集成可以创建可移植、功能强大和与数据库无关的数据逻辑和持续性逻辑(persistencelogic)。运行于中间层的商务逻辑和运行于数据库层的数据逻辑之间的分离提高了应用程序的可扩展性、灵活性和可维护性。

什么是存储过程呢?

定义:

讲到这里,可能有人要问:这么说存储过程就是一堆SQL语句而已啊?

Microsoft公司为什么还要添加这个技术呢

那么存储过程与一般的SQL语句有什么区别呢

存储过程的优点:

1.存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般SQL语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度。

2.当对数据库进行复杂操作时(如对多个表进行Update,Insert,Query,Delete时),可将此复杂操作用存储过程封装起来与数据库提供的事务处理结合一起使用。

3.存储过程可以重复使用,可减少数据库开发人员的工作量

4.安全性高,可设定只有某此用户才具有对指定存储过程的使用权

存储过程的种类:

execmaster..xp_cmdshell'ping10.8.16.1'

3.用户自定义的存储过程,这是我们所指的存储过程

常用格式

Createprocedureprocedue_name

[with]{recompile|encryption}

as

sql_statement

解释:

output:表示此参数是可传回的

with{recompile|encryption}

recompile:表示每次执行此存储过程时都重新编译一次

encryption:所创建的存储过程的内容会被加密

如:

表book的内容如下

编号书名价格

001C语言入门$30

002PowerBuilder报表开发$52

实例1:查询表Book的内容的存储过程

createprocquery_book

select*frombook

go

execquery_book

实例2:加入一笔记录到表book,并查询此表中所有书籍的总金额

Createprocinsert_book

withencryption---------加密

实例3:设有两个表为Product,Order,其表内容如下:Product产品编号产品名称客户订数001钢笔30002毛笔50003铅笔100Order产品编号客户名客户订金001南山区$30002罗湖区$50003宝安区$4请实现按编号为连接条件,将两个表连接成一个临时表,该表只含编号.产品名.客户名.订金.总金额,总金额=订金*订数,临时表放在存储过程中

首先我们需要知道Java和J2EE是两个不同概念,Java不只是指一种语言,已经代表与微软不同的另外一个巨大阵营,所以Java有时是指一种软件系统的流派,当然目前主要是.NET和Java两大主流体系。

J2EE可以说指Java在数据库信息系统上实现,数据库信息系统从早期的dBase、到Delphi/VB等C/S结构,发展到B/S(Browser浏览器/Server服务器)结构,而J2EE主要是指B/S结构的实现。

J2EE是一个虚的大的概念,J2EE标准主要有三种子技术标准:WEB技术、EJB技术和JMS,谈到J2EE应该说最终要落实到这三个子概念上。

这三种技术的每个技术在应用时都涉及两个部分:容器部分和应用部分,Web容器也是指Jsp/Servlet容器,你如果要开发一个Web应用,无论是编译或运行,都必须要有Jsp/Servlet库或API支持(除了JDK/J2SE以外)。

Web技术中除了Jsp/Servlet技术外,还需要JavaBeans或JavaClass实现一些功能或者包装携带数据,所以Web技术最初裸体简称为Jsp/Servlet+JavaBeans系统。

谈到JavaBeans技术,就涉及到组件构件技术(component),这是Java的核心基础部分,很多软件设计概念(设计模式)都是通过JavaBeans实现的。

JavaBeans不属于J2EE概念范畴中,如果一个JavaBeans对象被Web技术(也就是Jsp/Servlet)调用,那么JavaBeans就运行在J2EE的Web容器中;如果它被EJB调用,它就运行在EJB容器中。

EJB(企业JavaBeans)是普通JavaBeans的一种提升和规范,因为企业信息系统开发中需要一个可伸缩的性能和事务、安全机制,这样能保证企业系统平滑发展,而不是发展到一种规模重新更换一套软件系统。

至此,JavaBeans组件发展到EJB后,并不是说以前的那种JavaBeans形式就消失了,这就自然形成了两种JavaBeans技术:EJB和POJO,POJO完全不同于EJB概念,指的是普通JavaBeans,而且这个JavaBeans不依附某种框架,或者干脆可以说:这个JavaBeans是你为这个应用程序单独开发创建的。

J2EE应用系统开发工具有很多:如JBuilder、Eclipse等,这些IDE首先是Java开发工具,也就是说,它们首要基本功能是可以开发出JavaBeans或Javaclass,但是如果要开发出J2EE系统,就要落实到要么是Web技术或EJB技术,那么就有可能要一些专门模块功能(如eclipse需要lomboz插件),最重要的是,因为J2EE系统区分为容器和应用两个部分,所以,在任何开发工具中开发J2EE都需要指定J2EE容器。

J2EE容器分为WEB容器和EJB容器,Tomcat/Resin是Web容器;JBoss是EJB容器+Web容器等,其中Web容器直接使用Tomcat实现的。所以你开发的Web应用程序可以在上面两种容器运行,而你开发的Web+EJB应用则只可以在JBoss服务器上运行,商业产品Websphere/Weblogic等和JBoss属于同一种性质。

J2EE容器也称为J2EE服务器,大部分时它们概念是一致的。

如果你的J2EE应用系统的数据库连接是通过JNDI获得,也就是说是从容器中获得,那么你的J2EE应用系统基本与数据库无关,如果你在你的J2EE应用系统耦合了数据库JDBC驱动的配置,那么你的J2EE应用系统就有数据库概念色彩,作为一个成熟需要推广的J2EE应用系统,不推荐和具体数据库耦合,当然这其中如何保证J2EE应用系统运行性能又是体现你的设计水平了。

衡量J2EE应用系统设计开发水平高低的标准就是:解耦性;你的应用系统各个功能是否能够彻底脱离?是否不相互依赖,也只有这样,才能体现可维护性、可拓展性的软件设计目标。

为了达到这个目的,诞生各种框架概念,J2EE框架标准将一个系统划分为WEB和EJB主要部分,当然我们有时不是以这个具体技术区分,而是从设计上抽象为表现层、服务层和持久层,这三个层次从一个高度将J2EE分离开来,实现解耦目的。

因此,我们实际编程中,也要将自己的功能向这三个层次上靠,做到大方向清楚,泾渭分明,但是没有技术上约束限制要做到这点是很不容易的,因此我们还是必须借助J2EE具体技术来实现,这时,你可以使用EJB规范实现服务层和持久层,Web技术实现表现层;

EJB为什么能将服务层从Jsp/Servlet手中分离出来,因为它对JavaBeans编码有强制的约束,现在有一种对JavaBeans弱约束,使用Ioc模式实现的(当然EJB3.0也采取这种方式),在Ioc模式诞生前,一般都是通过工厂模式来对JavaBeans约束,形成一个服务层,这也是是Jive这样开源论坛设计原理之一。

这两种架构分歧也曾经诞生一个新名词:完全POJO的系统也称为轻量级系统(lightweight),其实这个名词本身就没有一个严格定义,更多是一个吸引人的招牌,轻量是指容易学习容易使用吗?按照这个定义,其实轻量Spring等系统并不容易学习;而且EJB3.0(依然叫EJB)以后的系统是否可称为轻量级了呢?

这样,表现层和服务层的分离是通过两种框架达到目的,剩余的就是持久层框架了,通过持久层的框架将数据库存储从服务层中分离出来是其目的,持久层框架有两种方向:直接自己编写JDBC等SQL语句(如iBatis);使用O/RMapping技术实现的Hibernate和JDO技术;当然还有EJB中的实体Bean技术。

持久层框架目前呈现百花齐放,各有优缺点的现状,所以正如表现层框架一样,目前没有一个框架被指定为标准框架,当然,表现层框架现在又出来了一个JSF,它代表的页面组件概念是一个新的发展方向,但是复杂的实现让人有些忘而却步。

在所有这些J2EE技术中,虽然SUN公司发挥了很大的作用,不过总体来说:网络上有这样一个评价:SUN的理论天下无敌;SUN的产品用起来撞墙;对于初学者,特别是那些试图通过或已经通过SUN认证的初学者,赶快摆脱SUN的阴影,立即开溜,使用开源领域的产品来实现自己的应用系统。

最后,你的J2EE应用系统如果采取上面提到的表现层、服务层和持久层的框架实现,基本你也可以在无需深刻掌握设计模式的情况下开发出一个高质量的应用系统了。

当然,如果你想设计自己的行业框架,那么第一步从设计模式开始吧,因为设计模式提供你一个实现JavaBeans或类之间解耦参考实现方法,当你学会了系统基本单元JavaBean或类之间解耦时,那么系统模块之间的解耦你就可能掌握,进而你就可以实现行业框架的提炼了,这又是另外一个发展方向了。

以上理念可以总结为一句话:J2EE开发三件宝:DomainModel(域建模)、patterns(模式)和framework(框架)。

连续几天安装配置和连接Mysql数据库,今天终于成功了,回想这几天,真的是甜酸苦辣都有,单mysql就重装了不下10次,而在eclipse上编写的连接数据库的程序总是报错.我都已经down了oracal准备放弃mysql了,不过...就象电视剧演的那样,转机总是在这个时候出现,先是看到了saulzy关于mysql4.1.11版本的安装介绍,接着又找到了一款不错的mysql界面插件,最后在网友的帮助下把mysql的JDBC驱动配好并连通了.一连5天,日子真不好过阿,不过这个过程中,我也觉得自己学到不少东西,呵呵,反正都撑过来了,就要继续往前走.现在,就这几天弄的总结一下,希望对同是正在学习JAVA技术的同道中人能有帮助.

我曾写过一篇叫<<配置Eclpise+tomcat并实现JSP的编写与部署>>,现在写的这些算是它的后续.

2.JDBC驱动:mysql-connector-java-3.1.8这只是一个压缩包,并不需要安装,只要将其解压,我么使用的是文件夹mysql-connector-java-3.1.8里的文件:mysql-connector-java-3.1.8-bin.jar.

3.Mysql界面插件:mysql-front这是一个安装程序,按照提示安装就可以了.

三.环境配置首先,我要说明的是我现在tomcat的安装路径是:D:\ProgramFiles\Java\TomcatJDK的安装路径是:D:\ProgramFiles\Java\j2sdk

在这里,需要配置环境变量的是JDBC驱动.在配置前先要把刚才说到的mysql-connector-java-3.1.8-bin.jar本地硬盘某处(我放的地方:D:\ProgramFiles\Java\mysqlforjdbc),然后根据你放的地方,配置classpath,我的配置是这样的:.;D:\Programfiles\Java\j2sdk\lib\tools.jar;D:\ProgramFiles\Java\j2sdk\lib\mysql-connector-java-3.1.8-bin-g.jar;D:\ProgramFiles\Java\mysqlforjdbc\mysql-connector-java-3.1.8-bin.jar配置这个的目的是让你的java应用程序找到连接mysql的驱动.

配置完环境变量后还有很重要一步就是为JSP连接数据库配置驱动,这个其实很简单,就是把mysql-connector-java-3.1.8-bin.jar拷到某些文件夹里就行了,我在网上看了很多资料问了很多人,各种说法都有,我综合了一下,为了保险,我都全做了,呵呵,反正就是拷一个400K的文件而已,现列出要把mysql-connector-java-3.1.8-bin.jar拷进去的文件夹,如下:D:\ProgramFiles\Java\Tomcat\common\libD:\ProgramFiles\Java\Tomcat\shared\lib

四.数据库的使用

现在我想在mysql里建一个数据库shujuku,以及在数据库里建一个表biao.具体的命令如下(假设mysql我是刚安装好的)

1.进入dos状态(记住命令行的要运行在mysql的安装目录下的bin目录的)如下图一:2.连接mysql输入:mysqlhlocalhosturootp出现要求输入密码的界面(如图二)

输入在安装时已设好的密码,就近入了mysql的命令编辑界面了,如图三:3.使用mysql的基本命令(在mysql命令行编辑每输入完命令后最后一定要有分号,不然会报错)显示数据库:showdatabases;使用数据库:use数据库名;例子如图四:

6.建表命令:createtablebiao(idint(8)primarykey,namevarchar(10));如图六

剩下来的与标准sqsl命令基本上是一样的,具体操作略值得一提的是,你在命令行上输入"?",就会有mysql命令的简单帮助,如图八:

呵呵,那样,我们还可以知道退出,就是"exit",呵呵!

五.关于mysql-front的使用我找了好几个mysql的界面工具,觉得最简洁方便还是mysql-front,可惜的是要收费,不过还好有试用期,呵呵,可以先感受感受一下,最重要一点是mysql-front有简体中文版的,英文不好的我用起来就舒服多了.下面简单说说使用吧.首先,安装就不用说了,有向导,而且很简单.安装好后第一次运行时会跳出来一个要求添加对话的框,在这里你可以添加例如上面已经设定好的shujuku,过程如图九,十,十一:

当你在注册的复选框里填上你在上面mysql设定好的用户名和密码后,在选择数据库框里就有shujuku的数据库了,选上,按确定.进入mysql-fron后,你就会看到下面的界面,这是你就可以进行操作了.如图十二要说明的是,你还可以把root用户也加进去,这要你在mysql-fron的界面上选设置->对话->新建,再按上面进行就可以,出了root你还可以加入更多的用户,方法还是一样的,设置不同的用户,是方便对不同数据库进行管理,呵呵,root是权限最高的,可不要随便让别人使用你的root用户,保正你数据库的安全.

六.JSP连接mysql现在就是尝试用jsp连接mysql了我在eclipse里建了个test_mysql.jsp页面,代码如下:

在浏览器,你就可以看到如图十三的:

Datedate=newDate();

date.getTime();

首先,定义一个SimpleDateFormat变量

SimpleDateFormatsdf=newSimpleDateFormat("",Locale.SIMPLIFIED_CHINESE);

这个构造函数的定义如下:

SimpleDateFormat(Stringpattern,Localelocale)

第一个参数pattern,我们后面再解释,这里我们使用一个"",第二个参数,是用来设置时区的,这里用到了java.util.Locale这个类,这个类了面定义了很多静态变量,直接拿过来用就OK,我们把时区设置为Locale.SIMPLIFIED_CHINESE,只看名字,这个静态变量的意义已经很清楚了。

sdf.applyPattern("yyyy年MM月dd日_HH时mm分ss秒");

StringtimeStr=sdf.format(newDate());

要说明一下的是这个pattern,所谓的模式。这里,yyyy,MM,dd等,这就是模式。

我们可以在SimpleDateFormat的构造函数中指定模式,比如

SimpleDateFormatsdf=newSimpleDateFormat("yyyy-MM-dd",Locale.SIMPLIFIED_CHINESE);

什么字符代表什么,这是j2se约定好的,设置模式的时候,我们可以使用约定好的字符加上任何我们想要的字符串。

j2se对字符所代表的模式的约定列表如下:

LetterDateorTimeComponentPresentationGEradesignatorTextyYearYearMMonthinyearMonthwWeekinyearNumberWWeekinmonthNumberDDayinyearNumberdDayinmonthNumberFDayofweekinmonthNumberEDayinweekTextaAm/pmmarkerTextHHourinday(0-23)NumberkHourinday(1-24)NumberKHourinam/pm(0-11)NumberhHourinam/pm(1-12)NumbermMinuteinhourNumbersSecondinminuteNumberSMillisecondNumberzTimezoneGeneraltimezoneZTimezoneRFC822timezone

FI财务会计集中公司有关会计的所有资料,提供完整的文献和全面的资讯,同时作为企业实行控制和规划的最新基础。

TR财务管理是一个高效率财务管理完整解决方案,确保公司在世界范围的周转,对财务资产结构实行盈利化组合,并限制风险。

CO管理会计是公司管理系统中规划与控制工具的完整体系,具有统一的报表系统,协调公司内部处理业务的内容和过程。

EC企业控制根据特制的管理资讯,连续监控公司的成功因素和业绩指标。

IM投资管理提供投资手段和专案,从规划到结算的综合性管理和处理,包括投资前分析和折旧模拟。

PP生产计划提供各种制造类型的全面处理:从重覆性生产、订制生产、订装生产,加工制造、批量及订存生产直至过程生产,具有扩展MPRⅡ的功能。另外还可以选择连接PDC、制程控制系统,CAD和PDM。

MM物料管理以工作流程为导向的处理功能对所有采购处理最佳化,可自动评估供应商,透过精确的库存和仓储管理降低采购和仓储成本,并与发票核查相整合。

PM工厂维护提供对定期维护、检查、耗损维护与服务管理的规划、控制和处理,以确保各操作性系统的可用性。

PS专案管理协调和控制专案的各个阶段,直接与采购及控制合作,从报价、设计到批准以及资源管理与结算。

SD销售与分销积极支援销售和分销活动,具有出色的定价、订单快速处理、按时交货,交互式多层次可变配置功能,并直接与盈利分析和生产计划模组连接。

HR人力资源管理采用涵盖所有人员管理任务和帮助简化与加速处理的整合式应用程式,为公司提供人力资源规划和管理解决方案。

R/3-定制化策略资讯管理

保持竞争领先地位端赖于公司建立有效并尽可能以客户为导向的企业流程结构的能力。这就需要具备可最有效支援今后企业流程的资讯处理系统。

R/3系统并非只是软件,它是一种策略性解决方案。

R/3系统-企业流程的思维与行动。

公司必须运用动态战略对瞬息万变的挑战作出反应。迅速适应客户新需求和市场新商机的能力,是赢得竞争胜利的决定性因素。此种适应力需要一个功能强大、开放式的基础结构,它可针对目前的企业流程提供最佳化支援,并能灵活适应变化与发展。R/3系统就是应付这些挑战的最佳解答,它是主从式架构上最普遍的标准商业应用软件。

SAPR/3系统具备以下功能和主要特点:

功能性:R/3以模块化的形式提供了一整套业务措施,其中的模块囊括了全部所需要的业务功能并把用户与技术性应用软件相联而形成一个总括的系统,用于公司或企业战略上和运用上的管理。

集成化:R/3把逻辑上联的部分连接在一起。重复工作和多余数据被完全取消,规程被优化,集成化的业务处理取代了传统的人工操作。

灵活性:R/3系统中方便的裁剪方法使之具有灵活的适应性,从而能满足各种用户的需要和特定行业的要求。R/3还配备有适当的界面来集成用户自己的软件或外来的软件。

开放性:R/3的体系结构符合国际公认的标准,使客户得以突破专用硬件平台及专用系统技术的局限。同时,SAP提供的开放性接口,可以方便地将第三方软件产品有效地集成到R/3系统中来。

用户友好:图标与图形符号简化了人机交互时的操作。统一设计的用户界面确保了工作人员能够运用同样的熟悉的技术从事不通的工作。

模块化:R/3的模块结构使用户既可以一个一个的选用新的实用程序,也可以完全转入一个新的组织结构体系。

可靠:作为用户的商业伙伴SAP始终不断地为集成化软件的质量设立越来越多的国际标准。

低成本高效益:信息处理是取得竞争优势的要点之一。当竞争加剧时,企业必须更加努力地获取其市场占有量。这就要使用高度集成化的数据处理软件,而R/3正是这种软件的优秀典范。

国际适用:R/3支持多种语言,而且是为跨国界操作而设计的。R/3可以灵活地适应各国的货币及税物要求。

THE END
1.朋友交流:男命对婚姻家庭的稳定及家庭财富有利的一些命理因素2 配偶宫为喜用时,婚姻较好,且命主往往从配偶得到帮助。如果配偶宫是正财,且只有一个正财又为喜用,情况很好。配偶宫不受冲合,四柱地支无冲,婚姻家庭容易稳定。地支稳定,且总体配置合理,财富也比较稳定。 3正财与日干合,则情投意合。如果只有一个正财,在月干或时干,与日干合,即使争吵或分离都容易复合。如何正https://blog.sina.com.cn/s/blog_4c2f71010102z43a.html
2.我15年处了个男朋友,这几年吵的很凶,感觉他对我甚是冷淡,可家里人丁酉,申酉戌三会,会了食伤局,你对男友看不顺眼,争吵多,婚姻宫动,实际上你们感情已经起了变化。 戊戌,比肩旺,对方用情不专,你的感情多竞争,因此也感觉男友对你甚是冷淡。 2020年庚子,即使勉强维持下去,到2021年辛丑,伤官透出,与原局构成伤官见官,也会分开。 2022年壬寅,寅午戌三合,七杀合动婚姻宫,会有新https://weibo.com/5516388436/P2SiPj9rA
3.男人:什么样的八字组合格局容易离婚?总之,日支妻宫临财星被六冲者,轻者夫妻不和或者夫妻分居时长较多。重者离婚再娶甚至不利子女。4日支忌临伤官及临财多合:男命日支妻宫忌临伤官星泛滥,日支伤官星泛滥,娶妻性情必凶狠顽劣,口毒无德,一生不是被妻压制过度则是半生郁郁寡欢。男命日支临财星也忌多合,月柱临比肩也即兄弟星临正位,日支财星https://baijiahao.baidu.com/s?id=1817314661223439190&wfr=spider&for=pc
4.你会拥有贤惠的妻子吗若会昌曲,又逢辅弼或魁钺,则有夫凭妻贵之象,即可依靠配偶的助力而发迹,或主配偶有能力、有学识。同时喜见禄存或化禄,主因妻得财。 宜老少配。 天同星 天同星是一颗仁和之星,男命天同星在夫妻宫,以吉论。 妻子会有点稚气,但聪明、清秀、顺从、脾气好,夫妻感情好,少有红脸的情况,为贤内助。 最好年龄差距https://zhuanlan.zhihu.com/p/620149979
5.妻有克小配无刑是什么意思怎么理解妻有克小配无刑1、妻有克:于妻有克,指对妻子不利的命或势。 2、小配无刑:小的(孩子)配偶没什么祸端,比较平稳 命里夫妻相克。如果妻年龄比自己小,命里夫妻才不会有刑罚的,是建议夫妻俩人,年龄https://www.027art.com/gaokao/HTML/13257267.html
6.民间神断的老东西正妻得正位,怕逢比劫克夺,原局比劫重众多,亥有克无生,壬戌运财星虚透离异。后找一个年龄小的,依然不和。(小的看时上辛食为小,坐未不和) 乾:辛巳 庚寅 甲申 庚午 申金为妻官、透干两庚辛,妻宫多现,原局无明财,以伤食当妻看,宫星俱多,且宫被冲坏,故是个多婚且婚姻难稳定的命。一生共结婚五次,https://www.360doc.cn/article/36389511_1048713376.html
7.男人八字与婚姻幸福的特征,男人婚姻八字命理四、妻星要清 即干头不宜见财才混杂。若财才混杂而有根,就不是妻子不好,而是自己花心,爱情不专,自寻烦恼,弄得家庭不安宁。 五、妻宫不见冲刑 妻宫不见冲刑,则夫妻和谐,双方都身体健康,不会一方短命。 六、妻守妻宫 妻星喜坐日支,不要到处游走。 https://m.k366.com/bazi/35363.htm