当前位置: 首页 > 编程日记 > 正文

java jdbc 表存在_使用JDBC查询是否存在某表或视图,按月动态生成表

查询数据库是否有某表的存在,主要用的就是Connection对象对元数据的操作,代码很简单,贴出来大家参考。

/**

* 查询数据库是否有某表

* @param cnn

* @param tableName

* @return

* @throws Exception

*/

@SuppressWarnings("unchecked")

public boolean getAllTableName(String tableName) throws Exception {

Connection conn = jdbcTemplate.getDataSource().getConnection();

ResultSet tabs = null;

try {

DatabaseMetaData dbMetaData = conn.getMetaData();

String[]   types   =   { "TABLE" };

tabs = dbMetaData.getTables(null, null, tableName, types);

if (tabs.next()) {

return true;

}

} catch (Exception e) {

e.printStackTrace();

}finally{

tabs.close();

conn.close();

}

return false;

}

这两个方法可以公用,至于是按月还是按天还是按周,取决于你对表名称的生成。

/**

* 保存

*/

@Override

public int saveAlertMessLog(AlertMessLog alertMessLog) {

SimpleDateFormat format = new SimpleDateFormat("yyyy_MM");

String tableName = "nm_alertmesslog_" + format.format(new Date());

try {

boolean isHave = getAllTableName(tableName);

if(isHave){

return saveObject(alertMessLog,tableName);

}else{

if(createTable(tableName) == 1){

return saveObject(alertMessLog,tableName);

}

}

} catch (Exception e) {

e.printStackTrace();

}

return 0;

}

我的格式化方法决定了是按照月来进行生成,如果有直接保存,如果没有,先生成再保存!

推荐您有关于“ jdbc视图动态建表按月 ”的文章

相关文章:

linux串口驱动分析

linux串口驱动分析硬件资源及描写叙述 s3c2440A 通用异步接收器和发送器(UART)提供了三个独立的异步串行 I/O(SIO)port,每一个port都能够在中断模式或 DMA 模式下操作。UART 使用系统时钟能够支持最高 115.2Kbps 的波特…

计算TD-LTE DL 峰值速率的工具和相关参数

前一段时间测试DT 基站,需要配置TDD LTE cell 的UDC、TM模式来验证不同组合下的下行峰值速率,趁此机会我用excel写了一个计算下行峰值速率的工具。工具上传至我的github: https://github.com/greenricky/tdlte_dl_rate 计算峰值速率的常用办法是参考36.2…

java配置中心开源项目_配置中心搭建(spring-cloud-config-server)

1.github创建配置库2.配置服务端①创建项目②导入jarorg.springframework.bootspring-boot-starter-weborg.springframework.bootspring-boot-starter-testorg.springframework.cloudspring-cloud-starter-netflix-eureka-clientorg.springframework.cloudspring-cloud-config-…

detection in video and image

video中的detection,背景更加复杂,目标更加不聚焦,同时由于图片分辨率低于图像,因此更加难做。 image中的Detection,背景相对简单些,目标更加聚焦,同时图片分辨率高,因此更加容易些。 转载于:ht…

烂泥:U盘安装Centos6.5

本文首发于烂泥行天下。使用U盘安装Centos6.5,需要以下几个步骤:1、 制作U盘linux系统2、 设置服务器BIOS3、 安装Centos,注意引导分区的安装首先要把U盘做成linux启动盘。网上有关这方面的软件比较多,在此我使用的是WinSetupFrom…

http status 汇总

http status 汇总 常见HTTP状态码 200 OK301 Moved Permanently302 Found304 Not Modified307 Temporary Redirect400 Bad Request401 Unauthorized403 Forbidden404 Not Found410 Gone500 Internal Server Error501 Not Implemented100 Continue 初始的请求已经接受&#xf…

hdu 4278 2012天津赛区网络赛 数学 *

8进制转为10进制 1 #include<cstdio>2 #include<iostream>3 #include<algorithm>4 #include<cstring>5 #include<cmath>6 #include<queue>7 #include<map>8 using namespace std;9 #define MOD 1000000007 10 const int INF0x3f3f3f…

slub object 内存布局

