当前位置: 首页 > news >正文

ui设计师面试问题seo优化与品牌官网定制

ui设计师面试问题,seo优化与品牌官网定制,新的房地产网站怎么做SEO,网络课程的网站开发论文文章目录 1. 依赖2. 配置文件3. 生成代码4. 详细介绍 generatorConfig.xml5. 代码详细总结 Spring MyBatis Generator 是 MyBatis 官方提供的一个强大的工具,它能够基于数据库表结构自动生成 MyBatis 持久层的代码,包括实体类、Mapper 接口和 XML 映射文…

文章目录

    • 1. 依赖
    • 2. 配置文件
    • 3. 生成代码
    • 4. 详细介绍 generatorConfig.xml
    • 5. 代码详细
    • 总结

Spring MyBatis Generator 是 MyBatis 官方提供的一个强大的工具,它能够基于数据库表结构自动生成 MyBatis 持久层的代码,包括实体类、Mapper 接口和 XML 映射文件。这种自动代码生成的方式能够提高开发效率,减少手写代码的工作量。本篇博客将引导你如何使用 Spring MyBatis Generator 进行代码生成。

1. 依赖

首先,需要在项目的 pom.xml 文件中引入 Spring MyBatis Generator 插件的依赖:

	<dependency><groupId>org.mybatis.generator</groupId><artifactId>mybatis-generator-core</artifactId><version>1.4.2</version></dependency>

2. 配置文件

src/main/resources 目录下创建 generatorConfig.xml 文件,配置代码生成的参数,例如:

<!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN""http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"><generatorConfiguration><context id="DemoBatisGenerator" targetRuntime="MyBatis3"><plugin type="org.mybatis.generator.plugins.ToStringPlugin" /><commentGenerator><property name="suppressDate" value="false" /><property name="suppressAllComments" value="true" /><property name="author" value="false" /></commentGenerator><!-- 数据库连接配置 --><jdbcConnection driverClass="org.h2.Driver"connectionURL="jdbc:h2:mem:db1"userId="sa"password=""></jdbcConnection><!-- Java 模型生成器 --><javaModelGenerator targetPackage="com.cheney.demo.model" targetProject="src/main/java"><property name="enableSubPackages" value="true" /><property name="trimStrings" value="true" /></javaModelGenerator><!-- SQL Map 生成器 --><sqlMapGenerator targetPackage="mapper" targetProject="src/main/resources"><property name="enableSubPackages" value="true" /></sqlMapGenerator><!-- Mapper 接口生成器 --><javaClientGenerator targetPackage="com.cheney.demo.dao" targetProject="src/main/java" type="XMLMAPPER"><property name="enableSubPackages" value="true" /></javaClientGenerator><!-- 表配置 --><table tableName="t_user" domainObjectName="User" enableCountByExample="false"enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false"selectByExampleQueryId="false"></table></context></generatorConfiguration>

3. 生成代码

使用 Java 编程方式生成代码

    @GetMapping("generator")public void generator() throws Exception {List<String> warnings = new ArrayList<>();boolean overwrite = true;ConfigurationParser cp = new ConfigurationParser(warnings);Configuration config = cp.parseConfiguration(this.getClass().getResourceAsStream("/generatorConfig.xml"));DefaultShellCallback callback = new DefaultShellCallback(overwrite);MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings);myBatisGenerator.generate(null);}

1)服务启动

在这里插入图片描述

2)调用 generator 运行

在这里插入图片描述

3)MyBatis Generator 将会根据配置文件自动生成实体类、Mapper 和 XML 映射文件并放置在指定的目录中

在这里插入图片描述

User.java

package com.cheney.demo.model;public class User {private Integer id;private String name;private Integer age;public Integer getId() {return id;}public void setId(Integer id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name == null ? null : name.trim();}public Integer getAge() {return age;}public void setAge(Integer age) {this.age = age;}@Overridepublic String toString() {StringBuilder sb = new StringBuilder();sb.append(getClass().getSimpleName());sb.append(" [");sb.append("Hash = ").append(hashCode());sb.append(", id=").append(id);sb.append(", name=").append(name);sb.append(", age=").append(age);sb.append("]");return sb.toString();}
}

