【修真院java小课堂】代码生成

大家好,我是IT修真院郑州分院第8期学员,一枚正直善良的java程序员。今天给大家分享一下,修真院官网 java任务中可能会使用到的知识点:


代码生成


width="640" height="498" src="https://v.qq.com/txp/iframe/player.html?vid=v0781igi8ct" allowfullscreen="">

【修真院java小课堂】代码生成20180908

1.背景介绍

  • 从任务一到任务九,我们都是手写代码、配置文件,而这些代码或者配置文件很多都是重复的,其实在这个过程中大家或多或少都会去思考,我们做的重复性工作是不是太多了?
  • 是的,如果我们在公司开发项目的时候,所有的实体类、dao层、service层等都是手动写的,那么项目的开发效率可想而知有多么低
  • 如何解决这个问题呢?既然这是个“需求”,那就搞定它。所以就有代码生成这么一个项目,当然这个项目已经是现成的了,直接去“学员svn”拉取就好了

2.知识剖析

2.1 生成代码的框架简单介绍

  • web、service分离,tuscany
  • 注册中心,scallop

2.2 生成代码之后的文件对应关系

  • 根据web、service分离,以及core包划分
    • core:model、service接口、SCAClient
    • service:Server、service实现类、配置文件(spring、tuscany server、dao层、数据库配置文件)
    • web:controller、util、配置文件(spring、springmvc、tuscany client、scallop注册中心、缓存……)、jsp页面、web.xml

2.3 生成代码之后,搭建新项目需要注意的地方

  • maven私服配置:主要是把公司私服配置进来(没难度)
  • hosts文件修改:对于注册中心提供的域名进行解析

3.常见问题

3.1 项目从生成到跑起来的坑点

  • 注意表格,表格命名、服务端口
  • core包,可以使用maven isntall直接打包到本地(服务器)
  • 数据库表格,注意数据是否为空的限制

4.编码实战

  • 从代码生成到项目运行成功
  • 具体见视频

5.扩展思考

5.1 能否自己写代码生成项目

  • –读取文件(固定的格式)
  • –将文件按照协议(约定的格式)解析
  • –在指定的位置生成
  • –落地成为代码

  • –整体的逻辑并不复杂,但是从实现上来说有几处注意的地方

  • –文件选取什么样的格式,比如json、xls、csv等(目前我见过的有csv和xls)
  • –如何做好协议,协议本身应该遵从怎样的规范

6.参考文献

https://v.qq.com/x/page/b0567v259kh.html
https://v.qq.com/x/page/e05199sjgl9.html
小课堂相关资料


7.更多讨论

Q:公司框架需要学习到什么程度?
A:能运行,能知道如何修改sql语句,基本就够用了

Q:不在scallop.resource.center中写入service对应关系可以正常使用不?
A:理论上是可以的,就像任务9的时候,不适用注册中心,tuscany照样可以完成web和service分离。

Q:代码生成是否是常见?
A:挺常见的,mybatis逆向工程是一个典型,公司代码生成是一个,github上应该也有一些开源的项目,可以去看看

PPT在这里

感谢大家观看!

今天的分享就到这里啦,欢迎大家点赞、转发、留言、拍砖~

技能树.IT修真院

“我们相信人人都可以成为一个工程师,现在开始,找个师兄,带你入门,掌控自己学习的节奏,学习的路上不再迷茫”。

这里是技能树.IT修真院,成千上万的师兄在这里找到了自己的学习路线,学习透明化,成长可见化,师兄1对1免费指导。

快来与我一起学习吧~http://www.jnshu.com/login/1/22140638

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值