赞
踩
因公司技术部的副主管询问,项目有没有自动生成一套增删改查的代码。于是,我决定使用velocity进行模板生成,然后是一个小项目,放到当前开发的项目里面又不好(因为是可以连接任何远程数据库,然后生成代码的)。因此,就打算放到服务器上,然后有个测试库,是windows的,至此,就有了下方的脚本!!!
velocity模板引擎,请移步:https://blog.csdn.net/boonya/article/details/55003487
- @echo off
-
- start java -Xms512m -Xmx512m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=256m -jar demo-codegen.jar --server.port=90
-
- exit
demo-codegen.jar:我的jar包名字,请看目录结构,不在同级目录,请填绝对路径
windows——> E://xxx/yyy
Linux ——> /home/project/xxx
--server.port=90:指定端口为90,可以不填的,现在使用springboot项目,都会配置端口。优先此端口,如果这里不配置,则端口为项目指定的。
-Xms512m:堆最小内存,jar启动之后就会分配给JVM里面的heap大小
-Xmx512m:堆最大内存。x,肯定就是max,也就是最大咯
设置一样,是为了不去频繁切换,给房子加楼层,是需要耗时间的!
堆扩容:当最小堆t填满后,会尝试进行GC,如果GC之后还不能得到足够的内存(GC未必会收集到所有当前可用内存),分配新的对象,那么就会扩展堆。
给对象分配内存的时候,如果达到了最大堆的内存,还是不够。就会导致OutOfMemoryError(OOM)
Metaspace:元空间,java8开始,移除原先jdk的永久代,新增元空间。有兴趣的朋友可以去了解一下。还有常量池的一个变化等。
jdk1.7及以前,配置永久代
-XX:PermSize=20.75m
-XX:MaxPermSize=82m(32位系统默认64m)
-XX:MetaspaceSize=128m ## 一样的,元空间初始大小,达到这个界限,直接FullGC,这是很不好的,因为速度慢(新生代、老年代、元数据区/永久代的废弃对象,通通回收),严重影响项目性能。所以代码得写好,得合理利用时间和空间(根据实际情况,追求时间,还是节省空间!)
-XX:MaxMetaspaceSize=256m ## 元空间最大大小
如果不指定元空间的最大大小,默认情况下,元空间最大的大小是系统内存的大小,元空间一直扩大,虚拟机可能会消耗完所有的可用系统内存。
扯皮了那么多杂七杂八的,来说说重点,开头的start java
这个命令的意思是使用Javaw.exe执行我们的jar,这样就可以在系统进程里面运行了(如果有人说,我的命令一样,怎么一闪而过,项目访问不了。那么恭喜你,你没有配置环境变量,没有配置,那么这个java就无效!!!)
那么就有意思了,配置环境变量吧?
windows10环境变量配置:https://www.cnblogs.com/cnwutianhao/p/5487758.html
其实dark不必,直接去Java的安装目录,默认是C:\Program Files\java,进入jdk/bin目录,把javaw.exe给copy出来,然后随便改个名字,比如我改的就是gen,看截图
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。