首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    mybatis核心配置文件解读

    ● configuration:根标签,表示配置信息。 ● environments:环境(多个),以“s”结尾表示复数,也就是说mybatis的环境可以配置多个数据源。   ○ default属性:表示默认使用的是哪个环境,default后面填写的是environment的id。default的值只需要和environment的id值一致即可。         ● environment:具体的环境配置(主要包括:事务管理器的配置 + 数据源的配置)   ○ id:给当前环境一个唯一标识,该标识用在environments的default后面,用来指定默认环境的选择。 ● transactionManager:配置事务管理器   ○ type属性:指定事务管理器具体使用什么方式,可选值包括两个   ■ JDBC:使用JDBC原生的事务管理机制。底层原理:事务开启conn.setAutoCommit(false); ...处理业务...事务提交conn.commit(); ■ MANAGED:交给其它容器来管理事务,比如WebLogic、JBOSS等。如果没有管理事务的容器,则没有事务。没有事务的含义:只要执行一条DML语句,则提交一次。 ● dataSource:指定数据源   ○ type属性:用来指定具体使用的数据库连接池的策略,可选值包括三个 ■ UNPOOLED:采用传统的获取连接的方式,虽然也实现Javax.sql.DataSource接口,但是并没有使用池的思想。       ● property可以是:         ○ driver 这是 JDBC 驱动的 Java 类全限定名。         ○ url 这是数据库的 JDBC URL 地址。         ○ username 登录数据库的用户名。         ○ password 登录数据库的密码。         ○ defaultTransactionIsolationLevel 默认的连接事务隔离级别。         ○ defaultNetworkTimeout 等待数据库操作完成的默认网络超时时间(单位:毫秒)   ■ POOLED:采用传统的javax.sql.DataSource规范中的连接池,mybatis中有针对规范的实现。     ● property可以是(除了包含UNPOOLED中之外):         ○ poolMaximumActiveConnections 在任意时间可存在的活动(正在使用)连接数量,默认值:10         ○ poolMaximumIdleConnections 任意时间可能存在的空闲连接数。         ○ 其它....     ■ JNDI:采用服务器提供的JNDI技术实现,来获取DataSource对象,不同的服务器所能拿到DataSource是不一样。如果不是web或者maven的war工程,JNDI是不能使用的。 ● property可以是(最多只包含以下两个属性):         ○ initial_context 这个属性用来在 InitialContext 中寻找上下文(即,initialContext.lookup(initial_context))这是个可选属性,如果忽略,那么将会直接从 InitialContext 中寻找 data_source 属性。         ○ data_source 这是引用数据源实例位置的上下文路径。提供了 initial_context 配置时会在其返回的上下文中进行查找,没有提供时则直接在 InitialContext 中查找。 ● mappers:在mappers标签中可以配置多个sql映射文件的路径。         ● mapper:配置某个sql映射文件的路径 ○ resource属性:使用相对于类路径的资源引用方式 ○ url属性:使用完全限定资源定位符(URL)方式

    02

    mybatis核心配置文件解读

    ● configuration:根标签,表示配置信息。 ● environments:环境(多个),以“s”结尾表示复数,也就是说mybatis的环境可以配置多个数据源。 ○ default属性:表示默认使用的是哪个环境,default后面填写的是environment的id。default的值只需要和environment的id值一致即可。 ● environment:具体的环境配置(主要包括:事务管理器的配置 + 数据源的配置) ○ id:给当前环境一个唯一标识,该标识用在environments的default后面,用来指定默认环境的选择。 ● transactionManager:配置事务管理器 ○ type属性:指定事务管理器具体使用什么方式,可选值包括两个 ■ JDBC:使用JDBC原生的事务管理机制。底层原理:事务开启conn.setAutoCommit(false); ...处理业务...事务提交conn.commit(); ■ MANAGED:交给其它容器来管理事务,比如WebLogic、JBOSS等。如果没有管理事务的容器,则没有事务。没有事务的含义:只要执行一条DML语句,则提交一次。 ● dataSource:指定数据源 ○ type属性:用来指定具体使用的数据库连接池的策略,可选值包括三个 ■ UNPOOLED:采用传统的获取连接的方式,虽然也实现Javax.sql.DataSource接口,但是并没有使用池的思想。 ● property可以是: ○ driver 这是 JDBC 驱动的 Java 类全限定名。 ○ url 这是数据库的 JDBC URL 地址。 ○ username 登录数据库的用户名。 ○ password 登录数据库的密码。 ○ defaultTransactionIsolationLevel 默认的连接事务隔离级别。 ○ defaultNetworkTimeout 等待数据库操作完成的默认网络超时时间(单位:毫秒) ■ POOLED:采用传统的javax.sql.DataSource规范中的连接池,mybatis中有针对规范的实现。 ● property可以是(除了包含UNPOOLED中之外): ○ poolMaximumActiveConnections 在任意时间可存在的活动(正在使用)连接数量,默认值:10 ○ poolMaximumIdleConnections 任意时间可能存在的空闲连接数。 ○ 其它.... ■ JNDI:采用服务器提供的JNDI技术实现,来获取DataSource对象,不同的服务器所能拿到DataSource是不一样。如果不是web或者maven的war工程,JNDI是不能使用的。 ● property可以是(最多只包含以下两个属性): ○ initial_context 这个属性用来在 InitialContext 中寻找上下文(即,initialContext.lookup(initial_context))这是个可选属性,如果忽略,那么将会直接从 InitialContext 中寻找 data_source 属性。 ○ data_source 这是引用数据源实例位置的上下文路径。提供了 initial_context 配置时会在其返回的上下文中进行查找,没有提供时则直接在 InitialContext 中查找。 ● mappers:在mappers标签中可以配置多个sql映射文件的路径。 ● mapper:配置某个sql映射文件的路径 ○ resource属性:使用相对于类路径的资源引用方式 ○ url属性:使用完全限定资源定位符(URL)方式

    03

    JDBC 进阶操作

    Blob(Binary Long Object)是二进制长对象的意思,Blob 列通常用于存储大文件,典型的 Blob 内容是一张图片或一个声音文件,由于它们的特殊性,必须使用特殊的方式来存储。使用 Blob 列可以把图片、声音等文件的二进制数据保存在数据库里,并可以从数据库里恢复指定文件。   如果需要将图片插入数据库,显然不能直接通过普通的 SOL 语句来完成,因为有一个关键的问题,Blob 常量无法表示。所以将 Blob 数据插入数据库需要使用 PreparedStatement,该对象有一个方法:setBinaryStream(int parameterlIndex,InputStream x),该方法可以为指定参数传入二进制输入流,从而可以实现将 Blob 数据保存到数据库的功能。   当需要从 ResultSet 里取出 Blob 数据时,可以调用 ResultSet 的 getBlob(int columnIndex) 方法,该方法将返回一个 Blob 对象,Blob 对象提供了getBinaryStream() 方法来获取该 Blob 数据的输入流,也可以使用 Blob 对象提供的 getBytes() 方法直接取出该 Blob 对象封装的二进制数据。

    03
    领券