官网写的比较具体,可以查看以下的网站:
http://www.mybatis.org/mybatis-3/zh/configuration.html
另外,实际用到标准的CRUD的操作和查询列表,
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.iteye.tom.dao.AuthItemRecordDao"> <sql id="requestAllFields"> <![CDATA[ id, record_time AS recordTime, source_code AS sourceCode, userid, auth_item_id AS authItemId, isvalid, last_status_time AS lastStatusTime ]]> </sql> <sql id="whereClause"> <where> <if test="null!=id">AND id = #{id}</if> <if test="null!=sourceCode and ''!=sourceCode">AND source_code = #{sourceCode}</if> <if test="null!=userid and ''!=userid">AND userid = #{userid}</if> <if test="null!=authItemId and ''!=authItemId">AND auth_item_id = #{authItemId}</if> <if test="null!=isvalid and ''!=isvalid">AND isvalid = #{isvalid}</if> <include refid="extendedWhereClause" /> </where> </sql> <insert id="add" useGeneratedKeys="true" parameterType="com.iteye.tom.bean.AuthItemRecord" keyProperty="id"> INSERT INTO tab_auth_item_record <trim prefix="(" suffix=")" prefixOverrides=","> <if test="null!=recordTime">,record_time</if> <if test="null!=sourceCode and ''!=sourceCode">,source_code</if> <if test="null!=userid and ''!=userid">,userid</if> <if test="null!=authItemId and ''!=authItemId">,auth_item_id</if> <if test="null!=isvalid and ''!=isvalid">,isvalid</if> <if test="null!=lastStatusTime">,last_status_time</if> </trim> VALUES <trim prefix="(" suffix=")" prefixOverrides=","> <if test="null!=recordTime">,#{recordTime}</if> <if test="null!=sourceCode and ''!=sourceCode">,#{sourceCode}</if> <if test="null!=userid and ''!=userid">,#{userid}</if> <if test="null!=authItemId and ''!=authItemId">,#{authItemId}</if> <if test="null!=isvalid and ''!=isvalid">,#{isvalid}</if> <if test="null!=lastStatusTime">,#{lastStatusTime}</if> </trim> </insert> <update id="update" parameterType="com.iteye.tom.bean.AuthItemRecord"> UPDATE tab_auth_item_record <trim prefix="SET" prefixOverrides=","> <if test="null!=recordTime">,record_time = #{recordTime}</if> <if test="null!=sourceCode and ''!=sourceCode">,source_code = #{sourceCode}</if> <if test="null!=userid and ''!=userid">,userid = #{userid}</if> <if test="null!=authItemId and ''!=authItemId">,auth_item_id = #{authItemId}</if> <if test="null!=isvalid and ''!=isvalid">,isvalid = #{isvalid}</if> <if test="null!=lastStatusTime">,last_status_time = #{lastStatusTime}</if> <include refid="extendedUpdateSql" /> </trim> WHERE id = #{id} </update> <select id="query" parameterType="com.iteye.tom.bean.AuthItemRecord" resultType="com.iteye.tom.bean.AuthItemRecord"> SELECT <include refid="requestAllFields"/> FROM tab_auth_item_record <include refid="whereClause" /> <include refid="extendedOrderByClause" /> <if test="null!=requestOffset"> LIMIT #{requestOffset}, #{requestCount} </if> </select> <select id="get" parameterType="com.iteye.tom.bean.AuthItemRecord" resultType="com.iteye.tom.bean.AuthItemRecord"> SELECT <include refid="requestAllFields"/> FROM tab_auth_item_record <include refid="whereClause" /> LIMIT 1 </select> <select id="getById" parameterType="long" resultType="com.iteye.tom.bean.AuthItemRecord"> SELECT <include refid="requestAllFields"/> FROM tab_auth_item_record WHERE id = #{id} </select> <select id="count" parameterType="com.iteye.tom.bean.AuthItemRecord" resultType="int"> SELECT COUNT(1) FROM tab_auth_item_record <include refid="whereClause" /> </select> <delete id="deleteByUserid" parameterType="com.iteye.tom.bean.AuthItemRecord" > DELETE FROM tab_auth_item_record WHERE userid = #{userid} </delete> <!-- 扩展的更新等语句(自定义)--> <sql id="extendedUpdateSql"> <if test="null!=extendedParameter"> </if> </sql> <!-- 扩展的条件过滤语句(自定义)--> <sql id="extendedWhereClause"> <if test="null!=extendedParameter"> </if> </sql> <!-- 扩展的排序等语句(自定义)--> <sql id="extendedOrderByClause"> <if test="null!=extendedParameter"> </if> </sql> </mapper>
相关推荐
"spring和Mybatis的xml配置文件提示约束包"这个主题,主要是关于在XML配置文件中使用的DTD(Document Type Definition)文档类型定义,它为XML文件提供了结构约束和语法规范。 DTD是一种元语言,用于定义XML文档的...
接下来,我们将深入探讨这个全局配置文件中的各个标签及其具体使用。 1. **`<configuration>`**:这是全局配置文件的根标签,包含了所有其他的配置元素。 2. **`<properties>`**:用于加载外部属性文件,例如...
这些文件定义了MyBatis配置文件(mybatis-3-config.xml)和映射文件(mapper.xml)的元素、属性和它们的顺序。 首先,`mybatis-3-config.dtd`是MyBatis配置文件的DTD。它定义了如下的主要元素: 1. `...
在MyBatis的核心配置文件mybatis-config.xml中,我们需要使用元素来指定映射文件的位置。例如:<mappers> <mapper resource="mapper/UserMapper.xml" /> 二、找不到映射文件的问题 然而,在某些情况下,即使我们...
Mybatis Generator是一款强大的Java代码生成工具,它能够自动根据数据库表结构生成Mybatis的Mapper接口、XML映射文件以及实体类,极大地提高了开发效率。在实际的开发过程中,手动编写这些文件不仅耗时,还容易出错...
同时,为了更好地利用插件,开发者还需要熟悉MyBatis的配置和Mapper接口的使用方式,以及XML映射文件中的各种元素和属性。 总之,MyBatis_XML插件是Java开发中针对MyBatis框架的一个强大辅助工具,它简化了XML文件...
MyBatis提供了强大的动态SQL功能,使得开发者能够在XML映射文件中编写灵活多变的SQL,以适应不同的业务需求。此外,MyBatis还允许将结果映射到Java对象,简化了数据访问层的代码。 在压缩包子文件的文件名"mybatis-...
5. 配置映射关系:在MyBatis的配置文件中,需要添加新生成的Mapper文件路径,以使MyBatis知道如何查找和使用这些映射。 6. 自定义优化:虽然自动化工具能大大减轻工作量,但有时可能需要对生成的代码进行调整,比如...
- **Mapper XML文件生成**:为每个DAO接口生成对应的XML映射文件,包含SQL语句和结果映射配置。 - **Service层代码生成**:虽然没有直接提及,但通常这类工具也会提供生成Service层代码的选项,以便于实现业务逻辑。...
XML提示文件中的#{id}是一种参数占位符,MyBatis会自动进行参数绑定,防止SQL注入攻击。此外,MyBatis还支持动态SQL,通过`<if>`, `<choose>`, `<when>`, `<otherwise>`, `<where>`, `<set>`, `<foreach>`等标签,...
2. 代码关联:查看一个Java方法时,可以迅速找到它在XML配置文件中的映射,便于理解数据访问逻辑。 3. 提升开发体验:减少在源码和配置文件之间反复切换的困扰,提升开发速度和准确性。 此外,了解MyBatis框架的...
在Maven构建过程中,执行`mvn mybatis-generator:generate`命令,MyBatis Generator会根据配置文件中的设置自动生成相应的代码。 关于`mysql-connector-java-8.0.11.jar`,这是MySQL的Java连接器,它是连接到MySQL...
4. **配置文件**:在使用自动生成工具时,我们需要编写一个配置文件(通常是XML格式),在这个文件中指定数据库连接信息、需要生成的表、生成的文件路径等参数。 5. **数据库表反向工程**:自动生成工具会进行...
这样,MyBatis Generator就会根据配置文件中的设置,自动连接数据库,读取表结构,然后生成对应的实体类、Mapper接口和XML配置文件。生成的实体类会包含数据库字段对应的属性和getter/setter方法,Mapper接口包含...
Mapper映射配置文件是MyBatis的核心组成部分,用于定义SQL查询和结果映射。 首先,我们来看一下Mapper的XML配置文件。Mapper的XML文件通常放在项目的`resources`目录下,以`.xml`为扩展名,与对应的Java接口处于...
综上所述,MyBatis 的 XML 配置文件是实现 SQL 映射和 Java 代码解耦的关键。通过定义映射文件,我们可以方便地管理数据库操作,提高代码的可读性和可维护性。在 "mybatis_test01" 这个例子中,你可以进一步学习如何...
总结,MyBatis通过XML配置文件实现了SQL语句的封装和结果映射,使得开发者可以更专注于业务逻辑,而不是繁琐的JDBC代码。`mybatis-config.xml`是全局配置,`UserMapper.xml`是特定Mapper的配置。在实际应用中,你...
MyBatis支持在XML映射文件中使用条件标签实现动态SQL,如`<if>`, `<choose>`, `<when>`, `<otherwise>`, `<where>`, `<trim>`, `<set>`等。这些标签允许根据特定条件拼接SQL语句,极大地提高了代码的灵活性。 7. *...