Java小游戏-贪吃蛇

  • 连接数据库

数据库类:建立了com.zyrx包,里面有包含了数据库的注册驱动创建类,sql语句等。并通过另一个专门进行游戏的包通过Test类来引入com.zyrx进行对数据库的增,改,查操作。提供了容错性,并对代码的严谨性进行了考虑。

package com.zyrx;

import com.zyrx.Player;
/**
 *  主要需要四个参数,一个驱动信息参数,三个数据库入口参数
	driver:驱动信息
	url:数据库连接参数
	user:用户名    
	password:密码
 */

import java.sql.*;

public class JDBCUtils {
    //声明JDBC参数
    String driver="com.mysql.jdbc.Driver";
    String url="jdbc:mysql://localhost:3306/Player?characterEncoding=utf-8";
    String username="root";
    String password="password";
    String sql="";
    
    
    /**第一步,加载数据库驱动**/
    
    //Connection接口代表着与数据库的链接
    Connection conn=null;//创建一个Connection对象
    
    //为了执行 Statement 对象,被发送到数据库的 SQL 语句将被作为参数提供给 Statement 
    Statement statement=null;
    
    public JDBCUtils(String sql) {
        try {
            Class.forName(driver);
            /**第二步,获取数据库连接对象**/
            //通过访问数据库URL地址获取数据库连接对象
            conn = (Connection) DriverManager.getConnection(url, username, password);
            /**第三步,通过Connection接口的对象,创建出Statement的对象,然后可以用它编译和发送sql命令给数据库**/
            statement = (Statement) conn.createStatement();
            /**第四步,创建sql命令**/
            this.sql = sql;
        } catch (Exception e) {
            e.printStackTrace();
        }

    }

    /**
     * 添加数据
     */
    //Statement 接口提供了三种执行 SQL 语句的方法:executeQuery、executeUpdate
    //和 execute。使用哪一个方法由 SQL 语句所产生的内容决定
    public void insert(){
        try {
            /**第五步,执行指定sql命令,成功返回执行了sql命令改变数据库数据的次数,没有成功返回-1**/
            statement.executeUpdate(sql);
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }

    /**
     * 根据id查询
     */
    // ResultSet集合的主要功能使用来存储查询语句返回的结果集,
    public Player selectById(){
        Player Player=new Player();
        ResultSet rs=null;//保存需要的结果集
        try {

            rs = statement.executeQuery(sql);

            while(rs.next()){
                Player.setId(rs.getString(1));
                Player.setUname(rs.getString(2));
                Player.setTel(rs.getString(3));
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
        finally {
            try {
                rs.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
        return Player;
    }
    /**
     * 关闭连接
     */
    public void close(){
        try {
            this.statement.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
        try {
            this.conn.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
    
}


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值