博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

第15周作业

Posted on 2019-12-12 16:20  王海楠  阅读(156)  评论(0编辑  收藏  举报

题目1:编写一个应用程序,输入用户名和密码,访问test数据库中t_login表(字段包括id、username、password),验证登录是否成功。

代码:

Test.java

package cn;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Scanner;

public class Test {

    public static void main(String[] args) {
        Scanner reader=new Scanner(System.in);
        System.out.println("输入用户名和密码");
        String username=reader.next();
        String password=reader.next();
        
        try {
            Class.forName("com.mysql.jdbc.Driver");        //加载驱动
            try {
                Connection con=DriverManager.getConnection(          //连接数据库
                        "jdbc:mysql://localhost:3306/t_login","root","0000");
                PreparedStatement pre=con.prepareStatement(
                        "select*from t1 where username=? and password=?");     //创建预处理语句对象
                pre.setString(1, username);                               //
                pre.setString(2, password);
                ResultSet rs=pre.executeQuery();                      //执行预处理语句
                        
                if(rs.next()){
                    System.out.println("登录成功");
                }else{
                    System.out.println("登录失败");
                }
    
                if(rs!=null){
                    rs.close();             
                }
                pre.close();
                con.close();         //关闭数据库
                
            } catch (SQLException e) {
                e.printStackTrace();
            }
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }

}

 

 

运行结果:

题目2:在上一题基础上,当登录成功后,将t_user表(id、name、sex、birthday)的信息进行显示(要求使用DB.java完成登录和获取t_user表中数据的操作),最后再对t_user表进行一条记录的添加操作。

代码

package cn;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Scanner;

public class Test {

    public static void main(String[] args) {
        Scanner reader=new Scanner(System.in);
        System.out.println("输入用户名和密码");
        String username=reader.next();
        String password=reader.next();
        
        try {
            Class.forName("com.mysql.jdbc.Driver");        //加载驱动
            try {
                Connection con=DriverManager.getConnection(          //连接数据库
                        "jdbc:mysql://localhost:3306/t_login","root","0000");
                PreparedStatement pre=con.prepareStatement(
                        "select*from t1 where username=? and password=?");     //创建预处理语句对象
                pre.setString(1, username);                               //
                pre.setString(2, password);
                ResultSet rs=pre.executeQuery();                      //执行预处理语句
                        
                if(rs.next()){
                    System.out.println("登录成功");
                }else{
                    System.out.println("登录失败");
                }
                System.out.println("t_user表信息如下:");
                rs=pre.executeQuery("select*from t_user");        //进行数据库查询,返回的结果集
                while(rs.next()){
                    String name=rs.getString(2);         //获取当前行中第二列的值
                    String sex=rs.getString(3);
                    String birthday=rs.getString(4);
                    System.out.println("姓名:"+name+"\n性别:"+sex+"\n生日:"+birthday);
                }
                System.out.println("输入添加信息");
                String nName=reader.next();
                String nSex=reader.next();
                String nBirthday=reader.next();
                pre=con.prepareStatement(
                        "insert into t_user(name,sex,birthday) values(?,?,?)");   //增加
                pre.setString(1, nName);
                pre.setString(2, nSex);
                pre.setString(3, nBirthday);
                int count =pre.executeUpdate();            //更新数据库,返回修改记录后的行数
                if(count >0){
                    System.out.println("添加信息成功");
                }else{
                    System.out.println("添加信息失败");
                }
                if(rs!=null){
                    rs.close();             
                }
                pre.close();
                con.close();         //关闭数据库
                
            } catch (SQLException e) {
                e.printStackTrace();
            }
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }

}

 

运行结果