javaweb项目:用户(登录和注销)实现 SSM框架(mybatis-generator自动生成代码)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
云数据库 RDS PostgreSQL,高可用系列 2核4GB
简介: javaweb项目:用户(登录和注销)实现 SSM框架(mybatis-generator自动生成代码)

SSM框架的搭建环境(Spring,SpringMVC,Mybatis)

使用工具:maven、idea、tomcat用的是8、jdk版本1.8

一、整个项目的结构:

b46a68ef1a479629228f1a815311829d_70.png

用户模块流程

pom.xml -> web.xml -> db->model (此处是User,与数据库中的字段名相同) -> UserMapper -> UserMapper.xml(这里是用的mybatis映射,直接动态实现dao接口的实现类) -> UserService -> UserServiceImpl -> UserController,这就是一个大体流程,下面开始介绍模块完成:

  1. 新建maven项目、按照自己的需要新建相关的文件夹:
  2. maven中的pom.xml文件添加依赖:
  3. 配置web.xml
  4. spring整合mybatis(dao层)的配置文件:spring-dao.xml
  5. UserService层接口及实现类:UserService,UserServiceImpl
  6. Spring整合Service层的配置文件:spring-service.xml
  7. mybatis-config.xml配置文件
  8. web层的实现(controller层,springmvc):UserController
  9. Spring整合controller层的配置文件:spring-web.xml
  10. JSP页面:login.jsp,fail.jsp,anotherpage.jsp,success.jsp

以上这些操作参考博文:SSM搭建(整合)+用户模块(登录和注销)实现

二、接下来介绍如何使用mybatis自动生成代码:

可以参考我之前的一篇:如何使用mybatis自动生成代码:

1、配置pom.xml:

添加plugin:

1. <!-- 自动生成代码插件 -->
2.           <plugin>
3.               <groupId>org.mybatis.generator</groupId>
4.               <artifactId>mybatis-generator-maven-plugin</artifactId>
5.               <version>1.3.2</version>
6.               <configuration>
7.                   <!--指定配置文件的名称,默认是 ${basedir}/src/main/resources/generatorConfig.xml-->
8.                   <configurationFile>${mybatis.generator.generatorConfig.xml}</configurationFile>
9.                   <!--指定该参数,则生成java文件时,直接覆盖原来的文件.默认是false,即会对生成的java文件进行编号来标记不是相同的执行结果,由用户来自行合并java文件-->
10.                   <overwrite>true</overwrite>
11.                   <!--如果指定该参数,则会输出执行过程-->
12.                   <verbose>true</verbose>
13.               </configuration>
14.           </plugin>

设置配置文件的位置:

1.   <properties>
2.     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
3.     <maven.compiler.source>1.7</maven.compiler.source>
4.     <maven.compiler.target>1.7</maven.compiler.target>
5.     <!--设置mybatis-generator配置文件位置--><mybatis.generator.generatorConfig.xml>${basedir}/src/test/resources/generatorConfig.xml</mybatis.generator.generatorConfig.xml>
6.     <mybatis.generator.generatorConfig.properties>file:///${basedir}/src/test/resources/generatorConfig.properties</mybatis.generator.generatorConfig.properties>
7. 
8.   </properties>

2、配置文件generatorConfig.properties、generatorConfig.xml

generatorConfig.properties:

1. # 数据库驱动jar 路径
2. drive.class.path=E:/Java Web/maven/repositoryBus/mysql/mysql-connector-java/5.1.30/mysql-connector-java-5.1.30.jar
3. jdbc.driver=com.mysql.jdbc.Driver
4. jdbc.url=jdbc:mysql://localhost:3306/user?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull
5. jdbc.username=root
6. jdbc.password=
7. 
8. # 包路径配置
9. model.package=com.gis.db.model
10. dao.package=com.gis.db.dao
11. xml.mapper.package=com.gis.db.dao
12. 
13. target.project=src/main

generatorConfig.xml:

1. <?xml version="1.0" encoding="UTF-8"?>
2. <!DOCTYPE generatorConfiguration
3. PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
4. "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
5. 
6. <!-- 配置Run As Maven build : Goals 参数 : mybatis-generator:generate -Dmybatis.generator.overwrite=true -->
7. <!-- 配置 tableName,使用 Run As Maven build 生成 dao model 层 -->
8. <generatorConfiguration>
9. <!-- 配置文件路径 -->
10. <properties url="${mybatis.generator.generatorConfig.properties}"/>
11. <!-- <properties resource="generatorConfig.properties"/>-->
12. 
13. <!--数据库驱动包路径 -->
14. <classPathEntry location="${drive.class.path}"/>
15. 
16. <context id="DB2Tables" targetRuntime="MyBatis3">
17. <!--关闭注释 -->
18. <commentGenerator>
19. <property name="suppressAllComments" value="true"/>
20. </commentGenerator>
21. 
22. <!--数据库连接信息 -->
23. <jdbcConnection driverClass="${jdbc.driver}" connectionURL="${jdbc.url}" userId="${jdbc.username}"
24. password="${jdbc.password}">
25. </jdbcConnection>
26. 
27. <!--生成的model 包路径 -->
28. <javaModelGenerator targetPackage="${model.package}" targetProject="${target.project}">
29. <property name="enableSubPackages" value="ture"/>
30. <property name="trimStrings" value="true"/>
31. </javaModelGenerator>
32. 
33. <!--生成xml mapper文件 路径 -->
34. <sqlMapGenerator targetPackage="${xml.mapper.package}" targetProject="${target.project}">
35. <property name="enableSubPackages" value="ture"/>
36. </sqlMapGenerator>
37. 
38. <!-- 生成的Dao接口 的包路径 -->
39. <javaClientGenerator type="XMLMAPPER" targetPackage="${dao.package}" targetProject="${target.project}">
40. <property name="enableSubPackages" value="ture"/>
41. </javaClientGenerator>
42. 
43. <!--对应数据库表名 -->
44. <table tableName="user" domainObjectName="User" >
45. </table>
46. 
47. </context>
48. </generatorConfiguration>

