idea 创建 Maven + Mybatis 项目

╰半橙微兮° 2022-01-23 01:07 336阅读 0赞

最近在学习使用idea

这里说一下如何使用idea 创建一个Maven + Mybatis 项目

我也是借鉴了别人的博客,这里感谢一下这里的作者

https://www.cnblogs.com/lijiasnong/p/8337381.html

一。首先新建一个Maven 项目

1.新建Maven项目这里不再多说了,接下来我们在 src/main 下新建java 和 resources 两个目录 并 mark directory sa 相应的项,这里不多说了,不会的可以去我的主页看看如何新建Maven 项目

2.接下来我们在 resources 目录下 新建 config.properties , log4j.properties, 和 mybatis-config.xml

项目结构如下:

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2xpdXlpbmcxODAyMDI4OTE1_size_16_color_FFFFFF_t_70

3.哦,对了 还是在pom文件中引入对 mybatis的支持吧

  1. <dependency>
  2. <groupId>org.mybatis</groupId>
  3. <artifactId>mybatis</artifactId>
  4. <version>3.2.8</version>
  5. </dependency>
  6. <dependency>
  7. <groupId>mysql</groupId>
  8. <artifactId>mysql-connector-java</artifactId>
  9. <version>5.1.21</version>
  10. </dependency>

先暂时引入这两个 其他的先不引用,

接下来我们给出 config.properties 的内容

  1. driver=com.mysql.jdbc.Driver
  2. url=jdbc:mysql://localhost:3306/test
  3. username=root
  4. password=22222222

这里是连接数据库的一些信息,当然这里的用户名和密码得写自己的

接下来是 log4j.properties

  1. log4j.rootLogger=DEBUG, Console
  2. log4j.appender.Console=org.apache.log4j.ConsoleAppender
  3. log4j.appender.Console.layout=org.apache.log4j.PatternLayout
  4. log4j.appender.Console.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n
  5. log4j.logger.java.sql.ResultSet=INFO
  6. log4j.logger.org.apache=INFO
  7. log4j.logger.java.sql.Connection=DEBUG
  8. log4j.logger.java.sql.Statement=DEBUG
  9. log4j.logger.java.sql.PreparedStatement=DEBUG

接下来是mybatis-config.xml 中的内容

  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE configuration
  3. PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
  4. "http://mybatis.org/dtd/mybatis-3-config.dtd">
  5. <configuration>
  6. <properties resource="config.properties"/>
  7. <typeAliases>
  8. <typeAlias type="model.Person" alias="Person"/> <!--注意此对象一定要从包的根部写起 model.Person -->
  9. </typeAliases>
  10. <environments default="development">
  11. <environment id="development">
  12. <transactionManager type="JDBC"/>
  13. <dataSource type="POOLED">
  14. <property name="driver" value="${driver}"/>
  15. <property name="url" value="${url}"/>
  16. <property name="username" value="${username}"/>
  17. <property name="password" value="${password}"/>
  18. </dataSource>
  19. </environment>
  20. </environments>
  21. <mappers>
  22. <mapper resource="mapper/Person.xml"/>
  23. </mappers>
  24. </configuration>

