s8王者荣耀吕布视频s8吕布还能玩吗

leizhimin 的BLOG
用户名:leizhimin
文章数:726
评论数:2721
注册日期:
阅读量:5863
阅读量:12276
阅读量:421408
阅读量:1109682
51CTO推荐博文
JDBC数据源(DataSource)的简单实现
数据源技术是Java操作数据库的一个很关键技术,流行的持久化框架都离不开数据源的应用。
数据源提供了一种简单获取数据库连接的方式,并能在内部通过一个池的机制来复用数据库连接,这样就大大减少创建数据库连接的次数,提高了系统性能。
对于数据源的应用,一般都选择实用开源的数据源或数据库连接池来使用,比如,常见的有DBCP、C3P0、Proxool等等。但用起来有些笨重和麻烦。下面自己手动实现个精简的数据源,代码如下:
package com.lavasoft. import mons.logging.L import mons.logging.LogF import javax.sql.DataS import java.util.C import java.util.LinkedL import java.sql.C import java.sql.SQLE import java.sql.DriverM import java.io.PrintW /** * 一个简单的DataSource实现 * * @author leizhimin
0:03:17 */ public class SimpleDateSource implements DataSource { &&&&&&&&private static Log log = LogFactory.getLog(SimpleDateSource.class); &&&&&&&&private static final String dirverClassName = "com.mysql.jdbc.Driver"; &&&&&&&&private static final String url = "jdbc:mysql://127.0.0.1:3306/testdb"; &&&&&&&&private static final String user = "root"; &&&&&&&&private static final String pswd = "leizhimin"; &&&&&&&&//连接池 &&&&&&&&private static LinkedList&Connection& pool = (LinkedList&Connection&) Collections.synchronizedList(new LinkedList&Connection&()); &&&&&&&&private static SimpleDateSource instance = new SimpleDateSource(); &&&&&&&&static { &&&&&&&&&&&&&&&&try { &&&&&&&&&&&&&&&&&&&&&&&&Class.forName(dirverClassName); &&&&&&&&&&&&&&&&} catch (ClassNotFoundException e) { &&&&&&&&&&&&&&&&&&&&&&&&log.error("找不到驱动类!", e); &&&&&&&&&&&&&&&&} &&&&&&&&} &&&&&&&&private SimpleDateSource() { &&&&&&&&} &&&&&&&&/** &&&&&&&& * 获取数据源单例 &&&&&&&& * &&&&&&&& * @return 数据源单例 &&&&&&&& */ &&&&&&&&public SimpleDateSource instance() { &&&&&&&&&&&&&&&&if (instance == null) instance = new SimpleDateSource(); &&&&&&&&&&&&&&&&return &&&&&&&&} &&&&&&&&/** &&&&&&&& * 获取一个数据库连接 &&&&&&&& * &&&&&&&& * @return 一个数据库连接 &&&&&&&& * @throws SQLException &&&&&&&& */ &&&&&&&&public Connection getConnection() throws SQLException { &&&&&&&&&&&&&&&&synchronized (pool) { &&&&&&&&&&&&&&&&&&&&&&&&if (pool.size() & 0) return pool.removeFirst(); &&&&&&&&&&&&&&&&&&&&&&&&else return makeConnection(); &&&&&&&&&&&&&&&&} &&&&&&&&} &&&&&&&&/** &&&&&&&& * 连接归池 &&&&&&&& * &&&&&&&& * @param conn &&&&&&&& */ &&&&&&&&public static void freeConnection(Connection conn) { &&&&&&&&&&&&&&&&pool.addLast(conn); &&&&&&&&} &&&&&&&&private Connection makeConnection() throws SQLException { &&&&&&&&&&&&&&&&return DriverManager.getConnection(url, user, pswd); &&&&&&&&} &&&&&&&&public Connection getConnection(String username, String password) throws SQLException { &&&&&&&&&&&&&&&&return DriverManager.getConnection(url, username, password); &&&&&&&&} &&&&&&&&public PrintWriter getLogWriter() throws SQLException { &&&&&&&&&&&&&&&&return null; &&&&&&&&} &&&&&&&&public void setLogWriter(PrintWriter out) throws SQLException { &&&&&&&&} &&&&&&&&public void setLoginTimeout(int seconds) throws SQLException { &&&&&&&&} &&&&&&&&public int getLoginTimeout() throws SQLException { &&&&&&&&&&&&&&&&return 0; &&&&&&&&} &&&&&&&&public &T& T unwrap(Class&T& iface) throws SQLException { &&&&&&&&&&&&&&&&return null; &&&&&&&&} &&&&&&&&public boolean isWrapperFor(Class&?& iface) throws SQLException { &&&&&&&&&&&&&&&&return false; &&&&&&&&} }
这个数据源的实现虽然很简陋,总代码量不到百行,却基本上实现了数据源的所有功能,达到了提高Connection复用的目的。
如果你想做的更复杂些,做个配置文件,
配置数据库连接信息
写个后台线程监控连接池的Connection超时、被强制关闭、池的尺寸、当前大小等等。
再完善下数据源的log相关方法的实现。
功能就很强大了。
欢迎参与完善!本文出自 “” 博客,请务必保留此出处
了这篇文章
附件下载:  
类别:┆阅读(0)┆评论(0)
11:09:25 13:44:36 13:45:48 10:21:00 16:18:28 15:11:22
请输入验证码:JAVA数据源连接方式汇总
最近在研究JAVA的数据源连接方式,学习的时候发现了一位同行写的文章,转载过来,留作记录!
一、问题引入
在java程序中,需要访问数据库,做增删改查等相关操作。如何访问数据库,做数据库的相关操作呢?
二、Java连接数据库方法概述
java.sql提供了一些接口和类,用于支持数据库增删改查等相关的操作。该jar包定义了java访问各种不同数据库(mysql,oracle,sqlserver。。。。。)的统一接口和标准。同时,各个数据库厂商都提供了该jar包中定义的各个接口的实现类,用于具体实现本厂数据库的增删改查操作,即称之为“数据库驱动jdbc driver”。例如mysql的数据库驱动为:com.mysql.jdbc.driver;oracle的数据库驱动为:oracle.jdbc.driver.oracledriver。
在java程序中访问数据库,做数据库连接时,可以采用两种方式:
1、使用java.sql
利用该包提供的各种接口和类直接访问数据库。
2、使用数据库连接池
目前存在多个开源的java数据库连接池,这些连接池都是在java.sql基础上编写而成。
&O该连接池的解决的问题是:
当使用java.sql中提供的api创建数据库连接时候,需要耗费很大的资源,要进行用户名密码数据库连接验证等,即耗费资源也耗费时间。如果在程序中,每次需要访问数据库时候,都进行数据库连接,那么势必会造成性能低下;同时,如果用户失误忘记释放数据库连接,会导致资源的浪费等。而数据库连接池就是解决该问题,通过管理连接池中的多个连接对象(connection),实现connection重复利用。从而,大大提高了数据库连接方面的性能。
&O该连接池的功能是:
负责创建,管理,释放,分配数据库连接即(connection)。首先,负责创建相应数目的数据库连接对象(connection)对象,并存放到数据库连接池(connect
pool)中。当用户请求数据库连接时,该连接池负责分配某个处于空闲状态的数据库连接对象;当用户发出释放该数据库连接时,该连接池负责将该连接对象重新设置为空闲状态,以便被别的请求重复利用。同时;数据库连接池负责检查(空闲时间&最大空闲时间)的数据库连接,并释放。
&O连接池主要参数介绍
最小连接数:初始化时,系统将负责创建该数目的connection放入连接池中。
最大连接数:系统允许创建connection的最大数值。当系统请求连接时候,且连接池中不存在空闲的连接:如果connection总数未超过最大连接数,那么连接池负责创建新的connection对象,并返回该对象;如果connection总数已经到达该最大连接数,那么连接池将用户请求转入等待队列。
三、常用的数据库连接池
3、Apache&的Jakarta DBCP
其中,sping框架依赖的第三方使用了c3p0和dbcp两种方式;而bonecp号称是速度最快的数据库连接池。JNDI方式创建实现的datasource是真正实现了javax.sql.datasource;其他的三种方式都不是。下面的列表,列出了几种方式的区别和不同:
连接池名称
依赖的jar包
实现的datasource类
该数据源是由相应的web服务器(例如:tomcat,weblogic,websphere)负责初始化,创建,管理。程序中不需要引入特别的jar包。
Javax.sql.datasource
c3p0-0.9.xxx.jar
4j-1.2.15.jar
备注:以上几种方式的数据库连接池的配置参数大同小异,略有差别;其参数的配置,既可以通过配置文件的方式配置,也可以通过硬编码的方式配置。
四、分别列出几种连接池的编码例子
(所有的例子均可以参考D:\work\qsyworkspace2\jdbctest项目)
1、使用java.sql API直接访问数据库
详细请参考javasql.java文件。
Class.forName("com.mysql.jdbc.Driver");
&&&&&&&&&&&String
url="jdbc:mysql://localhost:3306/editortest";
&&&&&&&&&&&String
user="root";
&&&&&&&&&&&String
password="123456";
&&&&&&&&&&&Connection
cn=DriverManager.getConnection(url, user,
password);
&&&&&&&&&&&Statement
st=cn.createStatement();
&&&&&&&&&&&String
sql="select * from artical where
&&&&&&&&&&&ResultSet
rs=st.executeQuery(sql);
&&&&&&&&&&&while(rs.next()){
&&&&&&&&&&&&&&System.out.println("1:"+rs.getString(1));
&&&&&&&&&&&&&&System.out.println("2:"+rs.getString(2));
&&&&&&&&&&&&&&System.out.println("3:"+rs.getString(3));
&&&&&&&&&&&&&&System.out.println("4:"+rs.getString(4));&&&&
2、使用JNDI方式
这种方式,是由web服务器,实现了java.sql.datasource。由web服务器负责初始化数据源,创建connection,分配,管理connection。由于本身是由web服务器实现的功能,因此不需要在项目project中引入特别的jar包,但是需要在服务器的某些配置文件中增加相关的配置。下面,以tomcat服务器为例,讲述这种方式的使用。
&&&&(1)、修改tomcat的conf下的context.xml文件,增加Resource的配置的支持。
&&&&(2)、由于数据源是由tomcat负责创建,所以需要的jdbc驱动应该放到tomcat的lib路径下。
&&&&(3)、编写使用java代码,并放在tomcat环境下使用,如下:
public&void&jnditest(){
&&&&&&&//&TODO&Auto-generated
method stub
&&&&&&&try&{
&&&&&&&&&&&Context
initcontext=new&InitialContext();
&&&&&&&&&&&Context
context=(Context) initcontext.lookup("java:comp/env");
&&&&&&&&&&
&&&&&&&&&&&DataSource
datasource=(DataSource)context.lookup("jdbc/editortest");
&&&&&&&&&&
&&&&&&&&&&&Connection
cn=datasource.getConnection();
&&&&&&&&&&
&&&&&&&&&&&Statement
st=cn.createStatement();
&&&&&&&&&&&String
sql="select * from artical where
&&&&&&&&&&&ResultSet
rs=st.executeQuery(sql);
&&&&&&&&&&&while(rs.next()){
&&&&&&&&&&&&&&System.out.println("1:"+rs.getString(1));
&&&&&&&&&&&&&&System.out.println("2:"+rs.getString(2));
&&&&&&&&&&&&&&System.out.println("3:"+rs.getString(3));
&&&&&&&&&&&&&&System.out.println("4:"+rs.getString(4));&&&&
&&&&&&&&&&&}
&&&&&&&}&catch&(NamingException
&&&&&&&&&&&//&TODO&Auto-generated
catch block
&&&&&&&&&&&e.printStackTrace();
&&&&&&&}&catch&(SQLException e)
&&&&&&&&&&&//&TODO&Auto-generated
catch block
&&&&&&&&&&&e.printStackTrace();
&&&&&&&&(4)、详情参考jndisql。Java文件,以及index.jsp。
注意:该测试不能在main方法中测试;可以写一个jsp在tomcat环境中测试。因为:java单元的环境是jdk;而jsp的环境却是tomcat;数据连接池是在tomcat中配置的,所以能正常运行的,但java测试的环境只有jdk,所以在引用数据连接池时就时出现找不到环境的错误。
使用环境:当使用weblogic或者websphere等高级的web服务器的时候,可以考虑使用这种方式提高性能。
3、使用C3p0方式
C3P0是开源的数据库连接组件,支持创建数据库连接池,管理connection等功能。使用该种方式做数据库连接时候,需要导入。
同时,关于数据库连接的具体参数,例如:,,,最小连接数,最大连接数。。。。。等信息既可以在配置文件中配置,也可以通过程序编码方式创建。支持的数据库连接池方式,因此在环境中使用时,支持在文件中配置。另外,由于数据库连接池在整个中针对某个数据库而言是单例的,所以,即使通过编码的方式创建,那么要保证其单实例特性。如果存在多个,那么必然会导致性能低下。
下面,列出通过程序编码方式使用数据库连接池的方式。
ComboPooledDataSource ds =&new&ComboPooledDataSource();
&&&&&&&try&{
&&&&&&&&&&&ds.setDriverClass("com.mysql.jdbc.Driver");
&&&&&&&&&&&ds.setJdbcUrl("jdbc:mysql://localhost:3306/editortest");
&&&&&&&&&&&ds.setUser("root");
&&&&&&&&&&&ds.setPassword("123456");
&&&&&&&&&&&ds.setMaxPoolSize(20);
&&&&&&&&&&&ds.setInitialPoolSize(10);
&&&&&&&&&&&ds.setMaxIdleTime(2000);
&&&&&&&&&&&Connection
cn=ds.getConnection();
&&&&&&&&&&&Statement
st=cn.createStatement();
&&&&&&&&&&&String
sql="select * from artical where
&&&&&&&&&&&ResultSet
rs=st.executeQuery(sql);
&&&&&&&&&&&while(rs.next()){
&&&&&&&&&&&&&&System.out.println("1:"+rs.getString(1));
&&&&&&&&&&&&&&&System.out.println("2:"+rs.getString(2));
&&&&&&&&&&&&&&System.out.println("3:"+rs.getString(3));
&&&&&&&&&&&&&&System.out.println("4:"+rs.getString(4));&&&&
&&&&&&&&&&&}
&&&&&&&&&&
&&&&&&&}&catch&(PropertyVetoException
&&&&&&&&&&&//&TODO&Auto-generated
catch block
&&&&&&&&&&&e.printStackTrace();
&&&&&&&}&catch&(SQLException e)
&&&&&&&&&&&//&TODO&Auto-generated
catch block
&&&&&&&&&&&e.printStackTrace();
&&&&备注:通常使用方式,都是通过配置文件配置,几乎不会用到这种硬编码方式。在此,只是简单介绍C3P0的使用方式。详情,可以参考c3p0test.java。
4、使用dbcp方式
DBCP方式,是apache提供的数据源连接池方式,支持数据库连接池创建,管理connection等功能。使用环境,需要导入和commons-pool.jar两个包。上面提到的方式,其实质实用的就是数据源;只是他是通过在服务器上做配置,由服务器负责创建该数据源。
同样的,数据源也支持配置文件和硬编码两种方式。通常使用方式,都是通过配置文件配置,几乎不会使用硬编码方式。下面简单介绍方式的编码:
BasicDataSource ds =&new&BasicDataSource();
&&&&&&&ds.setDriverClassName("com.mysql.jdbc.Driver");
&&&&&&&ds.setUrl("jdbc:mysql://localhost:3306/editortest");
&&&&&&&ds.setUsername("root");
&&&&&&&ds.setPassword("123456");
&&&&&&&ds.setMaxIdle(20);
&&&&&&&ds.setInitialSize(10);
&&&&&&&ds.setMaxActive(2000);
&&&&&&&try&{
&&&&&&&&&&&Connection
cn=ds.getConnection();
&&&&&&&&&&&Statement
st=cn.createStatement();
&&&&&&&&&&&String
sql="select * from artical where
&&&&&&&&&&&ResultSet
rs=st.executeQuery(sql);
&&&&&&&&&&&while(rs.next()){
&&&&&&&&&&&&&&System.out.println("1:"+rs.getString(1));
&&&&&&&&&&&&&&System.out.println("2:"+rs.getString(2));
&&&&&&&&&&&&&&System.out.println("3:"+rs.getString(3));
&&&&&&&&&&&&&&System.out.println("4:"+rs.getString(4));&&&&
&&&&&&&&&&&}
&&&&&&&}&catch&(SQLException e)
&&&&&&&&&&&//&TODO&Auto-generated
catch block
&&&&&&&&&&&e.printStackTrace();
5、使用BoneCP方式。
BoneCP是快速高效的数据库连接池组件,据说性能上目前是最好得,比C3P0和DBCP快25倍。使用该组件,需要导入bonecp-0.6.5.jar,google-collections-1.0.jar,slf4j-api-1.5.11.jar,slf4j-log4j12-1.5.11.jar,log4j-1.2.15.jar。
下面,简单列出编码方式的使用,做简单的了解。
BoneCPDataSource ds =&new&BoneCPDataSource();
&&&&&&&ds.setDriverClass("com.mysql.jdbc.Driver");
&&&&&&&ds.setJdbcUrl("jdbc:mysql://localhost:3306/editortest");
&&&&&&&ds.setUsername("root");
&&&&&&&ds.setPassword("123456");
&&&&&&&try&{
&&&&&&&&&&&Connection
cn = ds.getConnection();
&&&&&&&&&&&Statement
st = cn.createStatement();
&&&&&&&&&&&String
sql =&"select * from artical where
&&&&&&&&&&&ResultSet
rs = st.executeQuery(sql);
&&&&&&&&&&&while&(rs.next())
&&&&&&&&&&&&&&System.out.println("1:"&+
rs.getString(1));
&&&&&&&&&&&&&&System.out.println("2:"&+
rs.getString(2));
&&&&&&&&&&&&&&&System.out.println("3:"&+
rs.getString(3));
&&&&&&&&&&&&&&System.out.println("4:"&+
rs.getString(4));
&&&&&&&&&&&}
&&&&&&&}&catch&(SQLException e)
&&&&&&&&&&&//&TODO&Auto-generated
catch block
&&&&&&&&&&&e.printStackTrace();
总结:以上,介绍了几种常用的数据源连接池;这几种连接池在使用过程,即支持硬编码的方式,也支持配置文件的配置方式;在正式实用的时候,应该尽量使用配置的方式,便于维护和管理。硬编码的方式,可以做为测试使用。同时,spring框架,通过他自己的方式集成上述几种数据源,理论上来说,都支持。各个数据源连接池都有一些公有的属性,因为他们都是从javax.sql.datasource继承而来,而且都有最大连接数,初始化连接数等概念。同时,他们又分别有各自不同的属性,做了扩展。这里只是简单的介绍,在实际使用中,想要实现高性能的数据库连接池管理,还需要深入研究每种方式的连接属性配置;例如:根据实际需要,设置合适的最小连接数和最大连接数,等待时间等。
五、Java(x).sql直接操作数据库与各个开源数据源(datasource)关系
当使用JDK提供的java(x).sql包中的类访问数据库时候,基本上用到的就是drivermanager,connection,statement,resultset。其中drivermanger是类,他调用相应的驱动(即各个数据库厂商提供的驱动)中的方法生成connection对象。Connection是接口,在各个数据库厂商提供的数据库驱动中,都实现了该接口。例如:当使用com.mysql.jdbc.driver时候,生成的connection即为com.mysql.jdbc.Connection对象。
Javax.sql包中定义了接口datasource,统一规定了作为数据源连接池必须提供的方法和属性等。各个数据源组件中提供的datasource都实现了该接口。当通过数据源连接池的方式获取connnection的时候,同样的,各个数据源组件也都提供(实现了java.sql.connection)接口的类。
更为具体的细节,可以参考jdk文档中关于java(x).sql包中相关类和接口的描述;参考开源数据源连接池组件的相关源码(例如C3P0);参考相关的数据库驱动。
六、附录:Java开源的数据库连接池
 在Java中开源的数据库连接池有以下几种 :
  1, C3P0
C3P0是一个开放源代码的JDBC连接池,它在lib目录中与Hibernate一起发布,包括了实现jdbc3和jdbc2扩展规范说明的Connection&和Statement&池的DataSources&对象。
  2,Proxool&这是一个Java SQL
Driver驱动程序,提供了对你选择的其它类型的驱动程序的连接池封装。可以非常简单的移植到现存的代码中。完全可配置。快速,成熟,健壮。可以透明地为你现存的JDBC驱动程序增加连接池功能。
  3,Jakarta
DBCP DBCP是一个依赖Jakarta
commons-pool对象池机制的数据库连接池.DBCP可以直接的在应用程序用使用。
  4,DDConnectionBroker
DDConnectionBroker是一个简单,轻量级的数据库连接池。
  5,DBPool
DBPool是一个高效的易配置的数据库连接池。它除了支持连接池应有的功能之外,还包括了一个对象池使你能够开发一个满足自已需求的数据库连接池。
  6,XAPool
XAPool是一个XA数据库连接池。它实现了javax.sql.XADataSource并提供了连接池工具。
  7,Primrose
Primrose是一个Java开发的数据库连接池。当前支持的容器包括Tomcat4&5,Resin3与JBoss3.它同样也有一个独立的版本可以在应用程序中使用而不必运行在容器中。Primrose通过一个web接口来控制SQL处理的追踪,配置,动态池管理。在重负荷的情况下可进行连接请求队列处理。
  8,SmartPool
SmartPool是一个连接池组件,它模仿应用服务器对象池的特性。SmartPool能够解决一些临界问题如连接泄漏(connection leaks),连接阻塞,打开的JDBC对象如Statements,PreparedStatements等. SmartPool的特性包括支持多个pools,自动关闭相关联的JDBC对象,&在所设定time-outs之后察觉连接泄漏,追踪连接使用情况,&强制启用最近最少用到的连接,把SmartPool"包装"成现存的一个pool等。
  9,MiniConnectionPoolManager
MiniConnectionPoolManager是一个轻量级JDBC数据库连接池。它只需要Java1.5(或更高)并且没有依赖第三方包。
BoneCP是一个快速,开源的数据库连接池。帮你管理数据连接让你的应用程序能更快速地访问数据库。比C3P0/DBCP连接池快25倍。
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。JAVA操作中,频繁的切换数据源会有什么不好的影响或后果吗?? - ITeye问答
场景是这样的:有多个数据源,需要不断切换数据源进行数据操作,这样会不会有什么不好的影响呢??
比如我用户数据都是存在A数据库,当前是在操作B数据库,初始化的时候,我需要从A数据库读取用户的一些数据,读完后再切换到B数据库,这样就导致涉及用户的时候就会需要切换数据源,这样频繁的切换数据源会有啥影响吗??求大神指点。谢谢
只要都是长连接 其实切换不切换基本没什么
不会...我的项目shiro权限认证单独一个库。
公司网管,单独一个库
业务方面3个库,没出现过什么问题。
切换数据源的开销跟重新创建Connect一样,用数据库连接池就不会有问题.
你们的数据源肯定不是一次性的,那有什么问题呢。本来就存在2个数据源。数据源又不会一次丢掉。正所谓你用或或是不用它都在那里,不增不减。
数据库的到层和业务层在分离下& 数据库操作的服务做层无状态的怎么样?这样业务层对链接什么数据就不用关心了
一般来说,我们第一次获取数据源之后会将它放在缓存中,下次使用时会将数据源从缓存中拿出来,这个过程不会对程序有什么影响。
那么你所说的“切换”,就是从缓存中获取多个数据源的过程,这个过程对程序也没有影响。
还是说你每次需要通过jndi获取数据源?这不是个好的编程实践。
使用shiro做权限认证部分 不耽误你业务的处理
你的这种情况对数据库基本上没什么影响,只有初始化时候才用A,其他操作用B。给你一个解决方法,就是在B中创建和A中存储用户数据的表,登录之后将A中用户信息同步B中,每次登录只需在B中查找,如果存在就不同步,否则同步到B中,之后的任。何操作就只用B就行了
已解决问题
未解决问题Java中用的数据库是什么?【java吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:613,287贴子:
Java中用的数据库是什么?收藏
微软的嘛?mysql又是神马?
20年老品牌,一级代理,专注肯尼亚海运空运,报关一站式服务
9级了就别水了
关系型数据库
实在想不明白为什么有人问这问题
微软的是sql server数据库java中MySQL和Oracle用的比较多MySql属于中小型数据库,并且免费,Oracle大型商业数据库
真心不想学数据库,又有这个课必须学,蛋疼!
个人感觉数据库就是个钱包。存入,偶尔拿出来瞧瞧。
LADP 和ORALCE 组合用
色谱柱选购,当然菲罗门。
膜拜9级大神大神 您别闹了行不.
想用啥就用啥啊
Java 没有数据库,只有数据库接口。我用过 Postgre, MS SQL, MySQL, Oracle, SQLite, HSQL, Derby, 也见识过各种自家数据库。不管闭码开码, 符合要求的数据库就是好的数据库。
Oracle吧,SQL Server会崩的
求大神解释啊, 我也迷惘好久 了!
小公司的项目mysql比较多,大公司用oracle,主要看项目大小吧……一般来说这二种至少要会一种
什么数据库不行啊?
mySQL ,SQLSERVER ORACLE DB2 都用过
oracle吧 和java一样都是sun公司的吧
我学java一般用mysql 和oracle。
0raC|e好蛋疼
我晕,问出这种问题,你让人如何吐槽
登录百度帐号推荐应用
为兴趣而生,贴吧更懂你。或

我要回帖

更多关于 王者荣耀吕布怎么玩 的文章

 

随机推荐