linux怎么查看本机内存大小
290
2022-09-05
MyBatis基础②
文章目录
MyBatisX配置文件完成增删改查
查询所有数据
编写接口方法在sql映射文件中编写SQL语句执行方法测试
查询某一条数据
参数占位符parameterType使用SQL语句中特殊字段处理
MyBatisX
MybatisX 是一款基于 IDEA 的快速开发插件,为效率而生。主要功能
XML映射配置文件 和 接口方法 间相互跳转根据接口方法生成 statement
statement就是映射文件里面的sql语句
注意:安装完毕后需要重启IDEA
配置文件完成增删改查
我们以如下的表作为例子:
核心思想套路:
如何写对应的sql语句完成这个功能要不要参数完成之后返回什么样的结果
查询所有数据
步骤:
步骤详解:
编写接口方法
在这之前先要创建好映射文件,并且这个映射文件在resources文件夹中的位置,要跟java中的保持一致。并且最好映射文件的名字和接口名一样(不区分大小写),这样就可以不用在mybatis配置文件中重新定义映射文件路径(直接包扫描简化SQL映射文件的加载)。
接口方法:
public interface BrandMapper { List
在sql映射文件中编写SQL语句
直接运用插件的跳转来到sql映射文件中。
这个地方有几个注意点:
如果想要在写sql语句的时候有提示。先要在设置中设置MySQL方言,再在右侧连接数据库在实体类属性名和数据库表列名不一样的时候,会出现不能自动封装数据的情况。
不能自动封装数据的三种解决办法: ①起别名
缺点:每次查询都要定义一次别名
②sql片段
缺点:不灵活
③resultMap创建映射关系
resultMap: 1. 定义
执行方法测试
public class Try1 { public static void main(String[] args) throws Exception { //获取SqlSessionFactory对象 String resource = "mybatis-config.xml"; //此处填写相对于resources的路径 InputStream inputStream = Resources.getResourceAsStream(resource); SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); //用SqlSessionFactory对象制造SqlSession对象 SqlSession sqlSession = sqlSessionFactory.openSession();// //用SqlSession对象来执行sql语句// List
查询某一条数据
使用场景:接收一条id,将这条数据的详细信息返回。
步骤: ①编写接口方法
public interface BrandMapper { List
②在sql映射文件中编写SQL语句
此处我们要了解三个知识点:
参数占位符
mybatis提供了两种参数占位符:
#{} :执行SQL时,会将 #{} 占位符替换为?,将来自动设置参数值。${} :拼接SQL。底层使用的是Statement,因为是直接替换,会存在SQL注入问题。
使用时机:
参数传递,都是用#{}如果要对表名、列名进行动态设置,只能使用${}进行sql拼接
parameterType使用
对于有参数的mapper接口方法,我们在映射配置文件中应该配置 ParameterType 来指定参数类型。只不过该属性都可以省略。如下图:
SQL语句中特殊字段处理
以后肯定会在SQL语句中写一下特殊字符,比如某一个字段大于某个值,如下图
可以看出报错了,因为映射配置文件是xml类型的问题,而 > < 等这些字符在xml中有特殊含义,所以此时我们需要将这些符号进行转义,可以使用以下两种方式进行转义
转义字符(特殊字符较少时使用)下图的< 就是 < 的转义字符。
(特殊字符较多时使用)
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~