接下来在resources 目录下 新建mapper 目录 在此目录下 新建Person.xml

  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3. <mapper namespace="com">
  4. <insert id="insertPerson" parameterType="Person">
  5. insert into person(id, userName, age, mobilePhone) values (#{id}, #{userName}, #{age}, #{mobilePhone})
  6. </insert>
  7. </mapper>

我们在java下面创建 model 包 然后创建 Person.java

  1. package model;
  2. public class Person {
  3. private int id;
  4. private String userName;
  5. private int age;
  6. private String mobilePhone;
  7. public Person(int id, String userName, int age, String mobilePhone) {
  8. this.id = id;
  9. this.userName = userName;
  10. this.age = age;
  11. this.mobilePhone = mobilePhone;
  12. }
  13. public int getId() {
  14. return id;
  15. }
  16. public void setId(int id) {
  17. this.id = id;
  18. }
  19. public String getUserName() {
  20. return userName;
  21. }
  22. public void setUserName(String userName) {
  23. this.userName = userName;
  24. }
  25. public int getAge() {
  26. return age;
  27. }
  28. public void setAge(int age) {
  29. this.age = age;
  30. }
  31. public String getMobilePhone() {
  32. return mobilePhone;
  33. }
  34. public void setMobilePhone(String mobilePhone) {
  35. this.mobilePhone = mobilePhone;
  36. }
  37. }

当然此java实体中的属性对应 数据库中 person的表

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2xpdXlpbmcxODAyMDI4OTE1_size_16_color_FFFFFF_t_70 1

接下来我们在java目录下创建一个util 包 在此包下 我们创建一个 创建SqlSession的工具类 MybatisUtil.java

  1. package utils;
  2. import org.apache.ibatis.io.Resources;
  3. import org.apache.ibatis.session.SqlSession;
  4. import org.apache.ibatis.session.SqlSessionFactory;
  5. import org.apache.ibatis.session.SqlSessionFactoryBuilder;
  6. import java.io.IOException;
  7. import java.io.Reader;
  8. public class MybatisUtil {
  9. private final static SqlSessionFactory sqlSessionFactory;
  10. static {
  11. String resource="mybatis-config.xml";
  12. Reader reader =null;
  13. try {
  14. reader = Resources.getResourceAsReader(resource);
  15. } catch (IOException e) {
  16. e.printStackTrace();
  17. }
  18. sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);
  19. }
  20. /**
  21. * 获取SqlSessionFactory
  22. * @return SqlSessionFactory
  23. */
  24. public static SqlSessionFactory getSqlSessionFactory(){
  25. return sqlSessionFactory;
  26. }
  27. /**
  28. * 获取SqlSession
  29. * @return SqlSession
  30. */
  31. public static SqlSession getSqlSession(){
  32. return sqlSessionFactory.openSession();
  33. }
  34. /**
  35. * 关闭SqlSession
  36. */
  37. public static void closeSession(SqlSession sqlSession){
  38. if (sqlSession!=null)
  39. sqlSession.close();
  40. }
  41. }

接下来我们就可以创建测试类了

  1. package test;
  2. import model.Person;
  3. import org.apache.ibatis.session.SqlSession;
  4. import utils.MybatisUtil;
  5. public class Test01 {
  6. public static void main(String[] args) {
  7. SqlSession sqlSession = MybatisUtil.getSqlSession();
  8. int id = 2;
  9. String userName = "jinchen";
  10. int age = 18;
  11. String mobilePhone = "18766126517";
  12. Person person = new Person(id, userName, age, mobilePhone);
  13. try {
  14. sqlSession.insert("insertPerson", person);
  15. sqlSession.commit();
  16. } catch (Exception e) {
  17. e.printStackTrace();
  18. }
  19. }
  20. }

执行main函数,我们就会在数据库person表中出插入一条记录

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2xpdXlpbmcxODAyMDI4OTE1_size_16_color_FFFFFF_t_70 2

经验证确实插入,此种知识一个极为简单的mybatis的例子,想要学习更加深入的知识还是多查看资料

不积跬步,无以至千里

不积小流,无以成江海

发表评论

表情:
评论列表 (有 0 条评论,336人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Idea创建maven项目

    很久之前就听说了idea,界面也的确比eclipse好看,不过一直没有机会使用,这两天试用了一下,代码提示方面的确很好用,不过使用习惯跟eclipse还是有一些差距的,下面介绍

    相关 Idea创建Maven项目

       因为上一篇文章直接讲解了怎么配置和安装Maven等,所以在这里就不再讲述了,直接就讲步骤了,我也尽量讲述的详细一点,让大家好理解   其中步骤一般分为以下几部分