文档章节

通过Shell脚本用JDBC连数据库脱离项目框架执行Java业务流程

谢思华
 谢思华
发布于 2015/08/10 15:55
字数 454
阅读 622
收藏 5

一.概述

      如果项目中需要使用到定时任务来完成某些业务,一般有两种做法:定时任务依赖于项目;定时任务用批处理(windows执行)或者shell脚本(Linux)启动,不依赖于项目。

        个人觉得,定时任务不依赖于项目的方式更优!独立执行,不会影响到应用的性能。

二.用jdbc连接数据库写业务

      不能使用hibernate等高级方式,或者公司框架使用的高级工具。因为shell脚本不依赖于项目,独立执行的。

      用jdbc写简单的增删改查业务的demo,具体可参考:http://blog.csdn.net/yanzi1225627/article/details/26950615

      最后,把完成业务的类通过Eclipse导出成jar,用以shell调用。

三.批处理、shell脚本

bat文件:

.\jdk1.6.0\bin\java -Xms512m -Xmx512m -XX:NewRatio=3 -classpath .;./lib/mysql-connector-java-5.1.29.jar;./lib/match.jar com.test.web.Match

shell脚本:

/usr/java/jdk1.6.0_32/bin/java -Xms512m -Xmx512m -XX:NewRatio=3  -classpath ./match.jar:./mysql-connector-java-5.1.29.jar com.test.web.Match

其中,bat文件与shell脚本不同之处在于jdk所在路径不同

.\jdk1.6.0\bin  指定jdk路径

-Xms512m -Xmx512m -XX:NewRatio=3  配置跑当前脚本的内存

-classpath .;./lib/mysql-connector-java-5.1.29.jar;./lib/match.jar com.test.web.Match   跑当前脚本需要用到的jar,最后一个为自己编写且导出生成的jar。脚本会执行到Match.class的main方法

四.Eclipse导出jar流程

编译代码

定位到需要导出的Java文件

右键--export--选择导出类型为 JRE file --选择保存jar的路径--挑选main方法所在的Java文件--finish

详细操作指引可参考:http://www.cnblogs.com/lionden/archive/2013/03/10/2952604.html



© 著作权归作者所有

谢思华
粉丝 77
博文 221
码字总数 152858
作品 0
广州
程序员
私信 提问
请教linux下java调用shell实现自动重启的问题

应用场景是实现java程序的远程升级,java程序运行在linux下,是一个后台一直运行的服务。 大概流程如下: 1.java程序判断接收到升级包,调用linux shell脚本来进行升级 Runtime.getRuntime()...

风之刀
2017/06/06
408
0
Tomcat进程意外退出的问题分析

节前某个部门的测试环境反馈tomcat会意外退出,我们到实际环境排查后发现不是jvm crash,日志里有进程销毁的记录,从pause到destory的整个过程: org.apache.coyote.AbstractProtocol pause...

陶邦仁
2015/03/24
194
1
java调用shell脚本返回值问题,求助!!!!!!!!

刚搞shell脚本这块,现在遇到个问题,望知道的大神帮忙解答下,感谢啊! 问题是这样的: java后台调用shell脚本,脚本作用是解析数据库用户名(dbuserName)和数据库密码(dbuserPwd),我打算让d...

踩单车的老爷爷
2016/02/23
483
3
工作流系统之二十五 .net工作流系统开发体会

.net工作流系统开发体会 公司的eworkflow自定义工作流系统,最初是开发了java版的。待java版的功能稳定后,就开始开发.net版的。 java版的eworkflow工作流系统,我们没有依赖于任何框架,如s...

长平狐
2012/10/11
291
0
集成 Proxy 与 DB Mesh,Sharding-JDBC 3 将"Sharding"做到极致

嘉宾:张亮 作者:h4cd 提起数据库中间件,我们可以很自然地联想到 OneProxy、TDSQL、Sharding-JDBC 与 MyCat 等知名项目。在众多的数据库中间件实现技术中,通常存在两种架构模式,一种是 ...

编辑部的故事
2018/05/23
5.4K
20

没有更多内容

加载失败,请刷新页面

加载更多

golang-字符串-地址分析

demo package mainimport "fmt"func main() {str := "map.baidu.com"fmt.Println(&str, str)str = str[0:5]fmt.Println(&str, str)str = "abc"fmt.Println(&s......

李琼涛
今天
4
0
Spring Boot WebFlux 增删改查完整实战 demo

03:WebFlux Web CRUD 实践 前言 上一篇基于功能性端点去创建一个简单服务,实现了 Hello 。这一篇用 Spring Boot WebFlux 的注解控制层技术创建一个 CRUD WebFlux 应用,让开发更方便。这里...

泥瓦匠BYSocket
今天
6
0
从0开始学FreeRTOS-(列表与列表项)-3

FreeRTOS列表&列表项的源码解读 第一次看列表与列表项的时候,感觉很像是链表,虽然我自己的链表也不太会,但是就是感觉很像。 在FreeRTOS中,列表与列表项使用得非常多,是FreeRTOS的一个数...

杰杰1号
今天
8
0
Java反射

Java 反射 反射是框架设计的灵魂(使用的前提条件:必须先得到代表的字节码的 Class,Class 类 用于表示.class 文件(字节码)) 一、反射的概述 定义:JAVA 反射机制是在运行状态中,对于任...

zzz1122334
今天
5
0
聊聊nacos的LocalConfigInfoProcessor

序 本文主要研究一下nacos的LocalConfigInfoProcessor LocalConfigInfoProcessor nacos-1.1.3/client/src/main/java/com/alibaba/nacos/client/config/impl/LocalConfigInfoProcessor.java p......

go4it
昨天
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部