| 一、新手入门搭建框架
1、导入mybatis下的libs下的所有jar包+mybatis和核心包

讯享网
2、由于MyBatis默认使用log4j输出日志信息,所以如果要查看控制台的输出SQL语句,那么就需要在classpath路径下配置其日志文件。在项目的src目录下创建log4j.properties文件。

# Global logging configuration log4j.rootLogger=DEBUG, stdout # MyBatis logging configuration... log4j.logger.com.creatorblue=DEBUG # Console output... log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n
讯享网
3、创建实体类

4、创建映射文件UserMapper.xml
讯享网配置模板 <?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.creatorblue.mapper.CustomerMapper"> <select id="findCustomerById" parameterType="Integer" resultType="com.creatorblue.po.Customer"> select * from t_customer where id = #{id} </select> </mapper>
parameterType接收参数类型,resultType返回值类型,增、改需要返回类型


<?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.createblue.mapper.UserMapper"> <!--查询 --> <select id="queryAll" parameterType="Integer" resultType="com.createblue.bean.User"> select * from user </select> <!--模糊查询 --> <select id="findUserByName" parameterType="String" resultType="com.createblue.bean.User"> select * from user where user_name like '%${value}%' </select> <!--单条查询 --> <select id="selectOne" parameterType="Integer" resultType="com.createblue.bean.User" > select * from user where user_id=#{userId} </select> <!--新增 --> <insert id="save" parameterType="com.createblue.bean.User"> insert into user (user_name,user_sex,user_password) value(#{userName},#{userSex},#{userPassword}) </insert> <!--修改 --> <update id="update" parameterType="com.createblue.bean.User"> update user set user_name = #{userName},user_sex =#{userSex},user_password = #{userPassword} where user_id=#{userId} </update> <!--删除 --> <delete id="del" > delete from user where user_id=#{userId} </delete> <!--查询多种条件 --> <select id="selectAll" parameterType="map" resultType="com.createblue.bean.User"> select * from user <where> <if test="userName != null and userName !=''"> and user_name = #{userName} </if> <if test="userSex != null and userSex !=''"> and user_sex = #{userSex} </if> </where> </select> <!-- 批量删除 --> <delete id="dels" parameterType="List" > delete from user where user_id in <foreach collection="array" open="(" close=")" separator="," item="id"> #{id} </foreach> </delete> </mapper>
5、创建MyBatis的核心配置文件mybatis-config.xml

讯享网<?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> <settings> <setting name="mapUnderscoreToCamelCase" value="true" /> </settings> <environments default="mysql"> <environment id="mysql"> <transactionManager type="JDBC" /> <dataSource type="POOLED"> <property name="driver" value="com.mysql.jdbc.Driver" /> <property name="url" value="jdbc:mysql://localhost:3306/local" /> <property name="username" value="root" /> <property name="password" value="root" /> </dataSource> </environment> </environments> <mappers> <mapper resource="com/createblue/mapper/UserMapper.xml"/> </mappers> </configuration>
6、测试

public static void main(String[] args) throws Exception{ InputStream inputStream =Resources.getResourceAsStream("mybatis-config.xml"); SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); SqlSession sqlSession = sqlSessionFactory.openSession(); //新增操作 // User add = new User(); // add.setUserName("as"); // add.setUserPassword("22222"); // add.setUserSex("男"); // sqlSession.insert("com.createblue.mapper.UserMapper.save", add); //修改操作 // User update = new User(); // update.setUserId(1); // update.setUserName("hh"); // update.setUserPassword("8888"); // update.setUserSex("nv"); // sqlSession.update("com.createblue.mapper.UserMapper.save", update); //删除操作 // sqlSession.update("com.createblue.mapper.UserMapper.del", 1); /* 设置自动提交 */ sqlSession.commit(); //查询所有操作 // List<User> customer = sqlSession.selectList("com.createblue.mapper.UserMapper.queryAll"); //查询单条 Object selectOne = sqlSession.selectOne("com.createblue.mapper.UserMapper.selectOne", 9); //模糊查询 //List<Object> selectList = sqlSession.selectList("com.createblue.mapper.UserMapper.findUserByName","h"); System.out.println(selectOne.toString()); sqlSession.close(); }
注意:新增时,控制台会新增成功,但数据库会没有数据,只需配置允许自动提交
讯享网sqlSession.commit();
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/25190.html