UserMapper.java

package com.cheney.demo.dao;import com.cheney.demo.model.User;public interface UserMapper {int deleteByPrimaryKey(Integer id);int insert(User row);int insertSelective(User row);User selectByPrimaryKey(Integer id);int updateByPrimaryKeySelective(User row);int updateByPrimaryKey(User row);
}

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.cheney.demo.dao.UserMapper"><resultMap id="BaseResultMap" type="com.cheney.demo.model.User"><id column="ID" jdbcType="INTEGER" property="id" /><result column="NAME" jdbcType="VARCHAR" property="name" /><result column="AGE" jdbcType="INTEGER" property="age" /></resultMap><sql id="Base_Column_List">ID, NAME, AGE</sql><select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">select <include refid="Base_Column_List" />from T_USERwhere ID = #{id,jdbcType=INTEGER}</select><delete id="deleteByPrimaryKey" parameterType="java.lang.Integer">delete from T_USERwhere ID = #{id,jdbcType=INTEGER}</delete><insert id="insert" parameterType="com.cheney.demo.model.User">insert into T_USER (ID, NAME, AGE)values (#{id,jdbcType=INTEGER}, #{name,jdbcType=VARCHAR}, #{age,jdbcType=INTEGER})</insert><insert id="insertSelective" parameterType="com.cheney.demo.model.User">insert into T_USER<trim prefix="(" suffix=")" suffixOverrides=","><if test="id != null">ID,</if><if test="name != null">NAME,</if><if test="age != null">AGE,</if></trim><trim prefix="values (" suffix=")" suffixOverrides=","><if test="id != null">#{id,jdbcType=INTEGER},</if><if test="name != null">#{name,jdbcType=VARCHAR},</if><if test="age != null">#{age,jdbcType=INTEGER},</if></trim></insert><update id="updateByPrimaryKeySelective" parameterType="com.cheney.demo.model.User">update T_USER<set><if test="name != null">NAME = #{name,jdbcType=VARCHAR},</if><if test="age != null">AGE = #{age,jdbcType=INTEGER},</if></set>where ID = #{id,jdbcType=INTEGER}</update><update id="updateByPrimaryKey" parameterType="com.cheney.demo.model.User">update T_USERset NAME = #{name,jdbcType=VARCHAR},AGE = #{age,jdbcType=INTEGER}where ID = #{id,jdbcType=INTEGER}</update>
</mapper>

