mybatis入门
来源:互联网 发布:软件性能指标描述 编辑:程序博客网 时间:2024/06/15 07:51
mybatis是什么?
- mybatis是一个持久层的框架,是apache下的项目
- mybatis能够将输入参数自动映射,能够将查询结果灵活地映射成java对象
配置mybatis
- 添加数据库的驱动包和mybatis的核心包以及依赖包
- 在classpath中添加log4j.properties文件
配置log4j.properties
`# Global logging configuration'# 在开发情况下日志级别要设置成ˆDEBUG,生产环境设置成info或者errorlog4j.rootLogger=DEBUG, stdout'# Console outputlog4j.appender.stdout=org.apache.log4j.ConsoleAppenderlog4j.appender.stdout.layout=org.apache.log4j.PatternLayoutlog4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n`
添加全局配置SqlMapConfig.xml配置文件用于配置SqlMapping
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3.0 //EN ""http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration><environments default="database1"><environment id="database1"> <transactionManager type="JDBC" /> <dataSource type="POOLED"> <property name="driver" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/mybatis"/> <property name="username" value="root" /> <property name="password" value="root" /> </dataSource></environment></environments><!-- 加载映射文件 --><mappers><mapper resource="sqlmap/User.xml"/></mappers>
在classpath目录下创建一个sqlmap包,并且配置单个User.xml映射文件
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0 //EN ""http://mybatis.org/dtd/mybatis-3-mapper.dtd"><!-- 命名空间,作用对sql进行分类管理 --><mapper namespace="test"><!-- 在配置文件中配置很多的sql语句 --><!-- 需求:通过id查询用户记录 --><!-- 通过select执行数据查询id:标识映射文件的sql将sql语句封装到mappedStatement对象中,所以将id称为statement的id`#{}表示一个占位符`parameterType:指定输入参数的类型`#{id}:id表示我们输入的参数,参数的名称就是id`resultType:指sql输出的的结果所映射的java对象类型 select将单条记录映射成java对象 --><select id="findUserById" parameterType="int" resultType="com.aikeri.mybatis.bean.User">SELECT * FROM user WHERE id=#{id}</select><!-- 查询多条数据resultType:是单条数据所映射的java数据类型${}拼接sql字符串使用${}可能会引起sql注入${}中只能使用value eg:${value}--><select id="findUserByName" parameterType="java.lang.String" resultType="com.aikeri.mybatis.bean.User">SELECT * FROM user WHERE username LIKE '%${value}%'</select></mapper>`
在SqlMapConfig中加载映射文件
<!-- 加载映射文件 --><mappers> <mapper resource="sqlmap/User.xml"/></mappers>
在java中用mybatis进行数据库操作
//全局配置文件路径 String sqlMapConfig="SqlMapConfig.xml"; //通过流的方式获取得配置文件信息 InputStream inputStream=Resources.getResourceAsStream(sqlMapConfig); //创建会话工厂 System.out.println(inputStream); SqlSessionFactory ssf=new SqlSessionFactoryBuilder().build(inputStream); System.out.println(ssf); //通过会话工厂得到SqlSession SqlSession ss=ssf.openSession(); //通过SqlSession操作数据库,test.findUserById是映射文件的中select的id User user=ss.selectOne("test.findUserById", 1); System.out.println(user.getAddress()); ss.close();//关闭会话释放资源
小结
parameterType和resultType
- parameterType是在映射文件中指定的参数输入类型
- resultType是在映射文件中指定的输入结果类型
‘#{}和${}
- #{}表示一个占位符
- ${}是sql拼接符号,会引起sql注入,不建议使用
- selectOne和selectList
- selectOne查询出一条数据进行映射
- selectList查询出多条数据进行映射
阅读全文
0 0
- MyBatis入门
- MyBatis 入门
- myBatis入门
- MyBatis入门
- mybatis入门
- MyBatis入门
- Mybatis入门
- Mybatis入门
- Mybatis入门
- mybatis入门
- Mybatis入门
- mybatis入门
- mybatis入门
- mybatis 入门
- mybatis入门
- Mybatis入门
- mybatis入门
- MyBatis入门
- C#泛型集合类(3)
- 同步于中国天气网的第三方天气API(Json,XML)/可套用Demo in Java
- CentOS下SSH配置无密码登录
- 程序设计你不知道的几个原则
- ListView控件功能全解析
- mybatis入门
- 【Android学习笔记系列】AsyncTask的使用和介绍(获取网络图片与进度条实例)
- Two big numbers to multiply
- 安卓RecyclerView万能适配器之baserecyclerviewadapterhelper详解
- Linux开机启动程序详解
- CodeChef SnakeDown2017 E解题报告
- JAVA代码块非静态代码块与静态代码块构造函数比较
- Effective Objective-C 2.0 总结(四)
- 1066. 图像过滤(15)