mybatis数据源
来源:互联网 发布:php bool false true 编辑:程序博客网 时间:2024/06/06 01:52
一:JNDI:(Java Naming and Directory)
1,由一个初始的命名上下文(context)及其下的任意数目的子上下文组成
2,JNDI名称空间是分层次的,与很多文件系统的目录/文件结构类似
3,初始上下文与文件系统的根类似,子上下文与子目录类似
4,JNDI层次的根是初始化上下文
5,在初始化上下文下有很多子上下文,其中之一就是jdbc
6,jdbc是子上下文保留给JDBC数据源使用,逻辑数据源的名字可以在子上下文jdbc中,也可以在jdbc下的子上下文中
7,层次中最后一级元素是注册的对象,与文件类似
8,即数据源的逻辑名 jdbc/DefaultDS 环境命名上下文(Environment Naming Context)
9,java:comp/env ,引入它是为了解决JNDI命名冲突的问题.
10,web容器可以把资源放到jndi中
eg:java:comp/env/jdbc/DefaultDS
comp: company
env : Environment
二:web容器中创建jndi资源
1,导入对应驱动jar包
2,context.xml中添加 <Resource>标签.
3,mybatis
3.1:配置文件中数据源配置改为JNDI
<dataSource type="JNDI">
<property name="data_source" value="java:comp/env/jdbc/DefaultDS"/>
</dataSource>
4,jdbc
4.1 : javax.naming.Context context = new InitialContext();
4.2 : String jdni = "java:comp/env/jdbc/DefaultDS";
4.3 : DataSource ds = (DataSource) context.lookup(jdni);
4.4 : Connection conn = ds.getConnection();
eg:oracle
<Resource
name="jdbc/DefaultDS"
type="javax.sql.DataSource"
username="briup"
password="briup"
driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@127.0.0.1:1521:XE"/>
eg:mysql
<Resource
name="jdbc/DefaultDS"
type="javax.sql.DataSource"
username="briup"
password="briup"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/briupDB"/>
分割线-----------------------------------------------------------------
<Resource>详细:
<Resource
name 指定资源相对于java:comp/env上下文的JNDI名
auth 指定资源的管理者, Application 和 Container
type 指定资源所属的java类的完整限定名
maxActive 指定在连接池中数据库连接的最大数目. 取值0表示没有限制
maxIdle 指定在连接池中保留的空间的数据库连接最大数目,取值-1,表示没有限制
maxWait 指定等待一个数据库连接的最大时间,毫秒为单位,-1,永久等待
username 指定连接数据库的用户名
password 指定连接数据库的密码
driverClassName 指定jdbc驱动程序类名
url 指定连接数据库的URL
factory 指定随去管理:默认是tomcat去管理,spring也可以去管理eg: factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"/>
mySql:
<Resource
name="jdbc/DefaultDS"
auth="Container"
type="javax.sql.DataSource"
factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
maxActive="100"
maxIdle="30"
maxWait="1000"
username="briup"
password="briup"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/briup?autoReconnect=true&useUnicode=true&characterEncoding=utf8"/>
Oracle:
<Resource
name="jdbc/DefaultDB"
auth="Container"
type="javax.sql.DataSource"
maxActive="100"
maxIdle="30"
maxWait="1000"
username="briup"
password="briup"
driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@127.0.0.1:1521XE"/>
1,由一个初始的命名上下文(context)及其下的任意数目的子上下文组成
2,JNDI名称空间是分层次的,与很多文件系统的目录/文件结构类似
3,初始上下文与文件系统的根类似,子上下文与子目录类似
4,JNDI层次的根是初始化上下文
5,在初始化上下文下有很多子上下文,其中之一就是jdbc
6,jdbc是子上下文保留给JDBC数据源使用,逻辑数据源的名字可以在子上下文jdbc中,也可以在jdbc下的子上下文中
7,层次中最后一级元素是注册的对象,与文件类似
8,即数据源的逻辑名 jdbc/DefaultDS 环境命名上下文(Environment Naming Context)
9,java:comp/env ,引入它是为了解决JNDI命名冲突的问题.
10,web容器可以把资源放到jndi中
eg:java:comp/env/jdbc/DefaultDS
comp: company
env : Environment
二:web容器中创建jndi资源
1,导入对应驱动jar包
2,context.xml中添加 <Resource>标签.
3,mybatis
3.1:配置文件中数据源配置改为JNDI
<dataSource type="JNDI">
<property name="data_source" value="java:comp/env/jdbc/DefaultDS"/>
</dataSource>
4,jdbc
4.1 : javax.naming.Context context = new InitialContext();
4.2 : String jdni = "java:comp/env/jdbc/DefaultDS";
4.3 : DataSource ds = (DataSource) context.lookup(jdni);
4.4 : Connection conn = ds.getConnection();
eg:oracle
<Resource
name="jdbc/DefaultDS"
type="javax.sql.DataSource"
username="briup"
password="briup"
driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@127.0.0.1:1521:XE"/>
eg:mysql
<Resource
name="jdbc/DefaultDS"
type="javax.sql.DataSource"
username="briup"
password="briup"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/briupDB"/>
分割线-----------------------------------------------------------------
<Resource>详细:
<Resource
name 指定资源相对于java:comp/env上下文的JNDI名
auth 指定资源的管理者, Application 和 Container
type 指定资源所属的java类的完整限定名
maxActive 指定在连接池中数据库连接的最大数目. 取值0表示没有限制
maxIdle 指定在连接池中保留的空间的数据库连接最大数目,取值-1,表示没有限制
maxWait 指定等待一个数据库连接的最大时间,毫秒为单位,-1,永久等待
username 指定连接数据库的用户名
password 指定连接数据库的密码
driverClassName 指定jdbc驱动程序类名
url 指定连接数据库的URL
factory 指定随去管理:默认是tomcat去管理,spring也可以去管理eg: factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"/>
mySql:
<Resource
name="jdbc/DefaultDS"
auth="Container"
type="javax.sql.DataSource"
factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
maxActive="100"
maxIdle="30"
maxWait="1000"
username="briup"
password="briup"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/briup?autoReconnect=true&useUnicode=true&characterEncoding=utf8"/>
Oracle:
<Resource
name="jdbc/DefaultDB"
auth="Container"
type="javax.sql.DataSource"
maxActive="100"
maxIdle="30"
maxWait="1000"
username="briup"
password="briup"
driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@127.0.0.1:1521XE"/>
阅读全文
0 0
- MyBatis数据源
- mybatis数据源
- MyBatis配置数据源
- springmvc+mybatis两个数据源
- Mybatis数据源配置
- Mybatis数据源的创建
- MyBatis-自定义数据源
- Mybatis动态数据源实现
- Mybatis的数据源 DataSource
- MyBatis-dataSource(数据源)
- MyBatis数据源DataSource分类
- Mybatis源码分析-数据源
- Mybatis动态数据源实现
- mybatis 学习之多数据源整合
- MyBatis配置多个数据源
- Mybatis数据源与连接池
- Mybatis数据源与连接池
- Mybatis JNDI集成C3P0数据源
- unexpected token:name(m) 報錯解決方案
- ActiveMQ(一):ActiveMQ入门案例 发送消息和接收消息
- notepad++ c++版 插件开发入门
- 关于C语言操作符
- 201312-3 最大的矩形 ccf
- mybatis数据源
- jQuery选择器和选取方法
- Argument of '#selector' refers to instance method 'changeScale(byReactingTo:)' that is not exposed t
- HDU
- JDBC之连接池
- 面试汇总
- 算法第七周Delete Node in a BST[medium]
- NOIP初赛+CF某比赛 回忆录
- 用Sublime Text直接运行php文件