「MyBatis」 入门 — macOS 环境中的 IDEA 测试

本文介绍了在Mac上使用IDEA进行MyBatis入门的步骤,包括数据库准备、IDEA新建工程、配置文件设置以及解决遇到的LOG4J、jar包依赖等问题。还探讨了log4j的日志输出级别和XML配置注意事项。
摘要由CSDN通过智能技术生成

前言

IDE:最近买了一本关于 MyBatis + SpringMVC 的入门书籍,书中的 IDE 是 MyEclipse 。但我的 Air 在新建 project 时候就开始卡顿了,弃之,使用自己简单优化过的 IDEA;

文章内容包含:数据库准备、相关配置的代码、增删改查测试类的代码、遇到的 BUG和对应解决方式以及相关的知识点;

数据库准备

之前的博客 https://blog.csdn.net/qq_40677350/article/details/95655698 中终于解决了无法登陆的问题。 macOS 中遇到类似 Access denied for user ‘root’@'localhost 报错的同学可以参考一下。

连库、建库、建表、添加数据的SQL语句
mysql -u root -p

mysql> CREATE DATABASE mybatis_test;
mysql> USE mybatis_test;    
    
mysql> CREATE TABLE user (
    -> id INT(11) NOT NULL AUTO_INCREMENT,
    -> username VARCHAR(120) COLLATE utf8_bin DEFAULT NULL,
    -> password VARCHAR(50) COLLATE utf8_bin DEFAULT NULL,
    -> gender VARCHAR(5) COLLATE utf8_bin DEFAULT NULL,
    -> email VARCHAR(100) COLLATE utf8_bin DEFAULT NULL,
    -> province VARCHAR(50) COLLATE utf8_bin DEFAULT NULL,
    -> city VARCHAR(50) COLLATE utf8_bin DEFAULT NULL,
    -> birthday DATE DEFAULT NULL,
    -> PRIMARY KEY(id)
    -> ) ENGINE=INNODB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
    
mysql> INSERT INTO user(id, username, password, gender, email, province, city, birthday)
    -> VALUES
    -> (1, "张三", 111, "男", "1111@126.com", "河南省", "郑州市", "1991-04-23");

mysql> INSERT INTO user(id, username, password, gender, email, province, city, birthday)
    -> VALUES
    -> (2, "李四", 222, "男", "2222@126.com", "河北省", "邯郸市", "1989-10-13"),
    -> (3, "刘丽", 333, "女", "3333@126.com", "江苏省", "苏州市", "1994-06-09"),
    -> (4, "李丽", 444, "女", "4444@126.com", "四川省", "成都市", "1992-11-07");

(我是用 iterm2 中直接复制下来的语句,看起来不是很规范;大家写时候能灵活处理,该一行一行该多行多行,一行忘了 ; 符号到下一行继续输入也可以。测试数据与书中相同,侵删哈)

IDEA 中新建工程

  • 新建工程的过程,是用 IDEA 新建了一个 WEB 项目,本来没有选择 Maven,后来因为 BUG 的存在把结构改成了 Maven(半吊子)。它的文件结构在最后被我改成了如图所示的样子:

  • test 测试代码并没有放到 Maven 给到的 test 中。(暂时对 Maven 文件层级结构还不熟悉,所以暂时这样处理了)

  • 过程我就不写了,google / bing / baidu 可以让大家建出更好的结构。

相关配置文件

  • log4j.propertities 日志输出环境配置文件
# Global logging configuration
# 开发日志级别为 DEBUG 生产环境为 INFO 或 ERROR
log4j.rootLogger = DEBUG, stdout
# 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
  • UserMapper.xml 数据库连接池配置文件
<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"https://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace = "test">
    <select id="findUserById" parameterType="int" resultType="cn.com.mybatis.po.User">
        SELECT * FROM USER WHERE id = #{id}
    </select>

    <select id="findUserByUsername" parameterType="java.lang.String"
    resultType="cn.com.mybatis.po.User">
        SELECT * FROM USER WHERE username LIKE '%${value}%'
    </select>

    <insert id = "insertUser" parameterType="cn.com.mybatis.po.User">
        <selectKey keyProperty="id" order="AFTER" resultType="java.lang.Integer">
            SELECT LAST_INSERT_ID()
        </selectKey>
        insert into user(username, password, gender, birthday, email, province, city) value (#{username}, #{password}, #{gender}, #{birthday, jdbcType = DATE}, #{email}, #{province}, #{city})
    </insert>

    <delete id="deleteUser" parameterType="java.lang.Integer">
        delete from user where id=#{id}
    </delete>

    
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值