SSM004/工作内容
2024-08-29 00:04:29
一。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项目,即执行。
二。
最新文章
- Fragment全解析系列(二):正确的使用姿势
- 关于QString中的arg()函数使用方法
- Iconfont矢量图标平台全面升级
- hibernate的懒加载问题
- SQL Server使用规范(转)
- Web前端开发实用的Chrome插件
- 数据库-增删改查操作SQL实现
- ElasticSearch 6.4.3 启动报错: [Cannot assign requested address: bind]
- avpicture_fill的实现
- 洛谷P3959 宝藏
- Python生成随机验证码,大乐透号码
- MySQL修改表、字段、库的字符集及字符集说明
- configure编译选项
- pycurl实例详解
- 【PHP】算法进阶,获取给定值的最优组合:虚拟币抵扣问题解决方案
- LeetCode 514----Freedom Trail
- 掌握zigbee网络里的相关的重要概论
- POJ2699:The Maximum Number of Strong Kings(枚举+贪心+最大流)
- sql中的笛卡尔积
- 问题:asp.net 点击button按钮调到页面顶部;结果:asp.net点击一个按钮,使页面跳转到本面页上的指定位置