谷歌globalmapper打开格式输出数据txt格式选哪一个

当前访客身份:游客 [
回归Java!积淀!
:100个赞 解决了我的问题
:引用来自“jessie2”的评论这个是原作者的代码包...
:这个是原作者的代码包里面的一个README.md文件里...
:引用来自“jayson1234”的评论你好 你这个项目 ...
:引用来自“jayson1234”的评论你好 你这个项目 ...
:引用来自“jayson1234”的评论你好 你这个项目 ...
:你好 你这个项目 我按照你的弄了 起不来呢 mysq...
:引用来自“小沫”的评论在mirrors节点下,没有写...
:引用来自“小沫”的评论你好,请问下 第二张图是...
:引用来自“小沫”的评论请问楼主一个问题,在多模...
今日访问:446
昨日访问:853
本周访问:2104
本月访问:7341
所有访问:218042
数据库逆向框架代码生成工具:MyBatis Generator的使用
发表于2年前( 14:10)&&
阅读(29676)&|&评论()
0人收藏此文章,
通过MyBatis Generator可逆向生成持久层的代码,与Spring实现无缝融合,本文是基于Intellij+Maven实现。
MyBatis Generator的详细介绍
MyBatis Generator &With Maven&
前段时间根据工作需要,使用Spring+Mybatis完成了一个功能模块,领导推荐了MyBatis Generator(以下简称为MBG),可以逆向生成持久层的基本代码,而且mybatis的实现方案比较好,可以自由组合完成比较复杂的查询,当然更复杂的就需要手动写了,下面整理下基本使用
2搭建逆向工程
1.创建一个Maven项目:File——New Project——Maven
2.在pom文件中,添加MBG插件,IDE会自动帮我们下载插件
(如果没反应,可以点开右侧Maven Project选项卡刷新以下)
(插件1.3.0有点小bug,不能去掉生成的注释)
&&&&&&&&&finalName&mybatis_generator&/finalName&
&&&&&&&&&plugins&
&&&&&&&&&&&&&plugin&
&&&&&&&&&&&&&&&&&groupId&org.mybatis.generator&/groupId&
&&&&&&&&&&&&&&&&&artifactId&mybatis-generator-maven-plugin&/artifactId&
&&&&&&&&&&&&&&&&&version&1.3.2&/version&
&&&&&&&&&&&&&/plugin&
&&&&&&&&&/plugins&
3.在src/main/resource目录下创建generatorConfig.xml文件
(官方配置以及说明:)
&?xml&version="1.0"&encoding="UTF-8"?&
&!DOCTYPE&generatorConfiguration
&&&&&&&&PUBLIC&"-//mybatis.org//DTD&MyBatis&Generator&Configuration&1.0//EN"
&&&&&&&&"http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"&
&generatorConfiguration&
&&&&&!--数据库驱动jar&--&
&&&&&classPathEntry&location="E:\mysql-connector-java-5.1.7-bin.jar"&/&
&&&&&context&id="DB2Tables"&targetRuntime="Ibatis2Java5"&
&&&&&&&&&!--去除注释&&--&
&&&&&&&&&commentGenerator&
&&&&&&&&&&&&&property&name="suppressAllComments"&value="true"&/&
&&&&&&&&&/commentGenerator&
&&&&&&&&&!--数据库连接&--&
&&&&&&&&&jdbcConnection&driverClass="com.mysql.jdbc.Driver"
&&&&&&&&&&&&&&&&&&&&&&&&connectionURL="jdbc:mysql://localhost:3306/news"
&&&&&&&&&&&&&&&&&&&&&&&&userId="root"
&&&&&&&&&&&&&&&&&&&&&&&&password=""&
&&&&&&&&&/jdbcConnection&
&&&&&&&&&!--默认false
&&&&&&&&&&&Java&type&resolver&will&always&use&java.math.BigDecimal&if&the&database&column&is&of&type&DECIMAL&or&NUMERIC.
&&&&&&&&&--&
&&&&&&&&&javaTypeResolver&&
&&&&&&&&&&&&&property&name="forceBigDecimals"&value="false"&/&
&&&&&&&&&/javaTypeResolver&
&&&&&&&&&!--生成实体类&指定包名&以及生成的地址&(可以自定义地址,但是路径不存在不会自动创建&&使用Maven生成在target目录下,会自动创建)&--&
&&&&&&&&&javaModelGenerator&targetPackage="com.qianyan.model"&targetProject="MAVEN"&
&&&&&&&&&&&&&property&name="enableSubPackages"&value="false"&/&
&&&&&&&&&&&&&property&name="trimStrings"&value="true"&/&
&&&&&&&&&/javaModelGenerator&
&&&&&&&&&!--生成SQLMAP文件&--&
&&&&&&&&&sqlMapGenerator&targetPackage="com.qianyan.persistence.ibatis"&&targetProject="MAVEN"&
&&&&&&&&&&&&&property&name="enableSubPackages"&value="false"&/&
&&&&&&&&&/sqlMapGenerator&
&&&&&&&&&!--生成Dao文件&可以配置&type="XMLMAPPER"生成xml的dao实现&&context&id="DB2Tables"&修改targetRuntime="MyBatis3"&&--&
&&&&&&&&&javaClientGenerator&type="SPRING"&targetPackage="com.qianyan.persistence.dao"&&targetProject="MAVEN"&
&&&&&&&&&&&&&property&name="enableSubPackages"&value="false"&/&
&&&&&&&&&/javaClientGenerator&
&&&&&&&&&!--对应数据库表&mysql可以加入主键自增&字段命名&忽略某字段等--&
&&&&&&&&&table&tableName="USER"&domainObjectName="User"&&
&&&&&&&&&/table&
&&&&&/context&
&/generatorConfiguration&
4.点击Maven Project——项目——Plugins——mybatis generator——Run Maven build
5.可以根据自己项目的配置,把生成的代码拷贝到自己的项目中去
3生成代码的使用
mybatis设计比较巧妙,Dao层就不用说了,这里主要介绍下实体类User和UserExample
User类就是普通的实体类,定义了数据库对应的字段,以及set/get方法
Example类是干嘛的呢?用其它项目中的几个例子还说明一下吧
1.比如在一个项目 我们要删除某个小组下某个用户的信息
&public&int&deleteUserApplyInfo(long&user_id,long&team_id){
&&&&&&&&StudyTeamUserApplyInfoExample&ue&=&new&StudyTeamUserApplyInfoExample();
&&&&&&&&ue.createCriteria()
&&&&&&&&&&&&&&&&.andUserIdEqualTo(new&BigDecimal(user_id))
&&&&&&&&&&&&&&&&.andTeamIdEqualTo(new&BigDecimal(team_id));
&&&&&&&&return&studyTeamUserApplyInfoDAO.deleteByExample(ue);
2.根据小组ID(非主键 更新小组信息)
public&int&updateStudyTeamInfo(StudyTeamInfo&st){
&&&&&&&&StudyTeamInfoExample&ste&=&new&StudyTeamInfoExample();
&&&&&&&&ste.createCriteria().andTeamIdEqualTo(st.getTeamId());
&&&&&&&&return&studyTeamInfoDAO.updateByExampleSelective(st,ste);
3.(1)模糊查询并且排序 (2)大于等于某个分数 并且小于某个分数的查询
public&List&StudyTeamInfo&&getStudyTeamInfoByName(String&team_name){
&&&&&&&&StudyTeamInfoExample&se&=&new&StudyTeamInfoExample();
&&&&&&&&se.createCriteria().andTeamNameLike("%"+team_name+"%").andEnableEqualTo((short)1);
&&&&&&&&se.setOrderByClause("team_score&desc");
&&&&&&&&List&StudyTeamInfo&&ls&=&studyTeamInfoDAO.selectByExample(se);
&&&&&&&&if(ls!=null&&ls.size()&0){
&&&&&&&&&&&&return&
&&&&&&&&return&
public&StudyTeamLevel&getStudyTeamLevel(long&score){
&&&&&&&&StudyTeamLevelExample&le&=&new&StudyTeamLevelExample();
&&&&&&&&le.createCriteria().andNeedScoreLessThanOrEqualTo(score).andUpScoreGreaterThan(score);
&&&&&&&&List&StudyTeamLevel&&ls&=&studyTeamLevelDAO.selectByExample(le);
&&&&&&&&if(ls!=null&&ls.size()&0){
&&&&&&&&&&&&return&ls.get(0);
&&&&&&&&return&
Example中提供了Critertia,一种面向对象的查询方式,并且根据实体类中字段的属性,生成不同的操作。
当然你也可以根据实际需要直接使用实体类进行增删改查。
4一些问题的解决方案
在实际应用中,自己也遇到了一些问题,下面是这些问题的解决方案,欢迎提供更好的方法
1.字段默认值问题
在数据库中,一些字段有默认值,比如c_time,我们在insert操作时,不需要这个字段
public&void&saveUserStudyTeamApplyInfo(StudyTeamUserApplyInfo&uai){
&&&&&&&&long&ref&=&studyTeamInfoDAO.getSeqAllRef();
&&&&&&&&uai.setRef(new&BigDecimal(ref));
&&&&&&&&studyTeamUserApplyInfoDAO.insertSelective(uai);
可以调用insertSelective方法,传入实体类,方法会根据实体类中存在值的字段动态拼接sql
2.分页问题
mybatis没有提供分页的解决方法,可能是因为数据库之间分页的差距比较大
通过修改java代码只能做到内存分页,所以还是需要在sqlmap中添加数据库分页
参考了网上某篇博客的解决方法(地址找不到了),加了分页头和分页尾的,这样只用写内部的sql
可以一定程度下减少错误几率
&!--&oracle&分页头&--&
&&&&&sql&id="oracle_Pagination_Head"&&
&&&&&&&&&dynamic&&
&&&&&&&&&&&&&isNotEmpty&property="first"&&
&&&&&&&&&&&&&&&&&isNotEmpty&property="last"&&
&&&&&&&&&&&&&&&&&&&&&![CDATA[select&*&from&(&select&row_.*,&rownum&rownum_&from&(&]]&
&&&&&&&&&&&&&&&&&/isNotEmpty&
&&&&&&&&&&&&&/isNotEmpty&
&&&&&&&&&/dynamic&
&&&&&/sql&
&&&&&!--&oracle&分页尾&--&
&&&&&sql&id="oracle_Pagination_Tail"&&
&&&&&&&&&dynamic&&
&&&&&&&&&&&&&isNotEmpty&property="first"&&
&&&&&&&&&&&&&&&&&isNotEmpty&property="last"&&
&&&&&&&&&&&&&&&&&&&&&![CDATA[)&row_&where&rownum&&=&#last#&)&where&rownum_&&&#first#]]&
&&&&&&&&&&&&&&&&&/isNotEmpty&
&&&&&&&&&&&&&/isNotEmpty&
&&&&&&&&&/dynamic&
&&&&&/sql&
&select&id="findAllStudyTeamMessagePage"&parameterClass="java.util.Map"&&&&resultMap="ResultMapWithUserName"&
&&&&&&&&&!--&增加oracle分页头部&--&
&&&&&&&&&include&refid="oracle_Pagination_Head"&/&
&&&&&&&&select&a.*,b.user_name,b.photo_name,&rownum&rn,sysdate
&&&&&&&&from&user_info&b,study_team_user_message&a
&&&&&&&&where&&b.user_id=a.user_id
&&&&&&&&and&type=0
&&&&&&&&&isNotEqual&prepend="and"&property="team_id"&compareValue="0"&
&&&&&&&&&&&&a.team_id=#team_id#
&&&&&&&&&/isNotEqual&
&&&&&&&&order&by&a.ref&desc
&&&&&&&&&include&refid="oracle_Pagination_Tail"&/&
&&&&&/select&
3.mysql text字段无法识别问题
&!--对应数据库表&mysql可以加入主键自增&字段命名&忽略某字段等--&
&&&&&&&&&table&tableName="article"&domainObjectName="Article"&&
&&&&&&&&&&&&&columnOverride&column="content"&jdbcType="VARCHAR"&/&
&&&&&&&&&/table&
下载:GIT@OSC&
公司用的是ibatis2.3.x 所以使用的&
&context&id="DB2Tables"&targetRuntime="Ibatis2Java5"&
&javaClientGenerator&type="SPRING"
如果使用 type=XMLMAPPER (xml直接实现dao)
需要targetRuntime is&MyBatis3&而且不向下兼容
&&&&&&&&&&&&&&&&&groupId&org.mybatis.generator&/groupId&
&&&&&&&&&&&&&&&&&artifactId&mybatis-generator-maven-plugin&/artifactId&
&&&&&&&&&&&&&&&&&version&1.3.0&/version&
&&&&&&&&&&&&&&&&&dependencies&
&&&&&&&&&&&&&&&&&&&&&dependency&
&&&&&&&&&&&&&&&&&&&&&&&&&groupId&com.oracle&/groupId&
&&&&&&&&&&&&&&&&&&&&&&&&&artifactId&ojdbc14&/artifactId&
&&&&&&&&&&&&&&&&&&&&&&&&&version&10.2.0.2.0&/version&
&&&&&&&&&&&&&&&&&&&&&/dependency&
&&&&&&&&&&&&&&&&&/dependencies&
&&&&&&&&&&&&&/plugin&
在pom中可以直接配置依赖的数据库 &&generatorConfig.xml就不需要再配置数据库的jar了
更多开发者职位上
1)">1)">1" ng-class="{current:{{currentPage==page}}}" ng-repeat="page in pages"><li class='page' ng-if="(endIndex<li class='page next' ng-if="(currentPage
相关文章阅读global mapper生产CAD、dxf格式和谷歌地球KMZ格式 (1)_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
global mapper生产CAD、dxf格式和谷歌地球KMZ格式 (1)
上传于||暂无简介
阅读已结束,如果下载本文需要使用1下载券
想免费下载本文?
下载文档到电脑,查找使用更方便
还剩3页未读,继续阅读
你可能喜欢| | | | | |
跳转到 0 ? parseInt(this.value) : 1) + '.aspx';}else{window.location='showtopic.aspx?topicid=383393&page=' + (parseInt(this.value) > 0 ? parseInt(this.value) : 1) ;}}"" size="4" maxlength="9"/>页查看:19750
showMenu(this.id);" id="newspecial" class="postbtn">
GlobalMapper14加载谷歌地图和卫片
GlobalMapper14加载谷歌地图和卫片
GlobalMapper14加载谷歌地球卫片和谷歌地图。用法:把下载附件解压后的文件,放在“帮助\关于”项设置的“用户数据目录”内即可。此贴来源于/threads--1.html
GlobalMapper14加载谷歌地球卫片和谷歌地图.rar
售价:陨石 2
( 10:30:19)
wenxiongmao 最后编辑于
好资料啊。以后方便了
那里的 “帮助\关于”项设置的“用户数据目录”内?
帮助\关于”项设置的“用户数据目录” 在那里?& 具体说明啊
谢谢楼主。。。
还是没有也找到 ..............
谢谢分分享
非常好用!
用不来啊!谢谢.找到了,默认的路径是:C:\Documents and Settings\Administrator\Application Data\GlobalMapper\
yellowfaceba 最后编辑于
真的好用吗
下载放入C:\Documents and Settings\Administrator\Application Data\GlobalMapper里面了,打开GM14后在那里加载了
好东西,谢谢分享1
海丫丫~我们曾经的回忆~
能开发下加载微软地图和其他百度地图等的链接吗
能开发下加载微软地图和其他百度地图等的链接吗
跳转到 0 ? parseInt(this.value) : 1) + '.aspx';}else{window.location='showtopic.aspx?topicid=383393&page=' + (parseInt(this.value) > 0 ? parseInt(this.value) : 1) ;}}"" size="4" maxlength="9"/>页
showMenu(this.id);">
  && | &&| | | | | |
跳转到 0 ? parseInt(this.value) : 1) + '.aspx';}else{window.location='showtopic.aspx?topicid=383976&page=' + (parseInt(this.value) > 0 ? parseInt(this.value) : 1) ;}}"" size="4" maxlength="9"/>页查看:1602
showMenu(this.id);" id="newspecial" class="postbtn">
关于Global Mapper 看了教程也不明白,有24个点要做一个区。怎么做。
关于Global Mapper 看了教程也不明白,有24个点要做一个区。怎么做。
我手上只有一个空的地图。做好等高线了,手上有24个公里网坐标点。要把这些坐标点围成一个区。在区的边线上每50米要收集一个经纬度坐标点。把这个50米一个的坐标集收集起来打印。看了教程也不明白,要是手上有坐标点要怎么把点围成一个区。把这个50米一个的坐标集收集起来打印。有人可以教教我吗?
mingda7612 最后编辑于
我不会也给点建议。1、你已经有24个已知点公里网坐标,目的是要边界上每50米一个经纬度数据,这与等高线图有关系吗?2、展点画区域容易,但需要按你的数据和需要设置坐标投影,这样平面坐标才能转换为球面坐标。3、拾取每50米一个点数据最好先用CAD做好,再到GM中转换为经纬度坐标。
“在区的边线上每50米要收集一个经纬度坐标点”这个容易。(95.55 K) 17:25:47
( 17:27:20)
DTDigitized :
17:14:28Artist : ASUSDTDigSS : 20DTOrigSS : 20DTOrig :
表示关注一下,学习学习。
不错!!!!!!!!!!!!!!!!
跳转到 0 ? parseInt(this.value) : 1) + '.aspx';}else{window.location='showtopic.aspx?topicid=383976&page=' + (parseInt(this.value) > 0 ? parseInt(this.value) : 1) ;}}"" size="4" maxlength="9"/>页
showMenu(this.id);">
  && | &&

我要回帖

更多关于 globalmapper打开格式 的文章

 

随机推荐