我在 https://blog.csdn.net/wowricky/article/details/83218126 介绍了一种内存池&#xff0c;它的实现类似于linux 中打开slub_debug (1. make menuconfig: Kenel hacking -> Memory Debugging, 2. comand line中传入slub_debugPZU) 时slub 对象池。 首先我们先看一下slub…

java wait abc_java----wait/notify

解释wait/notify必须配合synchronized使用democlass NotifyStop2 {private final Object lock new Object();public void add(String s) throws InterruptedException {Thread.sleep(1000);synchronized (lock) {System.out.println("add notify qian");//唤醒其他线…

hdu-1166敌兵布阵

这个题目就是考察线段树的基本用法&#xff0c;我自己打了代码&#xff0c;其实就是照模板来的&#xff0c;大概思想已经弄懂了。用c不能过&#xff0c;说我超时&#xff0c;就改成c的读入读出&#xff0c;这坑爹的过了。我最爱的c&#xff0c;你肿么了。。。 这是ac的代码&…

Android数据存储(三)——SQLite

如果需要一个更加健壮的数据存储机制&#xff0c;则需要使用一个关系型数据库&#xff0c;在Android上&#xff0c;则为SQLlite。 SQLite的特点&#xff1a;轻量级、嵌入式的、关系型数据库。可移植性好&#xff0c;易使用&#xff0c;小&#xff0c;高效且可靠&#xff0c;与使…

3GPP组织和协议概述

3GPP组织概述 1. TSG/WG 3GPP是以工作组开展工作的&#xff0c;目前有3个大的技术规范组&#xff1a;RAN, SA, CT, 这一级别的工作组英语写为 TSG (Technical Specification Group)。每个TSG下面又分了很多工作组(WG: work group). 详见下表&#xff1a; https://www.3gpp.or…

mysql被拖垮_说几个拖垮系统的小细节!

本文首发于个人微信公众号《andyqian》,期待你的关注&#xff01;前言有好几天没有更新了&#xff0c;期间确实比较忙些&#xff0c;以至于周末也没休息。在这期间&#xff0c;感触还是蛮深的。现在碎片化的想法等整理好后&#xff0c;再以文章的形式分享出来。今天要说的是另外…

为 区域添加 Tag

tagsinput selectTag 转载于:https://www.cnblogs.com/yunqianduan/p/4740902.html

android中文字中间有超链接的实现方法

1.XML里写&#xff1a; <resources> <string name"ACCOUNT_REGISTER_PROMPT_AGREEMENT">点击注册&#xff0c;表示同意<a href"http://www.ouragreement.com">服务协议</a></string> </resources> <TextView …

4.4 类型转换

from http://www.learncpp.com/cpp-tutorial/44-type-conversion-and-casting/ 类型隐式转换 类型隐式转换的步骤如下所示&#xff1a; Long double (highest)DoubleFloatUnsigned long intLong intUnsigned intInt (lowest) 最底层是int而不是short或是char&#xff0c;是因为…

LFSR 和 m序列

翻译自&#xff1a;sharetechnote: LFSR LFSR Linear Feedback Shift Register - 线性反馈移位寄存器 LFSR 是一种移位寄存器电路&#xff0c;其中两个或多个中间步骤的输出线性组合并反馈到输入值&#xff0c;这就是为什么它被称为线性反馈移位寄存器的原因。 该电路具有以…

python合并k个有序链表_Leetcode合并K个升序链表(Python版本),LeetCode,python

一、描述给你一个链表数组&#xff0c;每个链表都已经按升序排列。请你将所有链表合并到一个升序链表中&#xff0c;返回合并后的链表。示例 1&#xff1a;输入&#xff1a;lists [[1,4,5],[1,3,4],[2,6]]输出&#xff1a;[1,1,2,3,4,4,5,6]解释&#xff1a;链表数组如下&…

Qt界面风格设置

每个widget都可以设置风格setStyle(QStyle style)对QApplication设置QStyle即对所有QApplication::setStyle(QStyleFactory::create("Fusion"));其他widget如过没有被设置QStyle&#xff0c;默认使用QApplication的QStyle主要可重写接口绘制复杂控件virtual void …

树莓派练习程序(蜂鸣器)

蜂鸣器模块如下图&#xff1a; 树莓派的引脚如下图&#xff1a; 我们将Vcc引脚连接物理接口1&#xff08;注意这里需要用3.3v&#xff09;&#xff0c;I/O引脚连接物理接口40&#xff0c;GND引脚连接物理接口39。 实物连接如下图&#xff1a; 编程使用WiringPi库&#xff0c;使…

Gold Code,Gold Sequence

Gold Code Gold Code是以Robert Gold的名字命名的。它是一组特殊的二进制随机(伪随机)序列&#xff0c;其中成员序列之间的相关性很小。由于这种特性(较小的相关性)&#xff0c;它被广泛地用作各种无线通信系统的扰码。 我们可以非常简单地利用 m序列 来生成Gold Code: 选择两…

【PHP高效搜索专题(1)】sphinxCoreseek的介绍与安装

我们已经知道mysql中带有"%keyword%"条件的sql是不走索引的,而不走索引的sql在大数据量大并发量的时候,不仅效率极慢还很有可能让数据库崩溃.那我们如何通过某些关键字来搜索我们想要的文章呢? 虽然mysql的MYISAM提供全文索引,但是只支持中文,并且性能却不敢让人恭维…

java 开源sns_JEESNS V1.0发布,JAVA 开源 SNS 社交系统

JEESNS V1.0 发布了&#xff0c;本次更新内容&#xff1a;增加后台管理员授权与取消功能增加私信模块解决在微博页面&#xff0c;左侧微博点赞过后&#xff0c;左侧展示列表小手会变黑&#xff0c;但是右侧热门出小手依然是白色修复后台添加栏目、文章成功后&#xff0c;提示页…

Balanced Binary Tree leetcode java

题目&#xff1a;Given a binary tree, determine if it is height-balanced. For this problem, a height-balanced binary tree is defined as a binary tree in which the depth of the two subtrees of every node never differ by more than 1. 题解&#xff1a;采用递归…

leaflet地图框架

leaflet 中文API LeafLet js 官网&#xff1a; http://leafletjs.com/index.html LeafLet js 官网demo&#xff1a; http://leafletjs.com/examples.html LeafLet js 官网API&#xff1a; http://leafletjs.com/reference-1.3.0.html L.Map API各种类中的核心部分&#xff0c;用…

NR:UE初始搜网流程

UE的初始搜网流程&#xff0c;PSS->SSS->PBCH->RMSI.我画了一个简单的流程图如下&#xff0c;里面标注了每个环节的重点。 UE的初始搜网流程: 分为SSB同步(包括MIB读取)和RMSI的读取。 1. SSB SSB包括&#xff1a; PSS,SSS,PBCH. UE 在GSCN频点上&#xff0c;搜索…

纯CSS3制作的圆角效果按钮菜单

<!DOCTYPE html> <head> <meta http-equiv"Content-Type" content"text/html; charsetutf-8" /> <title>纯CSS3制作的圆角效果按钮菜单丨曲阳雕塑</title> <style type"text/css"> nav{display: block; wid…

java 左右键_js 区分鼠标左右键点击

oncontextmenu 是右键事件但是滚轮事件并没有获取到, 使用vue可以用middle获取Title.box {width: 200px;height: 200px;background: deepskyblue;}let div document.getElementById(app)div.oncontextmenu function (e) {e.preventDefault();console.log(右键, e.button)};d…

面向对象设计领域的OCP原则

一、OCP简介&#xff08;OCP--Open-Closed Principle &#xff09;&#xff1a;Software entities(classes,modules,functions,etc.) should be open for extension, but closed for modification。软件实体应当对扩展开放&#xff0c;对修改关闭&#xff0c;即软件实体应当在不…

Python教学课程分享9-面向对象编程

面向对象程序设计的思想主要是针对大型软件设计而提出的&#xff0c;它的一个关键性观念是将数据以及对数据的操作封装在一起&#xff0c;组成一个相互依存、不可分割的整体&#xff0c;即不同对象之间通过消息机制来通信或者同步。对于相同类型对象进行分类、抽象后&#xff0…