mybaties入门---环境搭建
Posted 入道弥深,所见弥大
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybaties入门---环境搭建相关的知识,希望对你有一定的参考价值。
1.以maven、springboot为基础脚手架。
2.新建一个maven项目
3.前端页面bootstrap、bootstrap-table、layer、jquery
4.后端mybatis、工具类Guava、参数校验validation等
5.controller类上必须加@Validate,参数校验@NotBlank 才能生效。
@RestController
@RequestMapping("/webApi")
@Validated
public class ApiController {
@GetMapping("allUser")
public List<AppUser> allUser(@NotBlank String name){
return null;
}
}
6.mybatis sql 标签的作用
<sql id="dto">
id,name,phone,email,aboutme,avatar,type,create_time,enable,agency_id
</sql>
<select id="getUser" resultType="AppUser">
SELECT <include refid="dto" />FROM USER order by id desc
</select>
7.mybatis 模糊查询 bind 标签的作用可以用来绑定变量,可防止sql 注入
<select id="queryUser" resultType="AppUser">
select
<include refid="dto" /> from USER where
<if test="phone != null and phone != \'\'">
<bind name="uphone" value="\'%\'+phone+\'%\'"/>
phone like #{uphone}
</if>
<if test="name != null and name != \'\'">
<bind name="uname" value="\'%\'+name+\'%\'"/>
and name like #{uname}
</if>
order by id desc
</select>
8.动态sql 标签,where \\ if test="",这里注意下,在代码里做了控制,每次只允许用一个参数不为空,两个为空,所以这里没加 and
<select id="getUserByEmPhoneName" parameterType="java.util.HashMap" resultType="AppUser">
select
<include refid="dto" /> from USER where
<if test="name !=null and name != \'\'">
name = #{name}
</if>
<if test="email != null and email != \'\'">
email = #{email}
</if>
<if test="phone != null and phone != \'\'">
phone = #{phone}
</if>
</select>
9.新增记录的时候主键自增、前提数据得支持自增,使用useGeneratedKeys属性
<insert id="insert" parameterType="AppUser" useGeneratedKeys="true">
insert into USER(name,phone,email,passwd,avatar,type,create_time,enable,aboutme)
values (#{name},#{phone},#{email},#{passwd},#{avatar},#{type},#{createTime},#{enable},#{aboutme})
</insert>
11.mybatis foreach标签的使用
<insert id="deleteUser" parameterType="java.util.List">
UPDATE USER SET enable = \'1\' where id in
<foreach item="item" collection="list" separator="," open="(" close=")" index="">
#{item}
</foreach>
</insert>
12.案例完成简单增删改查,需求如下:
案例demo下载地址
13.nginx作为本地文件服务器的配置--readme.txt
以上是关于mybaties入门---环境搭建的主要内容,如果未能解决你的问题,请参考以下文章
MybatisMybatis入门——Mybatis开发环境的搭建