java 大多数代码写了很多沉长的getter 以及setter,似乎kotlin改造了这些东西,简化了实体类的写法。其语法类似于scala ,其实两者写起来感觉没多大区别。遵循大佬就是牛逼的原则,我更偏向于kotlin,毕竟人家手里有android,而且其语法最初也是支持android。
对于代码的编写其实并无多大区别,说下主要注意的地方;代码会在文章末尾奉上,文章在于辅助代码理解,如果你不想看这些可以直接跳到末尾查看源码。
实体类:
实体类的写法更加简单,但是有利必定有弊。其中遇到的坑Integer ,和时间date的转化。Integer 的区别在于int 还是Integer, Date 不管你使用 java.utils 还是 java.sql 都会报错,其中报错语句大致如下:
matching [java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.
所以现在的解决办法就是 所有时间戳类的都转化为timeStamp,至于Int 型 那么就是int?
这样就是一个简单的实体类就出来了,少了getter 少了setter。
剩下的就是老规矩,Controller,Services,Mapper,Xml
写法上并没有多大差异,值得提的就是SpringBootApplication的启动方式有所变化。
@SpringBootApplication @MapperScan("com.example.demo.mapper") class DemoApplication fun main(args: Array<String>) { SpringApplication.run(DemoApplication::class.java, *args) }
是不是发现 少写了那么几行?
至于其他的抽象,静态变量,继承等等,这些都是语法问题就不在累述,总体感觉需要主语的就是这两点,具体的去看代码吧。
链接:
https://gitee.com/reasahi/SpringBootKotlinMybatis