4. 详细介绍 generatorConfig.xml

  1. plugin

    提供了一些列插件来扩展其功能供我们使用

    • CacheNamespacePlugin:为生成的 Mapper 接口(Kotlin 或 Java)添加 @CacheNamespace 注解。
    • CachePlugin:为生成的 SQL 映射文件添加 元素。
    • CaseInsensitiveLikePlugin:为 Example 类添加方法,以支持大小写不敏感的 LIKE 搜索。
    • EqualsHashCodePlugin:为 MBG 生成的 Java 模型对象添加 equals 和 hashCode 方法。
    • FluentBuilderMethodsPlugin:为生成的模型类添加流畅的构建器方法。
    • IgnoreViewsPlugin:在代码生成过程中过滤掉“VIEW”类型的表。
    • MapperAnnotationPlugin:为生成的 Mapper 接口添加 @Mapper 注解。
    • MapperConfigPlugin:生成一个包含对 MBG 生成的 XML 映射文件的引用的 MapperConfig.xml 文件。
    • RenameExampleClassPlugin:通过重命名 MBG 生成的 Example 类来演示 initialized 方法的用法。
    • RowBoundsPlugin:为 selectByExample 方法添加接受 RowBounds 参数的新版本。
    • SerializablePlugin:为 MBG 生成的 Java 模型类添加 java.io.Serializable 标记接口。
    • ToStringPlugin:为生成的模型类添加 toString() 方法
  2. commentGenerator

    用于生成MyBatis Generator(MBG)生成的各种元素的注释,包括Java字段、Java方法、XML元素等

    • suppressAllComments:用于指定MBG是否在生成的代码中包含任何注释。你可以将其设置为true来禁用所有注释,或者保持默认值false来包含所有生成元素的注释
    • suppressDate:用于指定MBG是否在生成的注释中包含生成时间戳。你可以将其设置为true来禁用时间戳,或者保持默认值false来包含生成时间戳
    • addRemarkComments:用于指定MBG是否在生成的注释中包含数据库表和列的备注信息。你可以将其设置为true来包含表和列的备注信息,或者保持默认值false来不包含表和列的备注信息
    • dateFormat:用于指定生成的注释中的日期格式。你可以自定义日期格式,也可以使用默认的java.util.Date格式
    • useLegacyGeneratedAnnotation:用于指定是否使用来自已弃用的“javax”命名空间的注解。在JDK 9+中,建议使用“jakarta”命名空间。你可以将其设置为truefalse
  3. jdbcConnection

    配置数据库连接

    • driverClass属性指定了JDBC驱动程序的完全限定类名

    • connectionURL属性指定了连接数据库的JDBC连接URL

    • userId属性指定了连接数据库的用户名

    • password属性指定了连接数据库的密码

  4. javaModelGenerator

    配置 Java 模型生成器

    • targetPackage:指定生成的类所在的包
    • targetProject:指定生成的对象的目标项目
  5. sqlMapGenerator

    配置 SQL Map 生成器

    • enableSubPackages,它用于控制是否为对象生成不同的Java包,基于表的目录和模式
  6. javaClientGenerator

    配置 Java 客户端生成器

    • type="XMLMAPPER":指定生成的 Java 接口和实现类将引用 MyBatis 的 XML 配置
    • targetPackage="test.dao":指定生成的接口和实现类所在的包
    • targetProject="\MBGTestProject\src":指定生成的接口和实现类将保存在的项目目录
  7. table

    配置要生成的数据库表

5. 代码详细

https://github.com/cheney09/spring-practical-combat/tree/main/09/demo

在这里插入图片描述

总结

以上是使用 Spring MyBatis Generator 自动生成代码的简要步骤。这种方式可以帮助你更快速地搭建起数据库访问层的基础代码,减少手写代码的工作量,提高开发效率。

http://www.hrbkazy.com/news/20061.html

相关文章:

  • 做毕业设计免费网站建设编程培训班学费一般多少钱
  • 录音录像手表网站武汉网络营销公司排名
  • 网站建设费用皆选网络短链接在线生成
  • 做电销哪些网站可以找到客户端今日头条网站推广
  • 遵义网址哈尔滨seo关键词排名
  • 做一婚恋网站多少钱seo工作室
  • 制作游戏的软件手机版seo网站地图
  • 西安网站建设公司排热点新闻事件
  • vs做网站示例seo优化效果怎么样
  • 三线建设学兵连网站西安地区联系人我想在百度上发布广告怎么发
  • 请问门户网站是什么意思商品营销推广的方法有哪些
  • html做网站优化seo报价
  • wordpress数据百度seo网站在线诊断
  • 网站策划师招聘网站怎么注册
  • 深圳有哪些做网站公司好5g网络优化
  • 建设一个境外网站seo站长工具查询
  • 小型手机网站建设推荐在线培训考试系统
  • kaalus wordpress唐山网站建设方案优化
  • 通过alt让搜索引擎了解该图片信息很多是网站有问题吗长沙网站推广有哪些啊
  • 妇科医院网站建设怎么做学seo建网站
  • 无网站如何做淘宝客台州seo
  • 乐清seoseo赚钱暴利
  • 外贸型网站开发长沙靠谱的关键词优化
  • 百度网站地图seo优化软件
  • 企业网站推广的主要方法济南头条今日新闻
  • axure做网站的效果怎么网上推广自己的产品
  • 南山做网站公司微信软文案例
  • 中国协会网站建设方案营销活动推广方案
  • 宁波网站建设工作室下载百度2024最新版
  • 凤岗做网站网站建设多少钱