JDBC入门

本文详细介绍使用Java JDBC进行数据库操作的步骤,包括注册驱动、建立连接、创建Statement、执行查询、遍历结果及资源释放。同时,提供了一个完整的示例代码,演示如何通过JDBCUtil工具类获取数据库连接,并执行SQL查询。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

主要是

  • 注册驱动(可有可无,4.0版本之后都自动获取驱动)
  • 建立连接
  • 创建statement
  • 执行查询
  • 遍历结果
  • 释放

具体如下:

创建xxx.porperties的文件

url=jdbc:mysql://localhost/数据库名字
name=数据库注册名字
password=数据库密码
driverClass=com.mysql.jdbc.Driver

创建类JDBCUtil

package acteutil;

import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;

import java.sql.Statement;
import java.util.Properties;


public class JDBCUtil {
	static String driverClass=null;
	static String url=null;
	static String name=null;
	static String password=null;
	
	static{
		try {
		//1.创建一个属性配置对象
		Properties properties=new Properties();
		
		InputStream is=new FileInputStream("jdbc.properties");//对应文件位于工程根目录
		//使用类加载器,去读取src底下的资源文件。//对应文件位于src目录底下
		//InputStream is=JDBCUtil.class.getClassLoader().getResourceAsStream("jdbc.properties");
		//导入输入流
		
			properties.load(is);
		
		//读取属性
		driverClass= properties.getProperty("driverClass");
		url=properties.getProperty("url");
		name=properties.getProperty("name");
		password=properties.getProperty("password");
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
	/**
	 * 获取连接对象
	 * @author 赵鹏
	 *
	 */
	public static Connection getConn(){
		Connection conn=null;
		try {
			//1.注册驱动
			//Class.forName(driverClass);//驱动可以不用注册
			//	DriverManager.registerDriver(new com.mysql.jdbc.Driver());
			//2.建立连接 参数一:协议+访问的数据库 参数二:用户名 参数三: 密码
			//DriverManager.getConnection("jdbc:mysql://localhost/test?user");
			conn = DriverManager.getConnection(url,name ,password );
		} catch (Exception e) {
			e.printStackTrace();
		}
		return conn;
		
	}
	
	/**
	 * //释放资源
	 * @param conn
	 * @param st
	 * @param rs
	 */
	public static  void release(Connection conn,Statement st,ResultSet rs){
		closeRs(rs);
		closeSt(st);
		closeConn(conn);
	}
	
	private static void closeRs(ResultSet rs){
		try{
			if(rs!=null){
				rs.close();
			}
		}catch(SQLException e){
			e.printStackTrace();
			
		}finally{
			rs=null;
		}
	}
	private static void closeSt(Statement st){
		try{
			if(st!=null){
				st.close();
			}
		}catch(SQLException e){
			e.printStackTrace();
			
		}finally{
			st=null;
		}
	}
	private static void closeConn(Connection conn){
		try{
			if(conn!=null){
				conn.close();
			}
		}catch(SQLException e){
			e.printStackTrace();
			
		}finally{
			conn=null;
		}
	}
}

主要操作

package actest;


import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

import acteutil.JDBCUtil;




public class test {
	public static void main(String[] args){
	    ResultSet rs=null;
	    Statement st=null;
	    Connection conn=null;
		
		
			try {
		//1.注册驱动
		//2.建立连接 参数一:协议+访问的数据库 参数二:用户名 参数三: 密码
		conn=JDBCUtil.getConn();
		//3.创建statement ,跟数据库打交道,一定要这个对象
				 st = conn.createStatement();
				
		//4.执行查询,得到结果集
				String sql="select*from t_stu";
				 rs = st.executeQuery(sql);
		
		//5.遍历查询每一条记录
				while(rs.next()){
					int id=rs.getInt("id");
					String name=rs.getString("name");
					int age=rs.getInt("age");
					System.out.println("id="+id+"===name="+name+"==age="+age);
				}
				
		
				} catch (Exception e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}finally{
	    //6.释放
				JDBCUtil.release(conn, st, rs);
			}
		
		 
	}

}

 

内容概要:该研究通过在黑龙江省某示范村进行24小时实地测试,比较了燃煤炉具与自动/手动进料生物质炉具的污染物排放特征。结果显示,生物质炉具相比燃煤炉具显著降低了PM2.5、CO和SO2的排放(自动进料分别降低41.2%、54.3%、40.0%;手动进料降低35.3%、22.1%、20.0%),但NOx排放未降低甚至有所增加。研究还发现,经济性和便利性是影响生物质炉具推广的重要因素。该研究不仅提供了实际排放数据支持,还通过Python代码详细复现了排放特征比较、减排效果计算和结果可视化,进一步探讨了燃料性质、动态排放特征、碳平衡计算以及政策建议。 适合人群:从事环境科学研究的学者、政府环保部门工作人员、能源政策制定者、关注农村能源转型的社会人士。 使用场景及目标:①评估生物质炉具在农村地区的推广潜力;②为政策制定者提供科学依据,优化补贴政策;③帮助研究人员深入了解生物质炉具的排放特征和技术改进方向;④为企业研发更高效的生物质炉具提供参考。 其他说明:该研究通过大量数据分析和模拟,揭示了生物质炉具在实际应用中的优点和挑战,特别是NOx排放增加的问题。研究还提出了多项具体的技术改进方向和政策建议,如优化进料方式、提高热效率、建设本地颗粒厂等,为生物质炉具的广泛推广提供了可行路径。此外,研究还开发了一个智能政策建议生成系统,可以根据不同地区的特征定制化生成政策建议,为农村能源转型提供了有力支持。
内容概要:本文研究了企业人工智能(AI)发展对低技能就业的影响,基于2012-2022年中国A股上市公司的数据,发现AI显著减少了低技能员工的数量。研究还揭示了数字化转型和人力资本投资在这一过程中起到中介作用,表明AI不仅直接替代低技能岗位,还通过提升数字化能力和技能需求间接影响就业。异质性分析显示,这些负面影响在非国有企业和非高科技企业中尤为明显。此外,文章通过Python代码展示了详细的复现步骤,包括数据预处理、基准回归、中介效应分析、异质性分析及可视化。 适用人群:对AI与劳动力市场关系感兴趣的学者、政策制定者以及从事相关研究的数据分析师。 使用场景及目标:①理解AI对企业低技能就业的具体影响;②分析数字化转型和人力资本投资的中介作用;③探讨不同企业类型(如国有企业与非国有企业、高科技与非高科技企业)在AI影响下的异质性表现;④通过代码实现复现实证研究结果,提供实证分析的方法论参考。 其他说明:本文不仅提供了理论分析,还通过详细的代码实现帮助读者理解具体的操作步骤。研究结果对于制定相关政策以应对AI带来的就业挑战具有重要参考价值,同时为后续研究提供了数据处理和模型构建的范例。文章最后讨论了研究的局限性和未来可能的研究方向,强调了治理结构和财务特征在AI转型中的重要作用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值