3、使用mybatis自动生成代码:

在Intellij IDEA添加一个“Run运行”选项,使用maven运行mybatis-generator-maven-plugin插件

点击 菜单run中Edit Configurations,会出现:

7832d5b29193d1e34f1924d825facc65_70.png

点击+号,选择maven,会出现

801413aab01851cb9faffc6c41c532ab_Center.png

在name和Commond line分别填上如上图所示,apply和ok

最后点击generator,生成model,mapper,dao

8fe29a99a17ac0ef5c9c651005f78b53_Center.png

源码地址:需要请留言~


AIEarth是一个由众多领域内专家博主共同打造的学术平台,旨在建设一个拥抱智慧未来的学术殿堂!【平台地址:https://devpress.csdn.net/aiearth】 很高兴认识你!加入我们共同进步!

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
目录
相关文章
|
3月前
|
Java 数据库连接 数据库
Spring boot 使用mybatis generator 自动生成代码插件
本文介绍了在Spring Boot项目中使用MyBatis Generator插件自动生成代码的详细步骤。首先创建一个新的Spring Boot项目,接着引入MyBatis Generator插件并配置`pom.xml`文件。然后删除默认的`application.properties`文件,创建`application.yml`进行相关配置,如设置Mapper路径和实体类包名。重点在于配置`generatorConfig.xml`文件,包括数据库驱动、连接信息、生成模型、映射文件及DAO的包名和位置。最后通过IDE配置运行插件生成代码,并在主类添加`@MapperScan`注解完成整合
537 1
Spring boot 使用mybatis generator 自动生成代码插件
|
6月前
|
Java 关系型数据库 数据库连接
Javaweb之Mybatis入门程序的详细解析
本文详细介绍了一个MyBatis入门程序的创建过程,从环境准备、Maven项目创建、MyBatis配置、实体类和Mapper接口的定义,到工具类和测试类的编写。通过这个示例,读者可以了解MyBatis的基本使用方法,并在实际项目中应用这些知识。
150 11
|
6月前
|
SQL 缓存 Java
框架源码私享笔记(02)Mybatis核心框架原理 | 一条SQL透析核心组件功能特性
本文详细解构了MyBatis的工作机制,包括解析配置、创建连接、执行SQL、结果封装和关闭连接等步骤。文章还介绍了MyBatis的五大核心功能特性:支持动态SQL、缓存机制(一级和二级缓存)、插件扩展、延迟加载和SQL注解,帮助读者深入了解其高效灵活的设计理念。
|
8月前
|
SQL Java 数据库连接
对Spring、SpringMVC、MyBatis框架的介绍与解释
Spring 框架提供了全面的基础设施支持,Spring MVC 专注于 Web 层的开发,而 MyBatis 则是一个高效的持久层框架。这三个框架结合使用,可以显著提升 Java 企业级应用的开发效率和质量。通过理解它们的核心特性和使用方法,开发者可以更好地构建和维护复杂的应用程序。
353 29
|
6月前
|
Oracle 关系型数据库 Java
|
10月前
|
SQL Java 数据库连接
持久层框架MyBatisPlus
持久层框架MyBatisPlus
199 1
持久层框架MyBatisPlus
|
设计模式 Java 关系型数据库
【Java笔记+踩坑汇总】Java基础+JavaWeb+SSM+SpringBoot+SpringCloud+瑞吉外卖/谷粒商城/学成在线+设计模式+面试题汇总+性能调优/架构设计+源码解析
本文是“Java学习路线”专栏的导航文章,目标是为Java初学者和初中高级工程师提供一套完整的Java学习路线。
775 37
|
缓存 前端开发 Java
【Java面试题汇总】Spring,SpringBoot,SpringMVC,Mybatis,JavaWeb篇(2023版)
Soring Boot的起步依赖、启动流程、自动装配、常用的注解、Spring MVC的执行流程、对MVC的理解、RestFull风格、为什么service层要写接口、MyBatis的缓存机制、$和#有什么区别、resultType和resultMap区别、cookie和session的区别是什么?session的工作原理
【Java面试题汇总】Spring,SpringBoot,SpringMVC,Mybatis,JavaWeb篇(2023版)
|
11月前
|
缓存 Cloud Native 安全
探索阿里巴巴新型ORM框架:超越MybatisPlus?
【10月更文挑战第9天】在Java开发领域,Mybatis及其增强工具MybatisPlus长期占据着ORM(对象关系映射)技术的主导地位。然而,随着技术的发展,阿里巴巴集团推出了一种新型ORM框架,旨在提供更高效、更简洁的开发体验。本文将对这一新型ORM框架进行探索,分析其特性,并与MybatisPlus进行比较。
375 0
|
6月前
|
XML Java 数据库连接
微服务——SpringBoot使用归纳——Spring Boot集成MyBatis——基于注解的整合
本文介绍了Spring Boot集成MyBatis的两种方式:基于XML和注解的形式。重点讲解了注解方式,包括@Select、@Insert、@Update、@Delete等常用注解的使用方法,以及多参数时@Param注解的应用。同时,针对字段映射不一致的问题,提供了@Results和@ResultMap的解决方案。文章还提到实际项目中常结合XML与注解的优点,灵活使用两者以提高开发效率,并附带课程源码供下载学习。
491 0