欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Sybase数据库的连接,JNDI,Hibernate配置

程序员文章站 2022-03-26 15:13:55
...

最近的一个项目就是移植老项目的代码,有一个模块用的是Sybase数据库,我表示从来没接触过,更不用说怎么用了。再者这东西都是几乎被淘汰的东西了,而且网上搜到的东西简直了,全是复制粘贴的。

 

一、使用工具连接Sybase数据库

我用的是SQL Advantage,下载地址点我,使用方法:

 

1.解压下载的sqladv-12_5.zip至任意目录下
2.编辑sqladv-12_5\ini目录下的sql.ini文件,添加想要连接的Sybase服务器信息。文件sqladv-12_5\ini\sql.ini中有个示例:
[syb1254]
master=NLWNSCK,192.168.1.5,5000
query=NLWNSCK,192.168.1.5,5000
你新添加Sybase服务器的时候,仅需要sql.ini文件的尾部添加类似上面的信息。中括号中表示服务器名称,你可以自己起一个标记性的名字。将192.168.1.5替换成你将要连接的Sybase服务器的IP地址,将5000替换成Sybase服务器的监听端口。
注意:中间使用英文逗号分割。
3.双击目录sqladv-12_5下的“启动sqladv.bat”文件,即可运行SQL Advantage工具了。不要执行“sqladv.exe”这个文件,因为没有配置环境变量SYBASE。直接执行”start_sqladv.bat”即可。
4.打开SQL Advantage工具后,点菜单Server>Connect,在连接信息配置窗口中,其中Server列表中的Sybase服务名就是在第二步中配置的。Client host表示连接到Sybase
服务器中的客户端标志。
如果想配置网络包大小、大文本字段的长度、客户端字符集等属性,可以点Options…按钮

成功连接到Sybase服务器后,查看数据库内的表,点菜单View>Pick Lists>Tables & Columns

 

二、JDNI和Hibernate的配置
首先导入两个jar包,下载地址点我
JNDI配置:

<Resource auth="Container" driverClassName="com.sybase.jdbc3.jdbc.SybDataSource" 
 maxActive="50" maxIdle="25" name="根据自己的需要" username="自己的" password=自己的" 
 type="javax.sql.DataSource" url="jdbc:sybase:Tds:服务器地址:端口/query" 
 />

Hibernate配置:

<bean id="Factory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
    <property name="dataSource">
            <ref bean="DataSource" />
    </property>
    <property name="hibernateProperties">
        <props>
            <prop key="hibernate.dialect">org.hibernate.dialect.Sybase11Dialect</prop>
            <prop key="hibernate.show_sql">true</prop>
            <prop key="hibernate.jdbc.batch_size">80</prop>
            <prop key="hibernate.connection.autocommit">true</prop>
            <prop key="hibernate.connection.release_mode">after_transaction</prop>
            <prop key="hibernate.query.factory_class">org.hibernate.hql.classic.ClassicQueryTranslatorFactory</prop>
        </props>
    </property>
</bean>

 

三、使用JDBC方式连接:

SybDataSource od = new SybDataSource();
od.acceptsURL("jdbc:sybase:Tds:");
od.setServerName("数据库url");
od.setDatabaseName("query");
od.setPortNumber(端口号);
od.setUser(" ");
od.setPassword(" ");
//省略