1.直接调用SQL语句,容易写错它的全限定名(命名空间+SQL语句id),写错后IDE也不能给出提示。
2.更好的方式是定义与SQL映射文件对应的接口(接口的全限定名,即包名+类名,与邪社文件的namespace相同),在接口中声明与SQL语句对应的方法(方法的名字、蚕食的类型和返回类型与SQL语句的id、parameterType以及返回类型一致),也就是把方法与SQL语句绑定起来
3.然后通过接口的对象(通过SqlSession获得)来调用这些方法,实际上最终还是调用这些SQL语句。这样就能避免输入很长的SQL语句全限定名,在调用方法是还能利用IDE的代码自动补全功能,在写错方法时IDE也能给出提示
一.创建工程(同上一章)
[img]
[/img]
此目录多了dao接口
二.创建实体
private int id;
private String name;
private String password;
private String telPhone;
private String email;
set、get......
三.mybatis配置文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<!-- 此配置文件遵循一定的顺序
properties,settings,typeAliases,typeHandlers,objectFactory,objectWrapperFactory,plugins,environments,databaseIdProvider,mappers
-->
<!-- 方式一 -->
<!--
<typeAliases>
<typeAlias type="com.yxhweb.entity.User" alias="user" />
</typeAliases>
-->
<!-- 方式二(开发使用) -->
<typeAliases>
<package name="com.yxhweb.entity"/>
</typeAliases>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC" />
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3308/db_mybatis" />
<property name="username" value="root" />
<property name="password" value="root" />
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/yxhweb/mappers/UserMapper.xml" />
<!-- <package name="com.yxhweb.mappers" /> -->
</mappers>
</configuration>
四.编写mybatis实现
<?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.yxhweb.dao.UserDao">
<!-- 添加 -->
<insert id="add" useGeneratedKeys="true" keyColumn="id" keyProperty="id" parameterType="user">
INSERT INTO t_user(NAME,PASSWORD,telPhone,email) VALUES(#{name},#{password},#{telPhone},#{email})
</insert>
<!-- 删除 -->
<insert id="delete" parameterType="int" >
delete from t_user where id=#{id}
</insert>
<!-- 根据id查询 -->
<select id="getById" parameterType="int" resultType="user">
select id,name,password,telPhone,email from t_user where id=#{id}
</select>
<!-- 修改 -->
<update id="update" parameterType="user">
update t_user set name=#{name},password=#{password},telPhone=#{telPhone},email=#{email} where id=#{id}
</update>
<!-- 查询 全部-->
<resultMap id="UserResultMap" type="user">
<id property="id" column="id"/>
<result property="name" column="name"/>
<result property="password" column="password"/>
<result property="telPhone" column="telPhone"/>
<result property="email" column="email"/>
</resultMap>
<select id="getAll" parameterType="int" resultType="UserResultMap">
select id,name,password,telPhone,email from t_user
</select>
</mapper>
此文件和上一章的区别
1.namespace:com.yxhweb.dao.UserDao对应接口路径
2.sql 的id对应接口中的方法
源码地址:链接:http://pan.baidu.com/s/1gevmEBL 密码:raao
- 大小: 16.1 KB
分享到:
相关推荐
它可以帮助我们根据数据库中表的设计生成对应的实体类,xml Mapper文件,接口以及帮助类(也就是我们可以借助该类来进行简单的CRUD操作),这样就避免了我们每使用到一张表的数据就需要手动去创建对应的类和xml文件,...
honlly-mybatis-prod mybatis mapper的封装
MybatisAnnotation工具基于注解的Mybatis代码生成工具,Mybatis-3.5可用。功能:自动生成PO和DAO的Java类,DAO支持分页查询,根据id查询,分割插入,批量插入,更新,替换删除,批量删除。 UserDao.java内容如下: @...
不用写任何代码,就可以对表完成增删改查; 一套API支持对所有表的增删改查CRUD操作;...基于Spring Boot + Mybatis实现的通用增删改查服务API; 该模块提供了通用的数据库DDL操作接口和通用的业务数据表CRUD操作。
入口继承基类的Controller,即可完成基础的增删改查操作常用数据结构的封装与基础的CRUD实现(左右值预遍历树、普通树等)统一的认证入口,方便的安全认证扩展,可实现多种方式的认证,且支持表单与接口灵活的权限...
项目基于mybatis-3.2.1功能一 通用CRUD数据库操作。通过MybatisRepository接口和MybatisOperations提供了一些通用的CURD数据库操作。二 分页插件。能过PagePlugin提供自动分页,目前支持MySQL和PostgreSQL数据库的...
后端使用SpringBoot+MybatisPlus+MySQL实现,主要包括CourseController、StudentController、CourseService、StudentService等,实现课程CRUD、学生CRUD等接口。 前端使用Vue+ElementUI实现,主要包括Course.vue、...
- 提供CrudService接口,对增删改查进行封装,代码更简洁 - 页面交互使用Vue2.x,极大的提高了开发效率 - 完善的部门管理及数据权限,通过注解实现数据权限的控制 - 完善的XSS防范及脚本过滤,彻底杜绝XSS攻击 - ...
通过定义实体类和Mapper接口,可以轻松地进行数据库的CRUD操作。 学生管理系统的功能包括以下几个方面: 1. 学生信息录入:管理员可以通过系统的界面输入学生的基本信息,如姓名、年龄、性别、学号等。 2. 学生...
它简化了基于 MyBatis 框架进行持久层开发的过程,提供了许多增强功能,使得开发者能够更高效地编写数据库相关的代码。 MybatisPlus 提供的一些主要功能包括: 简化的 CRUD 操作:MybatisPlus 提供了一种简化的...
mybatis-plus-crud|[基于mybatisplus实现数据库增、册、改、查](https://github.com/smltq/spring-boot-demo/blob/master/mybatis-plus-crud) encoder|[主流加密算法介绍、用户加密算法推荐]...
项目基于mybatis-3.2.1功能一 通用CRUD数据库操作。通过MybatisRepository接口和MybatisOperations提供了一些通用的CURD数据库操作。二 分页插件。能过PagePlugin提供自动分页,目前支持MySQL和PostgreSQL数据库的...
基于Spring Boo,Security,MyBatis,Thymelea,Activiti 快速开发平台。用户是系统操作者,该功能主要完成系统用户配置。配置系统菜单,操作权限,按钮权限标识等。角色菜单权限分配、设置角色按机构进行数据范围...
基于MyBatis拦截器实现主从数据源的动态切换 支持类、方法级别添加注解 SwitchDataSource 来手动切换目标数据源 可实现 DynamicDataSourceStrategy 接口并自定义动态数据源选择策略。默认提供轮询、随机两种 集成...
基于SSM思想实现的SpringBoot框架,用于提供web服务,SpringBoot是在SpringMvc的基础上提出了约定大于配置的思想,以约定的形式省去了SpringMvc的许多配置项,这些配置项可以以约定好的名称以类似插件的方式接入到...
“ Rocket-API”基于spring boot的API敏捷开发框架,服务端50%以上的功能只需要写SQL或mongodb原始执行脚本即可完成开发,另外30%同时不停的完善公共组件,此类文件上传,下载,生成,预览,分页等等通过一二行...
:rocket: Code-Generate是一个基于原生Mysql & SpringBoot & Mybatis 的代码生成器,建表之后即可完全解放双手,1秒钟构建CRUD接口以及漂亮的LayUi前端界面,同时支持在不改动任何老代码的情况下拓展新的模板,适合...
系统接口:根据业务代码自动生成相关的api接口文档。 服务监控:监视当前系统CPU、内存、磁盘、堆栈等相关信息。 缓存监控:对系统的缓存查询,删除、清空等操作。 在线构建器:拖动表单元素生成相应的HTML代码。 ...
- 一站式支付解决方案,统一下单接口,支持支付宝、微信、网银等多种支付方式。不涉及业务的纯粹的支付平台。 - 统一下单(统一下单接口、统一扫码)、订单管理、数据分析、财务报表、商户管理、渠道管理、对账系统...