Generator
codegenerator用法
codegenerator用法一、概述CodeGenerator是一款强大的代码生成工具,可用于快速生成各种类型的代码,如Java、C++、Python等。
本文档将详细介绍CodeGenerator的使用方法,帮助您更好地了解和掌握该工具。
二、安装与配置1.下载安装包:访问CodeGenerator官方网站,下载适用于您的操作系统的安装包。
2.安装:根据安装指南,完成安装过程。
3.配置环境:确保您的开发环境已正确配置,包括Java、C++或Python等必要的开发工具。
三、使用方法1.打开CodeGenerator:启动CodeGenerator应用程序。
2.选择编程语言:在CodeGenerator界面中,选择您所需的编程语言,如Java、C++或Python。
3.输入代码模板:在CodeGenerator编辑器中,输入您要生成的代码模板。
您可以参考CodeGenerator内置的代码模板或自行创建新的模板。
4.生成代码:完成代码模板输入后,点击生成按钮,CodeGenerator将根据您的输入生成相应的代码。
5.查看代码:在CodeGenerator的输出窗口中,您可以查看生成的代码,并进行必要的修改和调整。
四、高级用法1.自定义模板:CodeGenerator支持自定义模板,您可以在编辑器中创建新的模板,并将其保存以供后续使用。
2.参数化生成:通过在代码模板中添加参数,您可以实现代码的参数化生成,根据不同的参数生成不同的代码。
3.多语言支持:CodeGenerator支持同时生成多种语言的代码,只需在选择编程语言时进行切换即可。
4.版本控制:CodeGenerator支持与版本控制系统(如Git)集成,方便您对生成的代码进行版本控制和管理。
五、常见问题及解决方案1.生成失败:检查您的代码模板是否正确,以及CodeGenerator 是否已正确安装和配置。
2.生成的代码不正确:检查生成的代码是否符合您的预期,并尝试手动生成代码以获得更准确的反馈。
test tone generator 用法
Test Tone Generator(TTG)是一款音频信号发生器,可用于测试、教学、产生音效等。
以下是使用Test Tone Generator的步骤:
1. 打开Test Tone Generator软件。
2. 在软件界面上选择合适的音频输出设备。
3. 点击“生成”按钮,开始生成所需的音频信号。
4. 根据需要调整音频信号的参数,如频率、音量等。
5. 保存生成的音频信号为wav文件或其他格式。
6. 可以将生成的音频信号刻录成测试CD或运行测试脚本。
使用Test Tone Generator时需要注意以下几点:
1. 在使用前需要确认电脑的声卡是否支持Test Tone Generator。
2. 在生成音频信号时需要选择正确的音频输出设备,否则可能无法正常听到声音。
3. 在调整音频参数时需要仔细,避免出现声音失真或频率不稳定的情况。
4. 在保存音频文件时需要注意文件格式和质量,避免出现文件损坏或无法播放的情况。
以上是使用Test Tone Generator的基本步骤和使用注意事项,希望对您有所帮助。
MybatisGenerator最完整配置详解[mybatis代码自动生成配置]
MybatisGenerator最完整配置详解[mybatis代码⾃动⽣成配置] Mybatis Generator最完整配置详解[mybatis代码⾃动⽣成配置]1)说明 generator配置⽂件:1.1) 配置⽣成器 :<!-- 配置⽣成器 --><generatorConfiguration>....</generatorConfiguration>1.2) ${propertyKey}引⽤${propertyKey}的⽅式来引⽤配置项:例如resource:配置资源加载地址,使⽤resource,MBG从classpath开始找,⽐如com/myproject/generatorConfig.propertiesurl:配置资源加载地质,使⽤URL的⽅式,⽐如file:///C:/myfolder/generatorConfig.properties.注意,两个属性只能选址⼀个;另外,如果使⽤了mybatis-generator-maven-plugin,那么在pom.xml中定义的properties都可以直接在generatorConfig.xml中使⽤1.3 ) classPathEntry标签【添加依赖包】<!-- 在MBG⼯作的时候,需要额外加载的依赖包,location属性指明加载jar/zip包的全路径<classPathEntry location="/Program Files/IBM/SQLLIB/java/db2java.zip" />-->1.4 ) context 标签【⽣成⼀组对象的环境】<!--context:⽣成⼀组对象的环境id:必选,上下⽂id,⽤于在⽣成错误时提⽰defaultModelType:指定⽣成对象的样式1,conditional:类似hierarchical;2,flat:所有内容(主键,blob)等全部⽣成在⼀个对象中;3,hierarchical:主键⽣成⼀个XXKey对象(key class),Blob等单独⽣成⼀个对象,其他简单属性在⼀个对象中(record class)targetRuntime:1,MyBatis3:默认的值,⽣成基于MyBatis3.x以上版本的内容,包括XXXBySample;2,MyBatis3Simple:类似MyBatis3,只是不⽣成XXXBySample;introspectedColumnImpl:类全限定名,⽤于扩展MBG --><context id="mysql" defaultModelType="hierarchical" targetRuntime="MyBatis3Simple" >1.5) autoDelimitKeywords 标签【⾃动识别数据的关键字】<!--⾃动识别数据库关键字,默认false,如果设置为true,根据SqlReservedWords中定义的关键字列表;⼀般保留默认值,遇到数据库关键字(Java关键字),使⽤columnOverride覆盖--><property name="autoDelimitKeywords" value="false"/>1.6) javaFileEncoding 标签【字符编码】<!-- ⽣成的Java⽂件的编码 --><property name="javaFileEncoding" value="UTF-8"/>1.7) javaFormatter 标签【格式化java代码】<!-- 格式化java代码 --><property name="javaFormatter" value="org.mybatis.generator.api.dom.DefaultJavaFormatter"/>1.8) beginningDelimiter和endingDelimiter 标签【标记数据库对象名的符号】<!-- beginningDelimiter和endingDelimiter:指明数据库的⽤于标记数据库对象名的符号,⽐如ORACLE就是双引号,MYSQL默认是`反引号; --><property name="beginningDelimiter" value="`"/><property name="endingDelimiter" value="`"/><!-- 必须要有的,使⽤这个配置链接数据库@TODO:是否可以扩展--><jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql:///pss" userId="root" password="admin"><!-- 这⾥⾯可以设置property属性,每⼀个property属性都设置到配置的Driver上 --></jdbcConnection><!-- java类型处理器⽤于处理DB中的类型到Java中的类型,默认使⽤JavaTypeResolverDefaultImpl;注意⼀点,默认会先尝试使⽤Integer,Long,Short等来对应DECIMAL和 NUMERIC数据类型;--><javaTypeResolver type="org.mybatis.generator.internal.types.JavaTypeResolverDefaultImpl"><!--true:使⽤BigDecimal对应DECIMAL和 NUMERIC数据类型false:默认,scale>0;length>18:使⽤BigDecimal;scale=0;length[10,18]:使⽤Long;scale=0;length[5,9]:使⽤Integer;scale=0;length<5:使⽤Short;--><property name="forceBigDecimals" value="false"/></javaTypeResolver><!-- 在targetPackage的基础上,根据数据库的schema再⽣成⼀层package,最终⽣成的类放在这个package下,默认为false --><property name="enableSubPackages" value="true"/><!-- for MyBatis3 / MyBatis3Simple是否创建⼀个不可变的类,如果为true,那么MBG会创建⼀个没有setter⽅法的类,取⽽代之的是类似constructorBased的类--><property name="immutable" value="false"/><!-- 设置⼀个根对象,如果设置了这个根对象,那么⽣成的keyClass或者recordClass会继承这个类;在Table的rootClass属性中可以覆盖该选项注意:如果在key class或者record class中有root class相同的属性,MBG就不会重新⽣成这些属性了,包括:1,属性名相同,类型相同,有相同的getter/setter⽅法;--><property name="rootClass" value="com._520it.mybatis.domain.BaseDomain"/><!-- 设置是否在getter⽅法中,对String类型字段调⽤trim()⽅法 --><property name="trimStrings" value="true"/></javaModelGenerator><!-- 可以为所有⽣成的接⼝添加⼀个⽗接⼝,但是MBG只负责⽣成,不负责检查<property name="rootInterface" value=""/>--></javaClientGenerator><!-- 选择⼀个table来⽣成相关⽂件,可以有⼀个或多个table,必须要有table元素选择的table会⽣成⼀下⽂件:1,SQL map⽂件2,⽣成⼀个主键类;3,除了BLOB和主键的其他字段的类;4,包含BLOB的类;5,⼀个⽤户⽣成动态查询的条件类(selectByExample, deleteByExample),可选;6,Mapper接⼝(可选)tableName(必要):要⽣成对象的表名;注意:⼤⼩写敏感问题。
rf generator 原理
rf generator 原理RF信号发生器(RF generator)是一种用于产生射频信号的仪器设备。
它在无线通信、雷达、无线电广播等领域起着重要作用。
本文将详细介绍RF信号发生器的原理和工作方式。
引言概述:RF信号发生器是一种能够产生射频信号的设备,它可以用于测试和校准射频设备、无线通信系统以及其他射频应用。
它的工作原理基于射频信号的合成和调制技术。
本文将从三个方面详细阐述RF信号发生器的原理和工作方式。
正文内容:1. 射频信号的合成技术1.1 频率合成器频率合成器是RF信号发生器中的关键部件,它能够根据需要产生特定频率的射频信号。
常见的频率合成器有直接数字频率合成(DDS)和锁相环(PLL)技术。
DDS技术通过数字信号处理器(DSP)生成射频信号,具有高精度和快速调频特点。
PLL技术则通过反馈控制实现频率合成,具有较高的稳定性和抗干扰能力。
1.2 相位合成器相位合成器用于控制射频信号的相位,它可以实现相位调制和相位连续调节。
常见的相位合成器有直接数字相位合成器(DPSK)和相位锁定环(PLL)技术。
DPSK技术通过数字信号处理器(DSP)对信号进行相位调制,具有高精度和灵活性。
PLL技术则通过反馈控制实现相位合成,具有较高的稳定性和抗干扰能力。
1.3 幅度合成器幅度合成器用于控制射频信号的幅度,它可以实现幅度调制和幅度连续调节。
常见的幅度合成器有直接数字幅度合成器(DAS)和幅度锁定环(ALC)技术。
DAS技术通过数字信号处理器(DSP)对信号进行幅度调制,具有高精度和灵活性。
ALC技术则通过反馈控制实现幅度合成,具有较高的稳定性和抗干扰能力。
2. 射频信号的调制技术2.1 调频技术调频技术是一种常用的射频信号调制技术,它通过改变信号的频率来传输信息。
调频技术可以实现宽带信号的传输,具有抗干扰能力强的优点。
常见的调频技术有频率调制(FM)和直接数字频率调制(DFM)。
2.2 调幅技术调幅技术是一种常用的射频信号调制技术,它通过改变信号的幅度来传输信息。
电力术语英文词典3(电气部分)
电力术语英文词典三(电气部分)1030.发电机 electric generator, generator1031.发电机组 generator set, generating unit1032.发电机定子 generator stator1033.发电机定子引出线 generator stator terminal lead1034.发电机定子铁芯 generator stator core, stator core of generator 1035.发电机定子绕组 generator stator winding, stator winding of generator 1036.发电机转子 generator stator1037.双水内冷发电机 dual internal water cooled generator1038.水-氢-氢冷发电机water-hydrogen-hydrogen cooling generator 1039.空气冷却发电机 air cooled generator1040.转子护环rotor end –cap1041.发电机过负荷 generator overload1042.发电机四角冷却器corner cooler of1043.发电机风温 air temperature of generator1044.汽轮发电机无蒸汽运行mini-steam operation of turbo-generator 1045.发电机无励磁运行loss of excitation of generator1046.柴油发电机 diesel-engine generator1047.直流发电机 dynamo, direct current generator1048.调相机 phase modulator, phase modifier1049.主励磁机main exciter1050.副励磁机 pilot exciter1051.备用励磁机 standby exciter1052.励磁系统 excitation system1053.整流器rectifier1054.整流子commutator,collector1055.石墨电刷 graphite brush1056.刷握 brush holder1057.集电环 slip ring, collector ring1058.电刷接头 brush joint1059.灭磁开关field suppression switch1060.汇流环collector ring, collector-shoe gear1061.主变压器main transformer1062.升压变压器 step-up transform er1063.降压变压器 step-down transformer1064.工作变压器 operating transform er1065.备用变压器 standby transformer1066.公用变压器common transformer1067.三相变压器three-phase transformer1068.单相变压器 single-phase transformer1069.带负荷调压变压器 on-load regulating transformer1070.联络变压器tie-in transformer1071.启动变压器 starting transformer1072.高压厂用工作变压器high-voltage house service operating transformer1073.低压厂用工作变压器low-voltage house service operating transformer1074.干式变压器 dry-type transfoermer1075.自藕变压器 auto-transformer1076.变压器铁芯transformer core1077.变压器铁圈transformer coil1078.变压器绕组transformer winding1079.变压器油箱transformer oil tank1080.变压器外壳transformer casing1081.变压器风扇transformer fan1082.变压器油枕transformer oil conservator, transform er oil drum1083.变压器额定电压transformer rated voltage1084.变压器额定电流transformer rated current1085.变压器调压范围transformer voltage regulation range1086.配电设备 power distribution equipment1087.SF6断路器SF6 circuit breaker, sulphur(sulfur) hexafluoride circuit breaker1088.母线分段断路器 bus section breaker1089.母线联络断路器 bus-tie breaker1090.灭弧设备 arc-extinguishing equipm ent1091.开关 switch1092.操作开关(控制开关) operating switch1093.磁力开关magnetic switch1094.低压自动空气开关low-voltage automatic air switch1095.转换开关changeover switch, switcher1096.钮子开关toggle switch1097.按钮 button1098.微动开关microswitch, sensitive switch1099.终端开关limit switch1100.隔离开关isolator, disconnector1101.真空开关vacuum switch1102.换向开关reversing switch1103.闸刀开关knife-switch1104.接地刀闸 earthing knife-switch1105.气体绝缘金属封闭 gas-insulated metal-enclosed switchgear (GIS)电器(全封闭组合电器)1106.蓄电池组 storage battery, accumulator battery1107.电压voltage1108.电流current1109.试验电压test voltage1110.空载电压 on-load voltage1111.电流强度current intensity1112.电动势 electromotive force(EMF), electromotance1113.电压降voltage-drop1114.电阻resistance1115.标准电阻器 standard resistor1116.电功率 electric power1117.电流输出current output1118.电气设备 electrical equipment1119.杆塔 pole and tower1120.电压表voltmeter1121.伏特volt1122.千伏kilovolt1123.电流表 ammeter, amperemeter1124.安培 ampere1125.三相电能表three-phase kilowatt-hour meter1126.单相电能表 single-phase kilowatt-hour meter1127.千瓦小时kilowatt-hour1128.电位计 potentiometer1129.功率表 wattmeter1130.瓦特 watt1131.千瓦kilowatt1132.兆瓦megawatt1133.功率因数表 power-factor meter1134.频率表frequency meter1135.赫兹hertz1136.转速表 speedometer1137.有功功率 active power1138.无功功率reactive power1139.千乏kilovar1140.视在功率 apparent power1141.千伏安kilovoltampere1142.变流器current converter1143.变阻器rheostat1144.充油套管 oil-filled bushing1145.穿墙套管 wall-through bushing1146.电阻箱resistance box1147.欧姆 ohm1148.出线盒terminal box1149.串励绕组 series-field winding1150.电瓶车 battery car, accumulator car1151.电气报警器 electric siren1152.蜂鸣器 buzzer, buzzerphone1153.线电压line voltage1154.变压器中性点接地方式neutral grounding state of transformer 1155.发电机-变压器组generator-transformer unit1156.发电机-变压器扩大单元generator-transformer extension unit 1157.通风ventilation, draft1158.自然通风natural ventilation, natural draft1159.强制通风forced ventilation, forced draft1160.径向通风radial ventilation1161.电动机 electric motor1162.高压电动机high-voltage motor1163.低压电动机low-voltage motor1164.直流电动机 direct-current motor, DC motor1165.交流电动机 alternating-current motor, AC motor1166.可逆电动机reversing motor, reversible motor1167.防爆电动机 explosion-proof motor1168.密闭式电动机canned motor, enclosed motor1169.同步电动机 synchronous motor1170.异步电动机 asynchronous motor1171.鼠笼式电动机 squirrel-cage motor1172.微型电动机micromotor1173.避雷器lightning arrester, lightning guard1174.避雷针lightning rod, lightning conductor1175.避雷线lightning wire1176.氧化锌避雷器ZnO lightning arrester, zinc oxide lightning arrester 1177.电流互感器current transformer(CT)1178.母线用穿心式电流互感器 busbar straight-through current transformer 1179.电压互感器voltage transform er, potential transformer(PT)1180.便携式电压互感器 portable voltage transform er1181.测量用互感器measuring transformer1182.电流互感器校验装置current transformer calibrating device1183.电源 power source, power supply1184.交流电源AC power source1185.直流电源DC power source1186.工作电源 operating source1187.备用电源 standby source1188.保安电源 safety source1189.公用电源common power supply1190.不停电电源uninterrupted power supply(UPS)1191.强电 strong current1192.弱电 weak current1193.继电器relay1194.信号继电器 signal relay1195.电流继电器current relay1196.电压继电器voltage relay1197.跳闸继电器tripping relay1198.合闸继电器closing relay1199.中间继电器intermediate relay1200.时间继电器time relay1201.零序电压继电器 zero-sequence voltage relay1202.热电偶继电器thermocouple relay1203.闪光继电器flasher relay1204.锁定继电器locking relay1205.保护继电器 protective relay1206.自启动继电器 self-starting relay1207.锁闭装置locking device1208.遥控telecontrol1209.遥信telesignalisation1210.遥测telemetering1211.遥调teleregulation1212.断路器 breaker, circuit breaker1213.少油断路器mini-oil breaker, oil-minimum breaker1214.负载特性曲线load characteristic curve1215.高频滤波器high-frequency filter1216.电流表分流器 ammeter shunt1217.接触器contactor1218.测量用滑线变阻器measuring slide rheostat, measuring slide-wire rheostat 1219.信号发生器 signal generator1220.油位指示器 oil level indicator1221.故障探测器fault finder, fault detector1222.结合滤波器combined filter1223.相位指示器 phase indicator1224.相位差指示器 phase-difference indicator1225.雷电记录器lightning recorder, lightning-stroke recorder1226.励磁调节器 excitation regulator1227.高压验电器high-voltage electroscope1228.电子式频率器 electronic frequency meter1229.插件 plug-in unit, insertion piece1230.常开触点normally opened contact1231.常闭触点normally closed contact1232.并联电容 parallel capacitance1233.保护接地 protective earthing1234.保护罩 protective cover, protective housing1235.熔丝fuse, fuse wire1236.熔线座fuse carrier1237.熔断器cutout, fusible cutout1238.电缆cable1239.电缆芯cable core1240.电缆架cable rack, cable bracket1241.电缆沟cable groove, cable channel1242.电缆竖井cable pit1243.电缆夹层cable interlayer1244.电缆防火fire protection for cable1245.架空电缆 aerial cable, overhead cable1246.充油电缆 oil-filled cable1247.塑料电缆 plastic cable1248.钢铠电缆 steel armored cable1249.高压电缆high voltage cable1250.低压电缆low voltage cable1251.通信电缆communication cable1252.控制电缆control cable1253.铅皮电缆lead covered cable1254.馈电电缆feed cable1255.电力电缆 power cable1256.两芯电缆twin-core cable1257.三芯电缆triple-core cable1258.网络控制室network control room1259.单元控制室unit control room1260.母线室 busbar room1261.厂用配电装置 auxiliary switchgear1262.蓄电池室 battery room1263.蓄电池室充电 battery charging1264.蓄电池室容量 battery capacity1265.充电装置charging apparatus, charging equipment1266.备用电源自投装置 standby power source automatic put-in device 1267.中央信号装置central signaling installation1268.配电室 switch room, distribution board room1269.配电装置 power distribution switchgear1270.磁场强度magnetic field strength, magnetic field intensity 1271.电磁感应 electromagnetic induction1272.平均功率 average power1273.输出功率 output capacity1274.轴功率 shaft output1275.频率frequency1276.脉冲 pulse1277.调闸脉冲tripping pulse1278.合闸脉冲closing pulse1279.励磁电压 excitation voltage1280.强行励磁force excitation1281.励磁回路 excitation circuit1282.有效电阻 effective resistance1283.预防试验 preventive test1284.联锁试验interlocking test1285.电动门试验motor-operated valve test1286.断路器跳合闸试验 breaker tripping and closing test1287.静态试验 static test1288.交流耐压试验AC withstand voltage test1289.支流耐压试验DC withstand voltage test1290.空载试验no-load test1291.电气设备共频试验 power frequency test for electric equipment1292.短路试验 short circuit test1293.温升试验temperature-rise test1294.高内阻电压表high internal resistance voltmeter 1295.过电压 overvoltage1296.毫安表millammeter1297.毫伏表millvoltmeter1298.交流电压表AC voltmeter1299.交流电流表AC ammeter1300.交直流两用电流表AC-DC ammeter1301.数字电压表 digital voltmeter1302.电流放大current amplification1303.电子计算机 electronic computer1304.电机温度 generator temperature, motor temperature 1305.冷却器前温度temperature in front of the cooler 1306.冷却器后温度temperature behind the cooler1307.断电器室relay room1308.继电器柜relay cabinet1309.继电器屏relay panel, relay board1310.架空线路 overhead line1311.布线 wiring1312.一次电压 primary voltage1313.二次电压 secondary voltage1314.一次绕组 primary winding1315.二次绕组 secondary winding1316.脱扣器tripper, tripping device1317.高频放大high-frequency amplification1318.高压线路high-voltage line1319.粗调rough adjustm ent1320.细调fine adjustment1321.微型电容器microcapacitor1322.并联电容器 parallel capacitor1323.并联电抗器 parallel reactor1324.串联电容补偿装置 series capacitor compensation device 1325.无功补偿装置reactive power compensation device 1326.互感mutual inductance1327.导电环conducting ring1328.惠斯通电桥 whetatone bridge1329.击穿电压 puncture voltage1330.集中控制centralized control, central control1331.磁极对数number of pole pairs1332.极间电压interpolar voltage1333.零电位 zero potential1334.零点漂移 zero drift, zero wander1335.漏电 electric leakage1336.消弧线圈 arc-suppressing coil, arc-extinguishing coil 1337.母线 bus, busbar1338.小母线miniature busbar1339.母线桥 bus structure1340.封闭母线 enclosed busbar1341.管型母线tubular busbar1342.软母线flexible busbar1343.应母线hard busbar1344.软导线flexible conductor1345.组合导线composite conductor1346.三角接法 delta connection1347.星形接法 wye connection1348.闪光信号flash signal1349.闪光报警装置flash alarming device1350.光字牌 alarm window1351.测电笔test pencil1352.验电器 electroscope1353.匝数number of turns1354.启动线圈 starting coil1355.漆包线 enameled wire1356.屏蔽接地 shield earthing1357.接通持续时间 duration of power-on1358.延迟时间 delay time1359.滞后相位lagging phase1360.自激 self-excitation1361.自动检测单元 automatic detecting unit1362.阻抗匹配impedance matching1363.最大脱扣电流maximum tripping surrent1364.最低负荷运行minimum load operation1365.厂用电率 service power rate, auxiliary power rate 1366.绝缘insulation1367.绝缘体insulant, insulator1368.绝缘杆insulating bar1369.绝缘靴insulating boot1370.绝缘手套insulating glove1371.绝缘等级insulation class, insulation grade1372.绝缘强度insulation strength1373.绝缘损伤insulation deterioration1374.绝缘套管insulated bushing(sleeve)1375.绝缘子串insulator string1376.相间绝缘insulation between phase1377.云母绝缘mica insulation1378.仪表盘instrum ent board, meter panel1379.盘面布置 panel face arrangem ent1380.相角差 phase-angle difference1381.音响信号 sound signal1382.分接头tap1383.安全净距net safety distance1384.印刷电路 printed circuit1385.选择电源 select unit1386.压敏电阻器voltage sensitive resistor1387.电线接头 wire terminal1388.终端接头 end connector1389.校正电路correction circuit1390.校正系数correction factor, correction coefficient 1391.接地线 ground wire, earthing wire1392.接地网 ground net, earthing network1393.土壤电阻率 soil resistivity1394.接地保护 ground protection1395.接地短路 grounded short circuit1396.接地系统 grounding system1397.接地中性点 earthed neutral, grounded neutral1398.可变电阻器variable resistor1399.输入抗租input impedance1400.输出抗租 output impedance1401.容抗capacitive reactance1402.感抗inductance reactance1403.内电阻internal resistance1404.奇次谐波 odd harmonic1405.偶次谐波 even harmonic1406.耦合电容coupled capacitance1407.感应电动热inductive electromotive1408.感应加热inductive heating1409.感应电压inductive voltage1410.高次谐波higher order harmonic1411.铁磁谐振ferro-resonance1412.消磁装置 dem agnetizer, field suppression equipment 1413.同相 same-phase, in-phase1414.相序 phase order, phase sequence1415.相位超前 phase lead1416.相位滞后 phase lag1417.相电压 phase voltage1418.矩形截面铜线rectangular copper wire1419.试运行trial operation1420.变电所 substation1421.测量元件measuring element1422.电缆击穿试验cable breakdown test, cable puncture test 1423.电缆敷设及清册cable laying and list1424.电工测量仪表 electric measuring instrum ent1425.电阻测量resistance measurement1426.电压测量voltage measurement1427.电流测定current measurement1428.时间测定time measurement1429.行灯 portable lamp, mobile lamp1430.便携式电流表 portable ammeter1431.便携式电压表 portable voltmeter1432.便携式转速表 portable speedmeter1433.双臂电桥 double bridge, Kelvin bridge1434.装设绕组(下线) winding1435.明线 open wire, open conductor1436.暗线concealed wire, concealed conductor1437.导线股数conductor strand number1438.照明线路lighting line1439.灯光信号lamp signal, light signal1440.电气照明 electric light signal1441.事故照明 emergency lighting1442.发电机与系列并列 generator running in synchronization 1443.发电机与系列解列 generator running out of synchronization 1444.控制control1445.操作试验 operation test1446.等效电路 equivalent circuit1447.超负荷运行 overload operation1448.输电transmission1449.带电live, electrified1450.原理图 schematic diagram1451.一次系统图 primary system diagram1452.二次系统图 secondary system diagram1453.直流系统图DC system diagram1454.励磁系统图 excitation system diagram1455.电力系统 electric power system1456.电力网 power grid, power netmork1457.电气主接线main wring, main connection1458.屋外配电装置 outdoor switchgear1459.屋内配电装置indoor switchgear1460.直流系统 direct current system, DC system1461.发电机出线小屋 generator outgoing terminal cubicle 1462.厂用电接线 auxiliary power wiring1463.出线电压等级 outgoing voltage grade1464.出线回路数circuit number of outgoing line1465.出线方向 outgoing direction, direction of outgoing line 1466.单母线接线 single bus connection1467.双母线接地 double bus connection1468.双母线带旁路接线 double bus connection with bypass 1469.控制屏control panel1470.控制台control board1471.信号返回屏 signal feed-back panel1472.动力箱 power control box1473.端子安装接线图terminal wiring diagram1474.电负荷 power load1475.功率损失 power loss1476.供电 power supply1477.发电 power generation1478.合闸电流closing current1479.分闸电流tripping current1480.就地控制local control1481.两相短路two-phase short circuit1482.三相短路three-phase short circuit1483.单相接地短路 single-phase ground short circuit 1484.系统短路容量 system short circuit capacity1485.短路电流计算calculation of short circuit current 1486.自动重合闸 automatic reclosing1487.高跨保护high-frequency protection1488.距离保护 distance protection1489.横差保护transverse differential protection1490.纵差保护longitudinal differential protection1491.母线保护 busbar protection1492.线路保护line protection1493.系统断电保护 system relay protection1494.过电压保护 over-voltage protection1495.母差保护 bus differential protection1496.瓦斯保护 buchholtz peotection1497.发电机主保护 generator main protection1498.变压器保护transformer protection1499.电动机保护motor protection1500.首次并网intial synchronization1501.首次送电intial power transmission1502.手动停止manual shutting down1503.手动操作manual operation1504.远方控制remote control1505.限负荷运行load limit operation1506.用电量 power consumption1507.运行试验 operation test1508.中性点neutral point1509.安装接地线connect ground wire1510.拆除接地线remove ground wire1511.装设遮拦install shade and railings1512.许可操作 admitted operation1513.操作人 operator1514.监护人 guardian1515.工作许可人 work approver1516.工作票签发人 work-sheet signer, person who signs the work-sheet 1517.工作负责人 person in charge of the work, manager of the work 1518.工作组成员member of working group1519.发布命令 give an order1520.接受命令 accept an order1521.复诵命令repeat an order1522.拒绝命令refuse an order1523.操作命令 operating order1524.停电后测绝缘insulation measurement after power outage 1525.向调度汇报report to dispatcher1526.合断路器close the breaker1527.拉开断路器 open the breaker1528.合隔离开关close the isolator1529.拉开隔离开关 open the isolator1530.断路器跳闸 breaker tripping1531.断路器非全相跳闸 open phase tripping of breaker1532.断路器非全相合闸 open phase closing of breaker1533.非全相运行 open phase operation1534.将保护改为跳闸change protection to tripping1535.将保护改为信号change protection to signaling1536.将保护停用 stop protection1537.联跳 shunt tripping1538.同期合环 synchronous looping-in1539.解环looping-off1540.核对相序check phase order1541.同期并列 synchronous parallel1542.线路强送电forced line energization1543.线路强送电成功 successful forced line energization1544.线路强送电不成功unsuccessful forced line energization1545.线路试送电trial line energigization1546.零起升压raising voltage from zero1547.倒母线changeover busbar1548.甩负荷load dropping, load dump, load rejection1549.系统振荡 system power swing1550.线路潮流line power flow1551.增加有功功率increase active power1552.增加无功功率increase reactive power1553.提高频率increase frequency1554.降低频率reduce frequency1555.合上接地刀闸close the grounding knife-switch1556.拉开接地刀闸 open the grounding knife-switch 1557.带电拆线live line disconnection1558.带电接线live line connection1559.通信communication1560.通信线路communication line1561.电话机telephone set1562.电话号telephone number1563.微波microwave1564.载波carrier1565.可视电话video telephone1566.电话亭telephone booth1567.交换机房 exchange room1568.话务台telephone service desk1569.频率计frequency meter1570.电缆cable1571.信号 signal1572.连接器connector1573.话务信号telephone service signal1574.告警铃 alarm bell1575.单元unit1576.主机main machine1577.系统 system1578.无线电radio1579.发射机transmitter1580.接收机receiver1581.电话公司telephone company1582.电话局telephone bureau1583.电话键telephone dial key1584.电话手机hand telephone1585.话机绳telephone cord1586.电话分机 extension telephone1587.电话管道telephone duct1588.交换机 switch1589.长途电话long-distance call1590.事故铃 emergency bell1591.通信工程communication engineering1592.通信设备communication equipment1593.通信监听communication monitoring1594.电子元件 electronic1595.通信中断率communication interrupt rate 1596.电子开关 electronic switch1597.打电话 phone-call1598.故障fault1599.故障信号fault signal1600.自动转换 automatic changeover1601.呼叫信号call signal1602.中继电路repeater circuit1603.中继器repeater1604.回叫call back1605.主叫calling1606.高租high resistance1607.低租low resistance1608.输出电平 output level1609.通话talking on the telephone1610.空闲free time1611.摘机 picking up the telephone1612.信号方向 signal direction1613.被叫called1614.告警控制 alarming control1615.呼叫详细记录 detailed calling record1616.内部呼叫internal calling1617.外部呼叫 external calling1618.中断组repeater group1619.服务级别 service level1620.电话设备诊断telephone equipm ent diagnosis 1621.脉冲编码调制 pulse-code modulation 1622.正常normal1623.异常 abnormal1624.告警 alarm1625.输入input1626.输出 output1627.信号状态 signal status1628.结束 end1629.测试test1630.拨号 dial1631.断开 switch-off1632.合上 switch-on1633.重拨redial1634.直拨 direct dialing。
ramp generator原理
基本原理Ramp generator(斜坡发生器)是一种电路,用于产生一个连续的线性增长或减小的电压或电流信号。
它通常由一个电容和一个电阻组成,通过改变电容或电阻的值,可以控制输出信号的斜率和幅度。
Ramp generator的基本原理是利用电容的充放电过程来产生一个线性变化的信号。
当一个电容开始充电时,电压会逐渐增加,直到达到一个设定的电压或时间,然后电容会开始放电,电压逐渐减小。
通过控制充电和放电的时间,可以得到不同斜率和幅度的输出信号。
电荷和放电过程在理解Ramp generator的原理之前,我们首先需要了解电容的充电和放电过程。
当一个电容开始充电时,电流会通过电容,导致电容器两端的电压逐渐增加。
电流的大小取决于电压和电容的值,可以用以下公式表示:I = C * dV/dt其中,I是电流,C是电容的值,dV/dt是电压的变化率。
当电容充满电时,电流会停止流动,电压保持不变。
此时,电容储存了一定数量的电荷。
电荷的大小可以用以下公式表示:Q = C * V其中,Q是电荷,C是电容的值,V是电压。
当一个电容开始放电时,电荷会从电容中流出,导致电压逐渐减小。
放电的速率取决于电容的值和外部电路的负载。
放电过程可以用以下公式表示:V = V0 * exp(-t/RC)其中,V是电压,V0是初始电压,t是时间,R是电阻的值,C是电容的值。
Ramp generator的工作原理Ramp generator通常由一个电容和一个电阻组成,如下图所示:当电源开启时,电容开始充电,电压逐渐增加。
充电的速率由电容和电阻的值决定。
充电过程可以用以下公式表示:V = V0 * (1 - exp(-t/RC))其中,V是电压,V0是初始电压,t是时间,R是电阻的值,C是电容的值。
当电容充满电时,Ramp generator会触发一个开关,将电容与电源断开连接,开始放电。
放电过程可以用以下公式表示:V = V0 * exp(-t/RC)通过控制充电和放电的时间,可以改变输出信号的斜率和幅度。
mybatis generator 批量插入方法
mybatis generator 批量插入方法MyBatis Generator是一款优秀的Java代码生成工具,它可以帮助我们快速生成MyBatis的CRUD(创建、读取、更新、删除)代码。
在处理大量数据时,批量插入方法可以提高数据插入的效率,下面我们就来介绍如何使用MyBatis Generator生成批量插入方法。
**一、设置生成器配置**首先,你需要在MyBatis Generator的配置文件中,指定需要生成代码的表和对应的字段。
你需要提供表的结构信息,包括每个字段的数据类型、长度、是否主键等。
在生成的配置文件中,需要设置好数据库连接信息。
**二、编写Mapper接口**在Mapper接口中,你需要定义对应的批量插入方法。
这个方法会接收一个包含所有要插入数据的List对象,然后通过MyBatis Generator自动生成的CRUD方法将数据逐条插入数据库。
**三、生成代码**运行MyBatis Generator,根据你的配置文件生成对应的代码。
生成的代码中,应该包含Mapper接口中的批量插入方法以及对应的SQL语句。
你还可以在数据库表对应的实体类中看到自动生成的批量插入方法的调用方式。
**四、使用代码**在主程序中,你可以使用生成的代码进行批量插入操作。
注意,由于是批量插入,插入的数据量较大时,需要考虑到数据库的性能和内存使用情况,适当调整数据库连接数和JVM内存大小。
**示例代码**假设我们有一个User实体类,其中有id、name、age三个字段:1. 配置文件mybatis-generator-config.xml:```xml<configuration><environments default="development"><environment id="development"><database driver="com.mysql.jdbc.Driver"url="jdbc:mysql://localhost:3306/test" user="root"password="123456"><table name="user" schema="test"><propertyname="idColumn">id</property><propertyname="insertColumn">name,age</property><propertyname="mapperPrefix">UserMapper</property></table></database></environment></environments></configuration>```2. Mapper接口UserMapper:```javapublic interface UserMapper {void insertBatch(@Param("users") List<User> users);}```3. User实体类:```javapublic class User {private Integer id;private String name;private Integer age;// getter and setter methods...}```4. 使用生成的代码进行批量插入:在主程序中:```javaList<User> users = new ArrayList<>(); // 假设有多个User 对象需要插入数据库...UserMapper userMapper =MyBatisUtil.getMapper(UserMapper.class); // 获取Mapper接口实例...userMapper.insertBatch(users); // 调用批量插入方法...```以上就是使用MyBatis Generator生成批量插入方法的完整流程。
轮机实用英语
Various Equipment In Engine Room。
1. 主机 Main Engine。
2. 发电机 Generator。
3. 空压机 Main Air Compressor。
4. 造水机 Fresh Water Generator(Evaporator)。
19.十字头轴承 Crosshead Bearing。
20.十字头滑 Crosshead Slipper。
21.十字头导板 Crosshead Guide。
22.主轴承 Main Bearing。
23.轴承轴瓦——上半块 Bearing Bush—Upper Half。
36.螺旋桨 Propeller。
37.测深仪 Echo Sounding。
38.空气瓶 Air Bottle。
39.给水泵 Boiler Water Feed Pump。
27.污水泵 Bilge Pump。
28.增压泵 Fuel Booster。
29.油头冷却泵 Nozzle Cooling Pump。
30.日常通用泵 G..S.Pump。
31.应急空压机 Emergency Air Comp。
23.燃油驳运泵 Fuel Oil Transfer Pump。
24.轻油驳运泵 Diesel Oil Transfer Pump。
25.主海水泵 Main Sea Water Pump。
26.压载水泵 Ballast Water Pump。
52.活塞裙 Piston Skirt。
53.活塞销 Piston Pin。
28.平衡块紧配螺栓 Balance Weigh Fitting Bolt。
matlab中pwmgenerator模块参数
matlab中pwmgenerator模块参数在MATLAB中,PWMGenerator模块用于生成脉冲宽度调制(PWM)信号。
PWM信号通常由一个固定频率的方波和一个可变占空比的周期性信号组成,用于控制电力电子设备和直流电机等系统。
PWMGenerator模块的参数如下:1. 'Frequency':设置PWM信号的频率。
默认值为1kHz,可以根据需求进行调整。
例如,设置为'Frequency', 10e3将将PWM 信号的频率设置为10kHz。
2. 'DutyCycle':设置PWM信号的占空比。
占空比表示方波高电平的时间与一个周期的比值,通常以百分比表示。
默认值为50%。
例如,设置为'DutyCycle', 30表示PWM信号的占空比为30%。
3. 'PulseWidth':设置PWM信号的脉冲宽度。
脉冲宽度表示方波高电平的时间长度。
默认值为0.5ms。
例如,设置为'PulseWidth', 1e-3将PWM信号的脉冲宽度设置为1ms。
4. 'SamplesPerFrame':设置每个输出帧中的样本数。
默认值为1。
例如,设置为'SamplesPerFrame', 100将每个输出帧中的样本数设置为100。
5. 'VariableRateOutput':用于启用或禁用变速输出。
默认值为false,即禁用变速输出。
设置为'True'将启用变速输出,这意味着PWM信号的频率和脉冲宽度将根据输入信号的频率进行变化。
6. 'FrameBased':用于确定输出信号是基于帧还是基于样本的。
默认值为false,即基于样本。
设置为'True'将输出信号与输入信号具有相同的帧长度。
7. 'InitialCondition':设置PWM信号的初始状态或初始状态。
Generator
专利名称:Generator发明人:Harif, Gershon申请号:AU2011241835申请日:20110414公开号:AU2011241835A1公开日:20121018专利内容由知识产权出版社提供摘要:A generator comprising a heat differential module, a pressure module, a conversion module and a heat recovery arrangement; the heat differential module comprising at least a first, high temperature reservoir configured for containing a work medium at high temperature, a second, low temperature reservoir configured for containing a work medium at low temperature and a heat mechanism being in fluid communication with at least one of the reservoirs. The heat mechanism is configured for maintaining a temperature difference therebetween by providing heat to and/or removing heat from the reservoirs; the pressure module comprises a pressure medium in selective fluid communication with the reservoirs of the heat differential module for alternately performing a heat exchange process with the work medium thereof. The pressure medium is configured to fluctuate between a minimal operative temperature and a maximal operative temperature of the pressure medium corresponding to the high and low temperature of the work medium; the conversion module is in mechanical communication with the pressure medium and configured for utilizing temperature changes of the pressure medium for the production of output energy; the heat recovery arrangement is in thermal communication with the heat differential module and configured for absorbing heat from the pressure medium and providing heat to the heatdifferential module or to the pressure module.申请人:Gershon Machine Ltd.代理人:Shelston IP更多信息请下载全文后查看。
Generator
专利名称:Generator发明人:Shimanuki, Kenmei,Sugimura,Hidetoshi,Otaka, Toru,Hiramatsu,Daisuke,Tsujikawa, Kazuma,Nakamura,Wataru,Sato, Kazuki,Niida, Kunitomi,Arai,Yutaro,Kimura, Keiichiro申请号:EP14176972.9申请日:20140714公开号:EP2874290A3公开日:20160629专利内容由知识产权出版社提供专利附图:摘要:In one embodiment, a generator includes an alternating current exciter to output first, second and third alternating currents respectively having first, second and third phases, and a rotary rectifier to convert the first, second and third alternating currents into first, second and third direct currents, respectively. The generator further includes a rotating shaft on which the exciter and the rectifier are mounted, and plural conductors mounted on the shaft, and including one or more first conductors, one or more second conductors and one or more third conductors to respectively supply the first, second and third alternating currents from the exciter to the rectifier. The plural conductors include one or more conductor groups in each of which two or more conductors are collectively arranged, and each of the conductor groups includes the two or more conductors arranged to cancel a magnetic field around each conductor in the same group.申请人:Kabushiki Kaisha Toshiba地址:1-1, Shibaura 1-chome, Minato-ku Tokyo JP国籍:JP代理机构:Moreland, David更多信息请下载全文后查看。
mybatis-generator数据库注释实体类生成以及generatorConfig文件配置
mybatis-generator数据库注释实体类⽣成以及generatorConfig⽂件配置项⽬⾥新建表时model,mapper以及mapper.xml基本都是⽤Mybatis Generator(以下简称为MBG)⾃动⽣成的,但是MBG⾃动⽣成的model的注释实在有点⾮⼈类,⾄少中国⼈是完全接受不了的,在配置中禁⽤掉注释吧,倒是简单了,可是⽣成的model类光秃秃的,啥都没有,字段⽅法没有注释,使⽤很不⽅便,别⼈看也不知道这个字段是啥含义,到最后还是要⾃⼰添加,⼀张表多点⼏⼗个字段,特么添加累死了,不能这么⼲,得想法⼦,百度了⼀下⽹上,基本有两种⽅法,第⼀种,就是直接修改MGB的源代码,第⼆种就是⾃⼰写⼀个类实现CommentGenerator接⼝,先说⾃⼰写⼀个新类实现CommentGenerator接⼝的⽅法来使⾃动⽣成的model类含有中⽂注释吧.⼀:⾸先你得有⼀个maven项⽬,这个我就不多提⼆:通过mybatis generator实现⾃动⽣产model,mapper以及mapper.xml,具体参考 Intellij IDEA 14中使⽤MyBatis-generator ⾃动⽣成MyBatis代码三:通过查看你会发现,注解类是在mybatis-generator-core jar包中 org.mybatis.generator.internal包下的DefaultCommentGenerator类。
那么这⾥有两种⽅法,⼀种是重写DefaultCommentGenerator类,另外⼀种中修改jar包中的源码,但很明显第⼀种⽅法⽐较简单,这⾥也只介绍第⼀种⽅法的写法。
3.1在源代码中新建⼀个类MyCommentGenerator,实现CommentGenerator接⼝,类的代码如下:package org.mybatis.generator;/*** Created by 草帽boy on 2017/2/16.* mybatis generator ⾃定义comment⽣成器.* 基于MBG 1.3.2.* @author ZhangAY 2016-02-19*/import java.text.SimpleDateFormat;import java.util.Date;import java.util.Properties;import mentGenerator;import org.mybatis.generator.api.IntrospectedColumn;import org.mybatis.generator.api.IntrospectedTable;import org.mybatis.generator.api.dom.java.*;import org.mybatis.generator.api.dom.xml.XmlElement;import org.mybatis.generator.config.MergeConstants;import org.mybatis.generator.config.PropertyRegistry;import org.mybatis.generator.internal.util.StringUtility;public class MyCommentGenerator implements CommentGenerator {private Properties properties;private Properties systemPro;private boolean suppressDate;private boolean suppressAllComments;private String currentDateStr;public MyCommentGenerator() {super();properties = new Properties();systemPro = System.getProperties();suppressDate = false;suppressAllComments = false;currentDateStr = (new SimpleDateFormat("yyyy-MM-dd")).format(new Date());}public void addJavaFileComment(CompilationUnit compilationUnit) {// add no file level comments by defaultreturn;}/*** Adds a suitable comment to warn users that the element was generated, and* when it was generated.*/public void addComment(XmlElement xmlElement) {return;}public void addRootComment(XmlElement rootElement) {// add no document level comments by defaultreturn;}public void addConfigurationProperties(Properties properties) {this.properties.putAll(properties);suppressDate = StringUtility.isTrue(properties.getProperty(MENT_GENERATOR_SUPPRESS_DATE));suppressAllComments = StringUtility.isTrue(properties.getProperty(MENT_GENERATOR_SUPPRESS_ALL_COMMENTS));}/*** This method adds the custom javadoc tag for. You may do nothing if you do* not wish to include the Javadoc tag - however, if you do not include the* Javadoc tag then the Java merge capability of the eclipse plugin will* break.** @param javaElement the java element*/protected void addJavadocTag(JavaElement javaElement, boolean markAsDoNotDelete) {javaElement.addJavaDocLine(" *");StringBuilder sb = new StringBuilder();sb.append(" * ");sb.append(MergeConstants.NEW_ELEMENT_TAG);if (markAsDoNotDelete) {sb.append(" do_not_delete_during_merge");}String s = getDateString();if (s != null) {sb.append(' ');sb.append(s);}javaElement.addJavaDocLine(sb.toString());}/*** This method returns a formated date string to include in the Javadoc tag* and XML comments. You may return null if you do not want the date in* these documentation elements.** @return a string representing the current timestamp, or null*/protected String getDateString() {String result = null;if (!suppressDate) {result = currentDateStr;}return result;}public void addClassComment(InnerClass innerClass, IntrospectedTable introspectedTable) { if (suppressAllComments) {return;}StringBuilder sb = new StringBuilder();innerClass.addJavaDocLine("/**");sb.append(" * ");sb.append(introspectedTable.getFullyQualifiedTable());sb.append(" ");sb.append(getDateString());innerClass.addJavaDocLine(sb.toString());innerClass.addJavaDocLine(" */");}public void addEnumComment(InnerEnum innerEnum, IntrospectedTable introspectedTable) { if (suppressAllComments) {return;}StringBuilder sb = new StringBuilder();innerEnum.addJavaDocLine("/**");// addJavadocTag(innerEnum, false);sb.append(" * ");sb.append(introspectedTable.getFullyQualifiedTable());innerEnum.addJavaDocLine(sb.toString());innerEnum.addJavaDocLine(" */");}public void addFieldComment(Field field, IntrospectedTable introspectedTable,IntrospectedColumn introspectedColumn) {if (suppressAllComments) {return;}StringBuilder sb = new StringBuilder();field.addJavaDocLine("/**");sb.append(" * ");sb.append(introspectedColumn.getRemarks());field.addJavaDocLine(sb.toString());// addJavadocTag(field, false);field.addJavaDocLine(" */");}public void addFieldComment(Field field, IntrospectedTable introspectedTable) {if (suppressAllComments) {return;}StringBuilder sb = new StringBuilder();field.addJavaDocLine("/**");sb.append(" * ");sb.append(introspectedTable.getFullyQualifiedTable());field.addJavaDocLine(sb.toString());field.addJavaDocLine(" */");}public void addModelClassComment(TopLevelClass topLevelClass, IntrospectedTable introspectedTable) { }public void addGeneralMethodComment(Method method, IntrospectedTable introspectedTable) {if (suppressAllComments) {return;}// method.addJavaDocLine("/**");// addJavadocTag(method, false);// method.addJavaDocLine(" */");}public void addGetterComment(Method method, IntrospectedTable introspectedTable,IntrospectedColumn introspectedColumn) {if (suppressAllComments) {return;}method.addJavaDocLine("/**");StringBuilder sb = new StringBuilder();sb.append(" * ");sb.append(introspectedColumn.getRemarks());method.addJavaDocLine(sb.toString());sb.setLength(0);sb.append(" * @return ");sb.append(introspectedColumn.getActualColumnName());sb.append(" ");sb.append(introspectedColumn.getRemarks());method.addJavaDocLine(sb.toString());// addJavadocTag(method, false);method.addJavaDocLine(" */");}public void addSetterComment(Method method, IntrospectedTable introspectedTable,IntrospectedColumn introspectedColumn) {if (suppressAllComments) {return;}method.addJavaDocLine("/**");StringBuilder sb = new StringBuilder();sb.append(" * ");sb.append(introspectedColumn.getRemarks());method.addJavaDocLine(sb.toString());Parameter parm = method.getParameters().get(0);sb.setLength(0);sb.append(" * @param ");sb.append(parm.getName());sb.append(" ");sb.append(introspectedColumn.getRemarks());method.addJavaDocLine(sb.toString());// addJavadocTag(method, false);method.addJavaDocLine(" */");}public void addClassComment(InnerClass innerClass, IntrospectedTable introspectedTable, boolean markAsDoNotDelete) {if (suppressAllComments) {return;}StringBuilder sb = new StringBuilder();innerClass.addJavaDocLine("/**");sb.append(" * ");sb.append(introspectedTable.getFullyQualifiedTable());innerClass.addJavaDocLine(sb.toString());sb.setLength(0);sb.append(" * @author ");sb.append(systemPro.getProperty(""));sb.append(" ");sb.append(currentDateStr);// addJavadocTag(innerClass, markAsDoNotDelete);innerClass.addJavaDocLine(" */");}}3.2.再新建⼀个类StartUp,⽤于运⾏项⽬,(若是集成Eclipse,可直接运⾏操作,查看mybatis与eclipse的集成,这⾥不介绍了)也就是运⾏StartUp类就会直接⽣成model,mapper以及mapper.xml,类的代码如下:package org.mybatis.generator;/*** Created by 草帽boy on 2017/2/16.* 启动⽂件,只需要点击运⾏就⾏*/import java.io.File;import java.io.IOException;import .URISyntaxException;import java.sql.SQLException;import java.util.ArrayList;import java.util.List;import org.mybatis.generator.api.MyBatisGenerator;import org.mybatis.generator.config.Configuration;import org.mybatis.generator.config.xml.ConfigurationParser;import org.mybatis.generator.exception.InvalidConfigurationException;import org.mybatis.generator.exception.XMLParserException;import org.mybatis.generator.internal.DefaultShellCallback;public class StartUp {public static void main(String[] args) throws URISyntaxException {try {List<String> warnings = new ArrayList<String>();boolean overwrite = true;//直接获取generatorConfig.xml的⽂件路径根据具体情况查看File configFile = new File("E:\\IDEAWorkPlace\\GraduationDesign\\CourseDesignManageSystem\\20170122\\CourseDesignManage\\src\\main\\resources\\generatorConfig.xml"); ConfigurationParser cp = new ConfigurationParser(warnings);Configuration config = cp.parseConfiguration(configFile);DefaultShellCallback callback = new DefaultShellCallback(overwrite);MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings);myBatisGenerator.generate(null);} catch (SQLException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} catch (InterruptedException e) {e.printStackTrace();} catch (InvalidConfigurationException e) {e.printStackTrace();} catch (XMLParserException e) {e.printStackTrace();}}}3.3 另外需要简单修改⼀下generatorConfig.xml中的注释配置<commentGenerator type="org.mybatis.generator.MyCommentGenerator"><!-- <property name="suppressDate" value="true"/><!– 是否去除⾃动⽣成的注释 true:是: false:否 –><property name="suppressAllComments" value="false"/>--></commentGenerator>commentGenerator 的type是你刚刚重构的MyCommentGenerator类的位置3.4其中我的⽂件结构如下:四:点击运⾏StartUp,你会发现model,mapper以及mapper.xml都已经产⽣,其中实体类的运⾏的结果如下注意:若是出现中⽂乱码,在generatorConfig.xml⽂件中增加以下配置<property name="javaFileEncoding" value="UTF-8"/>1.以下是generatorConfig.xml配置⽂件<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE generatorConfiguration PUBLIC "-////DTD MyBatis Generator Configuration 1.0//EN" "/dtd/mybatis-generator-config_1_0.dtd" > <generatorConfiguration ><!-- 数据库驱动包位置 --><classPathEntrylocation="D:\repository\mysql\mysql-connector-java\5.1.34\mysql-connector-java-5.1.34.jar"/><context id="context1"><property name="javaFileEncoding" value="UTF-8"/><commentGenerator type="com.wareic.utils.MyCommentGenerator"></commentGenerator><!-- <commentGenerator>是否去除⾃动⽣成的注释 true:是: false:否<property name="suppressAllComments" value="true"/></commentGenerator> --><!-- 数据库链接URL、⽤户名、密码 --><jdbcConnection driverClass="com.mysql.jdbc.Driver"connectionURL="jdbc:mysql://17.16.32.2:3306/db_wareic" userId="root" password="123456"/><!-- ⽣成模型的包名和位置 wareic为项⽬名称 --><javaModelGenerator targetPackage="com.wareic.model" targetProject="wareic/src/main/java"/><!-- ⽣成的映射⽂件报名和位置 --><sqlMapGenerator targetPackage="com.wareic.mapper" targetProject="wareic/src/main/java"/><!-- ⽣成DAO的包名和位置 --><javaClientGenerator targetPackage="com.wareic.mapper" targetProject="wareic/src/main/java" type="XMLMAPPER"/><!-- 要⽣成的那些表(更改tableName 和domainObjectName 就可以了) --><table schema="db_wareic" tableName="t_product" domainObjectName="Product" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"><!-- <columnOverride column="FILMID" property="FILMID" /> --></table></context></generatorConfiguration>2.执⾏startUp类型中的main函数3.MyBatis Generator官⽹:---------------------作者:王卫东来源:CSDN原⽂:https:///wwd0501/article/details/76618363版权声明:本⽂为博主原创⽂章,转载请附上博⽂链接!。
(七)mybatis-plus之generator(ftl模板生成:lombokswagg。。。
(七)mybatis-plus之generator(ftl模板⽣成:lombokswagg。
springboot 集成swagger2的访问地址是:http://localhost:端⼝号/swagger-ui.html关于如何集成swagger2这⾥就不介绍了,前⾯发过了。
这⾥主要介绍⼀下mybatis-plus使⽤ftl如何⾃动⽣成代码关于lombok,需要idea提前安装⼀个插件的,不会的可以⾃⾏百度关于pom.xml配置,这⾥我采⽤的版本有些新,如果有问题请留⾔,其他的版本,在前⾯有介绍,这⾥只做增量处理<dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.4.1</version></dependency><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-generator</artifactId><version>3.4.1</version></dependency><dependency><groupId>org.freemarker</groupId><artifactId>freemarker</artifactId><version>2.3.28</version></dependency>generator代码(注:具体路径请根据实际项⽬进⾏修改)public class MpGenerator {/*** 参数配置* @param args*///作者private static final String AUTHOR = "xx";//表名前缀//private static final String[] TABLEPREFIX = {"t_"};private static final String[] TABLEPREFIX = {""};//表名private static final String[] TABLENAMES = {"accound"};//包名称private static final String PACKAGENAME = ".wj";//⽤户名private static final String USERNAME = "root";//密码private static final String PASSWORD = "123456";//数据库urlprivate static final String URL = "jdbc:mysql://127.0.0.1:3306/book?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai";public static void main(String[] args){AutoGenerator mpg = new AutoGenerator();/*** 全局变量配置*/GlobalConfig gc = new GlobalConfig();// 当前项⽬final String projectPath = System.getProperty("user.dir");// 输出路径gc.setOutputDir(projectPath + "/src/main/java");gc.setFileOverride(true);gc.setAuthor("cyy");gc.setOpen(false);gc.setSwagger2(true);gc.setBaseResultMap(true);gc.setDateType(DateType.TIME_PACK);gc.setBaseColumnList(true);gc.setMapperName("%sMapper");gc.setXmlName("%sMapper");gc.setServiceName("%sService");gc.setServiceImplName("%sServiceImpl");gc.setControllerName("%sController");mpg.setGlobalConfig(gc);/*** 数据源配置*/DataSourceConfig dsc = new DataSourceConfig();dsc.setDbType(DbType.MYSQL);dsc.setDriverName("com.mysql.cj.jdbc.Driver");dsc.setUsername("root");dsc.setPassword("123456");dsc.setUrl("jdbc:mysql://127.0.0.1:3306/book?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai");mpg.setDataSource(dsc);/*** 数据库表配置*/StrategyConfig strategy = new StrategyConfig();strategy.setTablePrefix(TABLEPREFIX).setRestControllerStyle(true).setEntityLombokModel(true);strategy.setNaming(NamingStrategy.underline_to_camel);strategy.setColumnNaming(NamingStrategy.underline_to_camel);strategy.setCapitalMode(true);strategy.setInclude(TABLENAMES);mpg.setStrategy(strategy);/*** 包配置*/PackageConfig pc = new PackageConfig();pc.setParent(".wj");pc.setController("controller");pc.setService("service");pc.setServiceImpl("service.impl");pc.setMapper("mapper");pc.setEntity("entity");mpg.setPackageInfo(pc);/*** ⾃定义配置*/InjectionConfig cfg = new InjectionConfig(){@Overridepublic void initMap(){}};/*** 将xml⽣成到resource下⾯*/String templatePath = "/templates/mapper.xml.ftl";// ⾃定义输出配置List focList = new ArrayList();// ⾃定义配置会被优先输出focList.add(new FileOutConfig(templatePath){@Overridepublic String outputFile(TableInfo tableInfo){// ⾃定义输出⽂件名,如果你 Entity 设置了前后缀、此处注意 xml 的名称会跟着发⽣变化!!return projectPath + "/src/main/resources/mapper/" + "/" + tableInfo.getEntityName() + "Mapper" + StringPool.DOT_XML; }});cfg.setFileOutConfigList(focList);mpg.setCfg(cfg);/*** 配置模板*/TemplateConfig templateConfig = new TemplateConfig();templateConfig.setEntity("templates/entity");templateConfig.setService("templates/service.java");templateConfig.setServiceImpl("templates/serviceImpl.java");// /templates/entity.java 模板路径配置,默认再templatestemplateConfig.setController("templates/controller");templateConfig.setXml(null);mpg.setTemplate(templateConfig);/*** 模板引擎*/mpg.setTemplateEngine(new FreemarkerTemplateEngine());mpg.execute();}}ftl模板(这⾥只写了entity,controller)因为采⽤的是mybatis-plus的,service是不需要写代码的controller.ftlpackage ${package.Controller};import org.springframework.web.bind.annotation.*;<#if restControllerStyle>import org.springframework.web.bind.annotation.RestController;<#else>import org.springframework.stereotype.Controller;</#if>import org.springframework.beans.factory.annotation.Autowired;import io.swagger.annotations.Api;import io.swagger.annotations.*;import lombok.extern.slf4j.Slf4j;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import java.util.*;import mon.util.ResponseDTO;import ${package.Service}.${table.serviceName};import ${package.Entity}.${table.entityName};<#if superControllerClassPackage??>import ${superControllerClassPackage};</#if>/*** <p>* ${ment!} 前端控制器* </p>** @author ${author}* @since ${date}*/<#if restControllerStyle>@RestController<#else>@Controller</#if>@Slf4j@Api(value = "${}CRUD接⼝")@RequestMapping("<#if package.ModuleName??>${package.ModuleName}</#if>/<#if controllerMappingHyphenStyle??>${controllerMappingHyphen}<#else>${table.entityPath}</#if>")<#if kotlin>class ${table.controllerName}<#if superControllerClass??> : ${superControllerClass}()</#if><#else><#if superControllerClass??>public class ${table.controllerName} extends ${superControllerClass} {<#else>public class ${table.controllerName} {</#if>private final Logger logger = LoggerFactory.getLogger(${table.controllerName}.class);@Autowiredprivate ${table.serviceName} ${}Service;@ApiOperation(value = "获取${}列表",notes="")@GetMapping("/")public List<${table.entityName}> ${}List() throws Exception {List<${table.entityName}> ${}List = ${}Service.list();return ${}List;}@ApiOperation(value = "修改${}",notes="根据id修改${}")@ApiImplicitParam(name = "${}", value = "${}实体", required = true, dataType = "Student")@PutMapping("/")public ResponseDTO<Boolean> ${}Update(@RequestBody ${table.entityName} ${}) throws Exception {Boolean flag = ${}Service.updateById(${});return ResponseDTO.ok(Boolean.valueOf(flag));}@ApiOperation(value = "删除${}",notes="根据id删除${}")@ApiImplicitParam(name = "id", value = "${}id", required = true, dataType = "<#list table.fields as field><#if field.keyFlag == true>${field.columnType?lower_case?cap_first}</#if></#list>") @DeleteMapping("/{id}")public ResponseDTO<Boolean> ${}Delete(@PathVariable <#list table.fields as field><#if field.keyFlag == true>${field.columnType?lower_case?cap_first}</#if></#list> id) throws Exception { Boolean flag = ${}Service.removeById(id);return ResponseDTO.ok(Boolean.valueOf(flag));}@ApiOperation(value = "添加${}",notes="新增⼀条${}")@ApiImplicitParam(name = "${}", value = "${}实体", required = true, dataType = "${}")@PostMapping("")public ResponseDTO<Boolean> ${}Insert(@RequestBody ${table.entityName} ${}) throws Exception {Boolean flag = ${}Service.save(${});return ResponseDTO.ok(Boolean.valueOf(flag));}}</#if>entity.ftlpackage ${package.Entity};<#list table.importPackages as pkg>import ${pkg};</#list><#if swagger2>import io.swagger.annotations.ApiModel;import io.swagger.annotations.ApiModelProperty;</#if><#if entityLombokModel>import lombok.Data;import lombok.EqualsAndHashCode;<#if chainModel>import lombok.experimental.Accessors;</#if></#if>/*** @author ${author}* @since ${date}*/<#if entityLombokModel>@Data<#if superEntityClass??>@EqualsAndHashCode(callSuper = true)<#else>@EqualsAndHashCode(callSuper = false)</#if><#if chainModel>@Accessors(chain = true)</#if></#if><#if table.convert>@TableName("${}")</#if><#if swagger2>@ApiModel(value="${entity}对象", description="${ment!}")</#if><#if superEntityClass??>public class ${entity} extends ${superEntityClass}<#if activeRecord><${entity}></#if> {<#elseif activeRecord>public class ${entity} extends Model<${entity}> {<#else>public class ${entity} implements Serializable {</#if><#if entitySerialVersionUID>private static final long serialVersionUID = 1L;</#if><#-- ---------- BEGIN 字段循环遍历 ----------><#list table.fields as field><#if field.keyFlag><#assign keyPropertyName="${field.propertyName}"/></#if><#if ment!?length gt 0><#if swagger2>@ApiModelProperty(value = "${ment}")<#else>/*** ${ment}*/</#if></#if><#if field.keyFlag><#-- 主键 --><#if field.keyIdentityFlag>@TableId(value = "${field.annotationColumnName}", type = IdType.AUTO)<#elseif idType??>@TableId(value = "${field.annotationColumnName}", type = IdType.${idType})<#elseif field.convert>@TableId("${field.annotationColumnName}")</#if><#-- 普通字段 --><#elseif field.fill??><#-- ----- 存在字段填充设置 -----><#if field.convert>@TableField(value = "${field.annotationColumnName}", fill = FieldFill.${field.fill})<#else>@TableField(fill = FieldFill.${field.fill})</#if><#elseif field.convert>@TableField("${field.annotationColumnName}")</#if><#-- 乐观锁注解 --><#if (versionFieldName!"") == >@Version</#if><#-- 逻辑删除注解 --><#if (logicDeleteFieldName!"") == >@TableLogic</#if>private ${field.propertyType} ${field.propertyName};</#list><#------------ END 字段循环遍历 ----------><#if !entityLombokModel><#list table.fields as field><#if field.propertyType == "boolean"><#assign getprefix="is"/><#else><#assign getprefix="get"/></#if>public ${field.propertyType} ${getprefix}${field.capitalName}() {return ${field.propertyName};}<#if chainModel>public ${entity} set${field.capitalName}(${field.propertyType} ${field.propertyName}) { <#else>public void set${field.capitalName}(${field.propertyType} ${field.propertyName}) {</#if>this.${field.propertyName} = ${field.propertyName};<#if chainModel>return this;</#if>}</#list></#if><#if entityColumnConstant><#list table.fields as field>public static final String ${?upper_case} = "${}";</#list></#if><#if activeRecord>@Overrideprotected Serializable pkVal() {<#if keyPropertyName??>return this.${keyPropertyName};<#else>return null;</#if>}</#if><#if !entityLombokModel>@Overridepublic String toString() {return "${entity}{" +<#list table.fields as field><#if field_index==0>"${field.propertyName}=" + ${field.propertyName} +<#else>", ${field.propertyName}=" + ${field.propertyName} +</#if></#list>"}";}</#if>}以上两个ftl的存放路径⽣成的⽂件entitypackage .wj.entity;import java.math.BigDecimal;import com.baomidou.mybatisplus.annotation.TableName;import java.time.LocalDateTime;import java.io.Serializable;import io.swagger.annotations.ApiModel;import io.swagger.annotations.ApiModelProperty;import lombok.Data;import lombok.EqualsAndHashCode;/*** @author cyy* @since 2020-12-11*/@Data@EqualsAndHashCode(callSuper = false)@TableName("accound")@ApiModel(value="Accound对象", description="")public class Accound implements Serializable {private static final long serialVersionUID = 1L;@ApiModelProperty(value = "UUID")private String id;@ApiModelProperty(value = "⽤户ID")private String userId;@ApiModelProperty(value = "记录时间")private LocalDateTime recordTime;@ApiModelProperty(value = "账⽬名称")private String name;@ApiModelProperty(value = "收⼊")private BigDecimal income;@ApiModelProperty(value = "⽀出")private BigDecimal expenditure;@ApiModelProperty(value = "修改时间")private String modificationTime;@ApiModelProperty(value = "是否删除(0:已删除 1:未删除)") private Boolean isDel;@ApiModelProperty(value = "备注")private String remarks;@ApiModelProperty(value = "⽀出类型(0-9)")private Integer expenditureType;}controllerimport org.springframework.web.bind.annotation.*;import org.springframework.web.bind.annotation.RestController; import org.springframework.beans.factory.annotation.Autowired; import io.swagger.annotations.Api;import io.swagger.annotations.*;import lombok.extern.slf4j.Slf4j;import org.slf4j.Logger;import org.slf4j.LoggerFactory;import java.util.*;import mon.util.ResponseDTO;import .wj.service.AccoundService;import .wj.entity.Accound;/*** <p>* 前端控制器* </p>** @author cyy* @since 2020-12-11*/@RestController@Slf4j@Api(value = "accoundCRUD接⼝")@RequestMapping("/accound")public class AccoundController {private final Logger logger = LoggerFactory.getLogger(AccoundController.class);@Autowiredprivate AccoundService accoundService;@ApiOperation(value = "获取accound列表",notes="")@GetMapping("/")public List<Accound> accoundList() throws Exception {List<Accound> accoundList = accoundService.list();return accoundList;}@ApiOperation(value = "修改accound",notes="根据id修改accound")@ApiImplicitParam(name = "accound", value = "accound实体", required = true, dataType = "Student") @PutMapping("/")public ResponseDTO<Boolean> accoundUpdate(@RequestBody Accound accound) throws Exception { Boolean flag = accoundService.updateById(accound);return ResponseDTO.ok(Boolean.valueOf(flag));}@ApiOperation(value = "删除accound",notes="根据id删除accound")@ApiImplicitParam(name = "id", value = "accoundid", required = true, dataType = "String")@DeleteMapping("/{id}")public ResponseDTO<Boolean> accoundDelete(@PathVariable String id) throws Exception {Boolean flag = accoundService.removeById(id);return ResponseDTO.ok(Boolean.valueOf(flag));}@ApiOperation(value = "添加accound",notes="新增⼀条accound")@ApiImplicitParam(name = "accound", value = "accound实体", required = true, dataType = "accound") @PostMapping("")public ResponseDTO<Boolean> accoundInsert(@RequestBody Accound accound) throws Exception { Boolean flag = accoundService.save(accound);return ResponseDTO.ok(Boolean.valueOf(flag));}}如果缺少什么或者有不懂的地⽅,欢迎留⾔沟通,需要原⽂件的可以留⾔。
发电机英语词组
发电机英语词组1. generator set 发电机组2. diesel generator 柴油发电机3. gas generator 气体发电机4. steam turbine generator 蒸汽涡轮发电机5. wind turbine generator 风力发电机6. hydroelectric generator 水力发电机7. solar generator 太阳能发电机8. portable generator 便携式发电机9. standby generator 备用发电机10. emergency generator 应急发电机11. low noise generator 低噪音发电机12. high voltage generator 高压发电机13. low voltage generator 低压发电机14. electric generator 电发生器15. power generator 电源发生器16. AC generator 交流发电机17. DC generator 直流发电机18. generator motor 发电机电机19. generator coil 发电机线圈20. generator head 发电机头21. generator panel 发电机面板22. generator system 发电机系统23. generator output 发电机输出24. generator capacity 发电机容量25. generator efficiency 发电机效率26. generator maintenance 发电机维护27. generator operation 发电机操作28. generator installation 发电机安装29. generator control 发电机控制30. generator protection 发电机保护31. generator cooling 发电机冷却32. generator fuel 发电机燃料33. generator load 发电机负载34. generator switch 发电机开关35. generator voltage 发电机电压36. generator frequency 发电机频率37. generator waveform 发电机波形38. generator overloading 发电机过载39. generator short circuiting 发电机短路40. generator grounding 发电机接地41. oil-fired generator 燃油发电机42. coal-fired generator 燃煤发电机43. nuclear generator 核能发电机44. combined cycle generator 燃气联合循环发电机45. back-up generator 后备发电机46. engine-driven generator 发动机驱动发电机47. standby power generator 备用电源发电机48. generator accessories 发电机配件49. generator battery 发电机电池50. generator fuel tank 发电机燃油箱51. generator controller 发电机控制器52. generator circuit breaker 发电机断路器53. generator transfer switch 发电机转换开关54. generator footings 发电机基础55. generator alternator 发电机交流发电机56. generator inverter 发电机逆变器57. generator rectifier 发电机整流器58. generator inductor 发电机电感59. generator rotor 发电机转子60. generator stator 发电机定子61. generator capacitor 发电机电容62. generator diode 发电机二极管63. generator transformer 发电机变压器64. synchronous generator 同步发电机65. asynchronous generator 异步发电机66. brushless generator 无刷发电机67. brush generator 刷发电机68. permanent magnet generator 永磁发电机69. wound rotor generator 绕组转子发电机70. stator winding generator 定子绕组发电机71. rotor winding generator 转子绕组发电机72. single-phase generator 单相发电机73. three-phase generator 三相发电机74. double-fed generator 双馈发电机75. generator construction 发电机结构76. generator design 发电机设计77. generator production 发电机生产78. generator testing 发电机测试79. generator specifications 发电机规格80. generator model 发电机型号81. generator brochure 发电机宣传册82. generator manual 发电机手册83. generator spare parts 发电机备件84. generator sales 发电机销售85. generator rental 发电机租赁86. generator service 发电机服务87. generator repair 发电机维修88. generator refurbishment 发电机翻新89. generator upgrade 发电机升级90. generator installation manual 发电机安装手册91. generator user manual 发电机用户手册92. generator monitoring system 发电机监控系统93. generator remote control 发电机远程控制94. generator power factor 发电机功率因数95. generator insulation 发电机绝缘96. generator protection relay 发电机保护继电器97. generator synchronization system 发电机同步系统98. generator excitation system 发电机励磁系统99. generator operation manual 发电机操作手册100. generator fault diagnosis 发电机故障诊断。
Python生成器(Generator)详解
Python⽣成器(Generator)详解通过列表⽣成式,我们可以直接创建⼀个列表。
但是,受到内存限制,列表容量肯定是有限的。
⽽且,创建⼀个包含100万个元素的列表,不仅占⽤很⼤的存储空间,如果我们仅仅需要访问前⾯⼏个元素,那后⾯绝⼤多数元素占⽤的空间都⽩⽩浪费了。
所以,如果列表元素可以按照某种算法推算出来,那我们是否可以在循环的过程中不断推算出后续的元素呢?这样就不必创建完整的list,从⽽节省⼤量的空间。
在Python中,这种⼀边循环⼀边计算的机制,称为⽣成器(Generator)。
简单⽣成器要创建⼀个generator,有很多种⽅法。
第⼀种⽅法很简单,只要把⼀个列表⽣成式的[]改成(),就创建了⼀个generator:复制代码代码如下:>>> L = [x * x for x in range(10)]>>> L[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]>>> g = (x * x for x in range(10))>>> g<generator object <genexpr> at 0x104feab40>创建L和g的区别仅在于最外层的[]和(),L是⼀个list,⽽g是⼀个generator。
我们可以直接打印出list的每⼀个元素,但我们怎么打印出generator的每⼀个元素呢?如果要⼀个⼀个打印出来,可以通过generator的next()⽅法:复制代码代码如下:>>> g.next()>>> g.next()1>>> g.next()4>>> g.next()9>>> g.next()16>>> g.next()25>>> g.next()36>>> g.next()49>>> g.next()64>>> g.next()81>>> g.next()Traceback (most recent call last):File "<stdin>", line 1, in <module>StopIteration我们讲过,generator保存的是算法,每次调⽤next(),就计算出下⼀个元素的值,直到计算到最后⼀个元素,没有更多的元素时,抛出StopIteration的错误。
jsongenerator的用法
jsongenerator的用法JSONGenerator是一个用于生成JSON格式数据的类。
它可以将Apex对象转换为JSON格式,并提供了一些方法来控制生成的JSON 数据的格式和内容。
使用JSONGenerator需要先创建一个实例,然后使用其方法来添加键值对、数组和嵌套对象等。
最后,调用toJSONString()方法将生成的JSON数据转换为字符串。
以下是一些常用的JSONGenerator方法:- writeStartObject():开始一个新的对象。
- writeEndObject():结束当前对象。
- writeFieldName(String fieldName):添加一个字段名。
- writeString(String value):添加一个字符串值。
- writeNumber(Integer value):添加一个整数值。
- writeBoolean(Boolean value):添加一个布尔值。
- writeNull():添加null值。
- writeStartArray():开始一个新的数组。
- writeEndArray():结束当前数组。
下面是一个简单示例,演示如何使用JSONGenerator将Apex对象转换为JSON格式:```Account acc = new Account(Name='Test Account',Industry='Technology');String jsonString;// 创建JSONGenerator实例JSONGenerator gen = JSON.createGenerator(true);// 开始写入对象gen.writeStartObject();// 添加字段名和字符串值gen.writeFieldName('Name');gen.writeString();// 添加字段名和整数值gen.writeFieldName('NumberOfEmployees');gen.writeNumber(100);// 添加嵌套对象gen.writeFieldName('BillingAddress'); gen.writeStartObject();gen.writeStringField('Street', '123 Main St'); gen.writeStringField('City', 'San Francisco'); gen.writeStringField('State', 'CA');gen.writeStringField('PostalCode', '94105'); gen.writeEndObject();// 结束写入对象gen.writeEndObject();// 将生成的JSON数据转换为字符串jsonString = gen.getAsString();System.debug(jsonString);```输出结果如下:```{"Name" : "Test Account","NumberOfEmployees" : 100,"BillingAddress" : {"Street" : "123 Main St","City" : "San Francisco","State" : "CA","PostalCode" : "94105"}}```在上面的示例中,我们创建了一个Account对象,并使用JSONGenerator将其转换为JSON格式。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
方式二 使用mapperLocations,MyBatis-Spring会自动地 扫描该路径下的所有Mapper文件: applicationContext.xml <beanid="sqlSessionFactory"class="org.mybatis.sp ring.SqlSessionFactoryBean"> <propertyname="dataSource"ref="dataSource"/> <propertyname="mapperLocations"value="classp ath*:abren/user/mybatis/dao/*Mapper.xml "/> </bean>
mybatis的xml的配置文件和mapper文件路径和名 称如果不相同的话有两种配置方法: 方式一 1.在MyBatis配置文件中添加mappers:mybatisconfig.xml: <mapperresource="abren/user/mybatis/dao /UserMapper.xml"/> <!--Mapper文件可以和interface不在相同路 径下! --> </mappers>
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <propertyname="basePackage"value="er.mybatis.dao"/ > </bean> 完整的注入方式为(mybatis的xml的配置文件和mapper文件路径 和名称必须相同) <bean id="UserMapper“ class="org.mybatis.spring.mapper.MapperFact oryBean"> <propertyname="mapperInterface"value="er.mybatis.da erMapper"/> <propertyname="sqlSessionFactory"ref="sqlSessionFactory"/> </bean>
概述 安装 使用插件-demo实例 使用MAVEN-demo实例 附加说明
如何使用插件 如何使用这些自动生成的文件
在任意项目中利用上图中的向导创建 generatorConfig.xml文件(名称可修改)然后修改 文件内容,主要是设置连接数据的相关参数:
根据名称应该能才出来大致的意思。 配置好连接数据库及表的信息后就可以利用插件自动 生成代码了。
点击上图中的选项,如果配置正确,便自动创建相关 文件了。 文件主要有三类: client包,mapper 接口文件 model包,实体bean文件 mapper包,mapper xml文件
如何使用插Байду номын сангаас 如何使用这些自动生成的文件
首先需要将mapper包下的xml文件添加到mybatis 的sqlmapper文件中:
3.生成配置文件 在外部工具中点击”mybatis_generator”,之后刷 新项目,即可见到mybatis自动生成的文件。 生成之后的项目录为UserMapper.java为接口文 件,内含对user表增删改查等抽象方法。 User.java为model类,UserExample为查询是 where条件类,UserMapper.xml为mybatis的 xml配置文件。
概述 安装 使用插件-demo实例 使用MAVEN-demo实例 附加说明
1.配置generatorConfig.xml Mybatis-generator的配置文件名称默认为 generatorConfig.xml。也可能更改,更改时要在 pom.xml中加入如下代码(注意properties可能已存 在): <properties> <mybatis.generator.configurationFile> generatorConfig.xml </mybatis.generator.configurationFile> </properties> generatorConfig.xml的内容为:
安装插件的过程就不说了,安装完后,eclipse中 File-》new-》other中会发现多了mybatis选项说 明插件安装成功。
插件安装 MAVEN安装
在pom.xml中设置mybatis-generator插件为: <build> <plugins> <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-mavenplugin </artifactId> <version>1.3.1</version> <configuration></configuration> </plugin> </plugins> </build> 执行mvn eclipse:eclipse,这时在maven中会加入此插件
John Ray gjwm0826@
概述 安装 使用插件-demo实例 使用MAVEN-demo实例 附加说明
Mybatis-generator是一个mybatis相关代码的自动生成工 具。
概述 安装 使用插件-demo实例 使用MAVEN-demo实例 附加说明
4.创建接口UserService和其实现类 UserServiceImpl如下:
5. 配置web.xml 在web.xml中配置applicationContext.xml:
6. 配置jdbc. Properties 在main/resources中添加jdbc.properties,内容如 下:
2.使用configLocation,在Spring配置文件中添加 MyBatis配置文件的引用: applicationContext.xml <!--MyBatis配置 --> <beanid="sqlSessionFactory"class="org.myba tis.spring.SqlSessionFactoryBean"> <propertyname="dataSource"ref="dataSo urce"/> <propertyname="configLocation"value="cl asspath:mybatis-config.xml"/> </bean>
2.配置一个外部工具 在program下新建一个工具输入name为 mybatis_generator,location选择mvn.bat(maven的 执行文件),work directory设置为项目路径。 Arguments中为要运行的命令:mybatisgenerator:generate点击“apply“。 在common中的display in favorites menu中勾选上 external tools选项(以后在external tools的下拉列表 里就有此名称的命令了)
插件安装 MAVEN安装
eclipse插件安装地址: /svn/subprojects/generator/trunk/eclipse/UpdateSite/
附件有link安装包,link安装方式参考 /admin/blogs/116 4524
10. 测试 用maven打成war包,浏览index.jsp。Demo完成
概述 安装 使用插件-demo实例 使用MAVEN-demo实例 附加说明
生成的mybatis的xml文件的namespace一定是 mapper完整的路径+类名。以下方式为简化注入方 式。(mybatis的xml的配置文件和mapper文件路 径和名称必须相同)Mapper此种方式只适合 mybatis的xml和Mapper文件在同一路径下并名称 相同的情况下。如有路径或不同名称不同请参照附件 说明。
7. 配置mybatis-config.xml 在main/resources下加入mybatis-config.xml,内 容如下:
8. 配置applicationContext.xml 在applicationContext.xml中配置如下:
9.创建jsp文件 <% ApplicationContext context = new ClassPathXmlApplicationContext("application Context.xml"); UserService userService =(UserService)context.getBean("userService"); User user = userService.getUser(1); out.println(user.getName()); %>
然后程序中这样使用:
如果where条件比较复杂,还可以自定义查询条件, 如上例中andRouteIs(routeName)就是自定义的查 询条件。可以在具体的Example的内部类Criteria中 自定义查询条件: