SSM004/工作内容
一。java执行sql脚本
1.Service层代码:目的随spring容器启动即执行
//Service层代码
@Component
public class InitCfcaDB {
final org.slf4j.Logger log = LoggerFactory.getLogger(getClass());
@PostConstruct
public void init(){
log.debug("初始化表结构....");
CfcaDbUtil.run();
}
}
2.util工具类
package com.csvalue.utils; import com.csvalue.common.PropertiesUtils;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.jdbc.ScriptRunner; import java.sql.Connection;
import java.sql.DriverManager; /*
* 初始化表结构
* */
public final class CfcaDbUtil {
public static final String driver = PropertiesUtils.getDBProperty("jdbc.driver");
public static final String url = PropertiesUtils.getDBProperty("jdbc.url");
public static final String username = PropertiesUtils.getDBProperty("jdbc.username");
public static final String userpwd = PropertiesUtils.getDBProperty("jdbc.userpwd"); public static void run(){
try {
Class.forName(driver);
//建立连接
Connection connection=DriverManager.getConnection(url,username,userpwd);
//创建ScriptRunner,用于执行SQL脚本
ScriptRunner scriptRunner=new ScriptRunner(connection);
scriptRunner.setErrorLogWriter(null);
scriptRunner.setLogWriter(null);
//执行sql脚本
scriptRunner.runScript(Resources.getResourceAsReader("sql/"+"filename"+".sql"));
connection.close();//关闭连接
System.out.println("=====success=========");
} catch (Exception e) {
e.printStackTrace();
}
} public static void main(String[] args){
run();
}
}
3.加载属性配置文件
package com.csvalue.common; import java.util.ResourceBundle; //加载属性配置文件
public class PropertiesUtils { private static ResourceBundle resource;
private static ResourceBundle resourceDB; static{
//读取配置文件 config 为文件名
resource = ResourceBundle.getBundle("properties/config");
resourceDB=ResourceBundle.getBundle("properties/jdbc");
} /**
* 提供外部访问的方法
* @param key
* @return
*/
public static String getProperty(String key){
//以String格式返回 key 对应的 value
return resource.getString(key);
} public static String getDBProperty(String key){
//以String格式返回 key 对应的 value
return resourceDB.getString(key);
} public static void main(String[] args){
//读取制定的key
String config = PropertiesUtils.getProperty("cfca.url");
System.out.println(config);
String url=PropertiesUtils.getDBProperty("jdbc.url");
System.out.println(url);
}
}
4.属性文件jdb.properties
#数据库连接配置信息
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/mysql
jdbc.username=root
jdbc.userpwd=shiyufeng
启动java web项目,即执行。
二。
SSM004/工作内容的更多相关文章
- 随心测试_软测基础_005 <测试人员工作内容>
接上篇:清楚了_测试人员的工作职责范围,那每项 测试活动的具体工作内容有哪些呢? Q1:如何理解测试工程师的工作内容? A1:SX的观点:综合一体化 现如今互联网行业如何哪达,每一项IT职业的工作职责 ...
- linux运维工作内容及岗位要求
什么是Linux?大家日常使用电脑听歌.打游戏娱乐或处理日常工作时,接触到最多的就是Windows操作系统,电脑如果不安装Windows系统是无法进行娱乐和工作的,所有的软件程序都必须运行在操作系统之 ...
- 【网站seo优化】SEO优化每天的工作内容是什么?
[网站seo优化]SEO优化每天的工作内容是什么?从未知的领域来到seo,感到搜索引擎无比神奇,接触seo久了,有每天必做的工作内容,大量的seo从业者,每天的工作内容大同小异,主要做的工作有通过相应 ...
- dba工作内容
一.数据库管理员的工作内容 关键词:dba工作内容 转自:http://blog.sina.com.cn/s/blog_44e0d0490102won1.html 1.规划与建设: 1.数据库服务器环 ...
- CentOS工作内容(七)禁用IPV6
CentOS工作内容(七)禁用IPV6 用到的快捷键 tab 自动补齐(有不知道的吗) ctrl+a 移动到当前行的开头(a ahead) ctrl+e 移动到当前行的开头(e end) ctrl+u ...
- CentOS工作内容(六)双网卡带宽绑定bind teaming
CentOS工作内容(六)双网卡带宽绑定bind teaming Teaming功能是什么功能http://zhidao.baidu.com/link?url=cpcwl9LH4FSHJBaTW-e ...
- CentOS工作内容(五)单一网卡配置多个IP
CentOS工作内容(五)单一网卡配置多个IP 用到的快捷键 tab 自动补齐(有不知道的吗) ctrl+a 移动到当前行的开头(a ahead) ctrl+e 移动到当前行的开头(e end) ct ...
- CentOS工作内容(四)主机禁ping
CentOS工作内容(四)主机禁ping 用到的快捷键 tab 自动补齐(有不知道的吗) ctrl+a 移动到当前行的开头(a ahead) ctrl+u 删除(剪切)此处至开始所有内容 vim 末行 ...
- CentOS工作内容(三)配置网络IP地址
CentOS工作内容(三)配置网络IP地址 用到的快捷键 tab 自动补齐(有不知道的吗) ctrl+a 移动到当前行的开头(a ahead) ctrl+u 删除(剪切)此处至开始所有内容 vim 末 ...
随机推荐
- repo 回退当前分支下所有仓库到指定日期前的最新代码版本
回退命令: repo forall -c 'commitID=git log --before "2019-11-24 23:59" -1 --pretty=format:&quo ...
- vue设置全局query参数
router.beforeEach((to, from, next) => { // 设置全局店铺ID shopid const shopid = from.query.shopid // 如果 ...
- Python CGI编程Ⅵ
GET和POST方法 浏览器客户端通过两种方法向服务器传递信息,这两种方法就是 GET 方法和 POST 方法. 使用GET方法传输数据 GET方法发送编码后的用户信息到服务端,数据信息包含在请求页面 ...
- 让IE8一下兼容CSS3选择器
来自英国的网页开发工程师Keith Clark 开发了一个JavaScript方案来使IE支持CSS3选择器.该脚本支持从IE5到IE8的各个版本. 首先,您需要下载DOMAssistant脚本和ie ...
- C语言 - strlen的编程实现及总结
一.函数strlen的编程实现 1.strlen函数的实现 原型: size_t strlen(const char *str); 头文件:#include <string.h> 功能:计 ...
- [HG]Market 题解
题目描述 在比特镇一共有 \(n\) 家商店,编号依次为 \(1\) 到 \(n\). 每家商店只会卖一种物品,其中第 \(i\) 家商店的物品单价为 \(c_i\),价值为 \(v_i\),且该商店 ...
- [LOJ3119][CTS2019|CTSC2019]随机立方体:组合数学+二项式反演
分析 感觉这道题的计数方法好厉害.. 一个直观的思路是,把题目转化为求至少有\(k\)个极大的数的概率. 考虑这样一个事实,如果钦定\((1,1,1),(2,2,2),...,(k,k,k)\)是那\ ...
- Vue Cli3工具中,配置目录别名,alias
- Spring boot之添加JSP支持
大纲 (1) 创建Maven web project: (2) 在pom.xml文件添加依赖 (3) 配置application.properties支持jsp (4) 编写测试Controller ...
- Windows下如何安装Redis
Redis可以从下面的github上面下载,当前的下载版本为3.2.100版本 https://github.com/MicrosoftArchive/redis/releases 这边都是64位的链 ...