首页 文章 精选 留言 我的

精选列表

搜索[命令行界面],共10000篇文章
优秀的个人博客,低调大师

mybatis-generator在命令行及IDEA中的使用

项目中的mybatis文件,在数据库表字段多的时候,手工编写还是比较费时,而且是体力活,并没有技术能力提高。所以我们大多数时候使用mybatis-generator自动生成。使用这个工具,必须使用如下3个工具: 1.工具jar包,本文使用mybatis-generator-core-1.3.2.jar <dependency> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-core</artifactId> <version>1.3.2</version> </dependency> 2.xml配置文件,本文使用mybatis-config.xml 3.数据库驱动,本文使用mysql-connector-java-8.0.16.jar <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.16</version> </dependency> 其中最重要的是配置mybatis-config.xml,先看一个代码: <?xmlversion="1.0"encoding="UTF-8"?> <!DOCTYPEgeneratorConfiguration PUBLIC"-//mybatis.org//DTDMyBatisGeneratorConfiguration1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"> <generatorConfiguration> <!--指定特定数据库的jdbc驱动jar包的位置--> <classPathEntrylocation="D:/Users/jinjunzhu/.m2/repository/mysql/mysql-connector-java/8.0.16/mysql-connector-java-8.0.16.jar"/> <contextid="default"targetRuntime="MyBatis3"> <commentGenerator> <propertyname="suppressDate"value="true"/> <!--是否去除自动生成的注释true:是:false:否--> <propertyname="suppressAllComments"value="false"/> </commentGenerator> <!--数据库链接地址账号密码--> <jdbcConnectiondriverClass="com.mysql.cj.jdbc.Driver"connectionURL="jdbc:mysql://localhost:3306/test?serverTimezone=UTC"userId="root"password="123456"> </jdbcConnection> <javaTypeResolver> <propertyname="forceBigDecimals"value="false"/> </javaTypeResolver> <!--生成Model类存放位置--> <javaModelGeneratortargetPackage="com.test.dao.model"targetProject="C:/Users/jinjunzhu/3DObjects/Desktop"> <propertyname="enableSubPackages"value="true"/> <propertyname="trimStrings"value="true"/> </javaModelGenerator> <!--生成映射文件存放位置--> <sqlMapGeneratortargetPackage="com.test.dao.xml"targetProject="C:/Users/zhujinjun/Desktop"> <propertyname="enableSubPackages"value="true"/> <propertyname="trimStrings"value="true"/> </sqlMapGenerator> <!--生成Dao类存放位置--> <!--客户端代码,生成易于使用的针对Model对象和XML配置文件的代码 type="ANNOTATEDMAPPER",生成JavaModel和基于注解的Mapper对象 type="MIXEDMAPPER",生成基于注解的JavaModel和相应的Mapper对象 type="XMLMAPPER",生成SQLMapXML文件和独立的Mapper接口 --> <javaClientGeneratortype="XMLMAPPER"targetPackage="com.test.dao.mapper"targetProject="C:/Users/zhujinjun/Desktop"> <propertyname="enableSubPackages"value="true"/> <propertyname="trimStrings"value="true"/> </javaClientGenerator> <tabletableName="db_user"domainObjectName="dbUser"enableDeleteByPrimaryKey="true"enableUpdateByPrimaryKey="true"enableSelectByPrimaryKey="true"enableUpdateByExample="false"enableCountByExample="false"enableDeleteByExample="false"enableSelectByExample="false"></table> </context> </generatorConfiguration> 从上到下依次解释一下参数: classPathEntry:配置jdbc驱动包 commentGenerator:注解相关配置 classPathEntry:配置jdbc驱动包 commentGenerator suppressDate:是否自动去除注释时间戳 suppressAllComments:是否去除自动生成的注释 jdbcConnection:复制配置文件中的jdbc配置就可以 forceBigDecimals:是否强制把数据库中的decimal类型和number类型转换为BigDecimal javaModelGenerator:生成model的存放位置 sqlMapGenerator:生成xml文件的存放位置 javaClientGenerator:生成mapper接口文件的位置,type类型有如下选择: ANNOTATEDMAPPER,生成JavaModel和基于注解的Mapper对象 MIXEDMAPPER,生成基于注解的JavaModel和相应的Mapper对象 XMLMAPPER,生成SQLMapXML文件和独立的Mapper接口 table:要自动生成的表 tableName为数据库中表的名称,domainObjectName为映射的实体类的名称--> schema:数据库的schema; catalog:数据库的catalog; alias:为数据表设置的别名,如果设置了alias,那么生成的所有的SELECTSQL语句中,列名会变成:alias_actualColumnName domainObjectName:生成的domain类的名字,如果不设置,直接使用表名作为domain类的名字;可以设置为somepck.domainName,那么会自动把domainName类再放到somepck包里面; enableInsert(默认true):指定是否生成insert语句; enableSelectByPrimaryKey(默认true):指定是否生成按照主键查询对象的语句(就是getById或get); enableSelectByExample(默认true):MyBatis3Simple为false,指定是否生成动态查询语句; enableUpdateByPrimaryKey(默认true):指定是否生成按照主键修改对象的语句(即update); enableDeleteByPrimaryKey(默认true):指定是否生成按照主键删除对象的语句(即delete); enableDeleteByExample(默认true):MyBatis3Simple为false,指定是否生成动态删除语句; enableCountByExample(默认true):MyBatis3Simple为false,指定是否生成动态查询总条数语句(用于分页的总条数查询); enableUpdateByExample(默认true):MyBatis3Simple为false,指定是否生成动态修改语句(只修改对象中不为空的属性); modelType:参考context元素的defaultModelType,相当于覆盖; delimitIdentifiers:参考tableName的解释,注意,默认的delimitIdentifiers是双引号,如果类似MYSQL这样的数据库,使用的是`(反引号,那么还需要设置context的beginningDelimiter和endingDelimiter属性) delimitAllColumns:设置是否所有生成的SQL中的列名都使用标识符引起来。默认为false,delimitIdentifiers参考context的属性 配置好后,执行如下命令,就可以生成了:命令中的路径可以根据本地配置进行修改 java-jarD:\Users\jinjunzhu\.m2\repository\org\mybatis\generator\mybatis-generator-core\1.3.2\mybatis-generator-core-1.3.2.jar-configfile"E:\sourcecode\springboot-rabbitmq\repository\src\main\resources\mybatis-generator.xml" 我们可以在IDEA中进行配置,配置如下:在Run->Edit Configurations 配置好之后,执行下图的运行,或者执行命令:mvn mybatis-generator:generate -e 生成的文件如下: 源码地址:https://github.com/jinjunzhu/springboot-rabbitmq

优秀的个人博客,低调大师

hadoop命令行客户端支持的命令参数

HDFS前言 l设计思想 分而治之:将大文件、大批量文件,分布式存放在大量服务器上,以便于采取分而治之的方式对海量数据进行运算分析; l在大数据系统中作用: 为各类分布式运算框架(如:mapreduce,spark,tez,……)提供数据存储服务 l重点概念:文件切块,副本存放,元数据 HDFS的概念和特性 首先,它是一个文件系统,用于存储文件,通过统一的命名空间——目录树来定位文件 其次,它是分布式的,由很多服务器联合起来实现其功能,集群中的服务器有各自的角色; 重要特性如下: (1)HDFS中的文件在物理上是分块存储(block),块的大小可以通过配置参数( dfs.blocksize)来规定,默认大小在hadoop2.x版本中是128M,老版本中是64M (2)HDFS文件系统会给客户端提供一个统一的抽象目录树,客户端通过路径来访问文件,形如:hdfs://namenode:port/dir-a/dir-b/dir-c/file.data (3)目录结构及文件分块信息(元数据)的管理由namenode节点承担 ——namenode是HDFS集群主节点,负责维护整个hdfs文件系统的目录树,以及每一个路径(文件)所对应的block块信息(block的id,及所在的datanode服务器) (4)文件的各个block的存储管理由datanode节点承担 ---- datanode是HDFS集群从节点,每一个block都可以在多个datanode上存储多个副本(副本数量也可以通过参数设置dfs.replication) (5)HDFS是设计成适应一次写入,多次读出的场景,且不支持文件的修改 (注:适合用来做数据分析,并不适合用来做网盘应用,因为,不便修改,延迟大,网络开销大,成本太高) 常用命令参数介绍 -help 功能:输出这个命令参数手册 -ls 功能:显示目录信息 示例:hadoop fs -ls hdfs://hadoop-server01:9000/ 备注:这些参数中,所有的hdfs路径都可以简写 -->hadoop fs -ls / 等同于上一条命令的效果 -mkdir 功能:在hdfs上创建目录 示例:hadoop fs -mkdir -p /aaa/bbb/cc/dd -moveFromLocal 功能:从本地剪切粘贴到hdfs 示例:hadoop fs - moveFromLocal /home/hadoop/a.txt /aaa/bbb/cc/dd -moveToLocal 功能:从hdfs剪切粘贴到本地 示例:hadoop fs - moveToLocal /aaa/bbb/cc/dd /home/hadoop/a.txt --appendToFile 功能:追加一个文件到已经存在的文件末尾 示例:hadoop fs -appendToFile ./hello.txt hdfs://hadoop-server01:9000/hello.txt 可以简写为: Hadoop fs -appendToFile ./hello.txt /hello.txt -cat 功能:显示文件内容 示例:hadoop fs -cat /hello.txt -tail 功能:显示一个文件的末尾 示例:hadoop fs -tail /weblog/access_log.1 -text 功能:以字符形式打印一个文件的内容 示例:hadoop fs -text /weblog/access_log.1 -chgrp -chmod -chown 功能:linux文件系统中的用法一样,对文件所属权限 示例: hadoop fs -chmod 666 /hello.txt hadoopfs -chown someuser:somegrp /hello.txt -copyFromLocal 功能:从本地文件系统中拷贝文件到hdfs路径去 示例:hadoop fs -copyFromLocal ./jdk.tar.gz /aaa/ -copyToLocal 功能:从hdfs拷贝到本地 示例:hadoop fs -copyToLocal /aaa/jdk.tar.gz -cp 功能:从hdfs的一个路径拷贝hdfs的另一个路径 示例:hadoopfs-cp /aaa/jdk.tar.gz /bbb/jdk.tar.gz.2 -mv 功能:在hdfs目录中移动文件 示例:hadoopfs-mv/aaa/jdk.tar.gz / -get 功能:等同于copyToLocal,就是从hdfs下载文件到本地 示例:hadoop fs -get /aaa/jdk.tar.gz -getmerge 功能:合并下载多个文件 示例:比如hdfs的目录/aaa/下有多个文件:log.1, log.2,log.3,... hadoop fs -getmerge /aaa/log.* ./log.sum -put 功能:等同于copyFromLocal 示例:hadoopfs-put/aaa/jdk.tar.gz /bbb/jdk.tar.gz.2 -rm 功能:删除文件或文件夹 示例:hadoop fs -rm -r /aaa/bbb/ -rmdir 功能:删除空目录 示例:hadoop fs -rmdir /aaa/bbb/ccc -df 功能:统计文件系统的可用空间信息 示例:hadoopfs-df-h/ -du 功能:统计文件夹的大小信息 示例: hadoop fs -du -s -h /aaa/* -count 功能:统计一个指定目录下的文件节点数量 示例:hadoop fs -count /aaa/ -setrep 功能:设置hdfs中文件的副本数量 示例:hadoop fs -setrep 3 /aaa/jdk.tar.gz <这里设置的副本数只是记录在namenode的元数据中,是否真的会有这么多副本,还得看datanode的数量> 本文转自yushiwh 51CTO博客,原文链接:http://blog.51cto.com/yushiwh/1910602,如需转载请自行联系原作者

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册