MyBatis环境搭建:web项目的创建流程
2018-12-28 23:08
357 查看
MyBatis:web项目的创建
作用:对底层的JDBC进行封装
优点:使用 MyBatis 不用编写Dao实现类,只用写sql命令就好
一、环境搭建
- 导jar包
- 建数据库表
create table `user`( `id` varchar(64) NOT NULL COMMENT 'ID', `name` varchar(255) NOT NULL COMMENT '姓名', `age` int NOT NULL COMMENT '年龄', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户表';
- 编写实体类
public class UserEntity { private String id; // ID private String name; // 姓名 private String age; // 年龄 //set、get、toString方法 ...... }
- 编写Mapper文件
文件作用:编写需要执行的SQL命令
在框架的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="dao.UserDao"> <sql id="userColumns"> a.id AS "id", a.name AS "name", a.age AS "age" </sql> <sql id="userJoins"></sql> <!-- 查所有用户:select * from user; --> <select id="findAllList" resultType="User"> SELECT <include refid="userColumns"/> FROM user a <include refid="userJoins"/> </select> <!-- 查 未删除 的用户: select * from user where del_flag = 0; --> <select id="findList" resultType="User"> SELECT <include refid="userColumns"/> FROM user a <include refid="userJoins"/> <where> a.del_flag = #{DEL_FLAG_NORMAL} </where> </select> <!-- 根据 ID 查用户:select * from user where id = 1; --> <select id="get" resultType="User"> SELECT <include refid="userColumns"/> FROM user a <include refid="userJoins"/> WHERE a.id = #{id} </select> <!-- 添加用户: insert into user values(default, 'xxacker', 18); --> <insert id="insert"> INSERT INTO user(id, name, age) VALUES (#{id}, #{name}, #{age}) </insert> <!-- 更新用户:update user set name = 'xxa', age = 19 where id = 1; --> <update id="update"> UPDATE user SET name = #{name}, age = #{age} WHERE id = #{id} </update> <!-- 删除用户:delete from user where id = 1; --> <update id="delete"> DELETE FROM user WHERE id = #{id} </update> </mapper>
- 在src下新建全局配置文件(编写JDBC)mybatis.xml文件
5.1 在全局配置文件中引入dtd或scheme
导入dtd后,在书写web.xml文件时会有提示。。。
xml文件不导入dtd文件,没有提示。。。
<?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> <!-- changes from the defaults --> <setting name="lazyLoadingEnabled" value="false" /> </settings> <typeAliases> <!-- 这里给实体类取别名,方便在mapper配置文件中使用 --> <typeAlias alias="User" type="entity.UserEntity"/> </typeAliases> <!-- default 引用 environment 的 id,当前所使用的环境 --> <environments default="default"> <!-- 声明可以使用的环境 --> <environment id="default"> <!-- 使用原生 JDBC 事务 --> <transactionManager type="JDBC"></transactionManager> <dataSource type="POOLED"> <property name="driver" value="com.mysql.jdbc.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/ssm"/> <property name="username" value="root"/> <property name="password" value="smallming"/> </dataSource> </environment> </environments> <!-- 这里添加的是执行CRUD操作的接口对应的配置文件(xml文件) --> <mappers> <mapper resource="com/bjsxt/mapper/FlowerMapper.xml"/> </mappers> </configuration>
- 测试文件:
//相当于Service层 public class Test{ private static UserDao userDao; private static Reader reader; private static SqlSessionFactory sessionFactory; private static SqlSession session = null; public static void main(String[] args){ // Session Factory Initialize("mybatis_config.xml"); try{ List<UserEntity> userList = userDao.findAllList(); for(UserEntity user:userList){ System.out.println("ID:" + user.getId() +"Name:" + user.getName() +"Age:" + user.getAge()); } session.close(); } catch (Exception e) { e.printStackTrace(); } } private static void Initialize(String configFile){ try { //通过流的方式,把 MyBatis 的配置读入内存 reader = Resources.getResourceAsReader(configFile); //加载配置文件 //前面是工厂-> 实例化对象时,是构建者设计模式,标识:Builder() sessionFactory = new SqlSessionFactoryBuilder().build(reader); //读取配置信息 session = sessionFactory.openSession(); //session中封装了全部的CRUD userDao = session.getMapper(UserDao.class); //相当于一个实现抽象类UserDao } catch (Exception e) { e.printStackTrace(); } } }
相关文章推荐
- MyBatis学习总结(八)——Mybatis3.x与Spring4.x整合 一、搭建开发环境 1.1、使用Maven创建Web项目 执行如下命令: mvn archetype:create
- web项目环境搭建的一般流程
- 使用ionic+cordova WebApp项目环境搭建与项目创建
- 从零开始搭建maven+springmvc+mybatis web项目(3)---springmvc流程测试
- 从零开始搭建maven+springmvc+mybatis web项目(1)---maven项目目录创建
- Spring 、SpringMVC、Mybatis、MySQL、Maven、Tomcat搭建JavaWeb项目流程---学习笔记(一)工具准备及环境配置
- 开发环境搭建, java web SSM SpringBoot+Mybatis SpringCloud等项目搭建
- maven环境搭建及创建spring+springmvc+mybatis项目(eclipse)
- Java WEB开发环境搭建以及创建Maven Web项目
- Vue-webpack环境的搭建及项目的创建
- SpringMVC,MyBatis项目中兼容Oracle和MySql的解决方案及其项目环境搭建配置、web项目中的单元测试写法、HttpClient调用post请求等案例
- Android JNI(NDK)简单学习(环境搭建,创建一个JNI项目的基本流程)
- WEB应用环境的搭建(二)Eclipse配置Tomcat步骤及创建web项目
- Web开发、测试环境搭建(LAMP、SVN服务器、Laravel项目创建)
- IDEA搭建SpringBoot+Maven+Mybatis+MySQL-Web项目流程
- 创建项目文件夹的一般步骤(Expree+mongodb搭建Web开发项目环境)
- (二)从零搭建maven+spring+mybatis项目之web项目创建
- Django笔记——使用Anaconda创建虚拟环境并搭建Django项目
- Java开发环境的搭建以及使用eclipse从头一步步创建java项目
- Ubuntu JavaWeb类型项目一条龙环境搭建