Loading


  今天尝试安装了一下Android studio,以下是我在网上找到的参考教程的链接http://www.runoob.com/android/android-studio-install.html,安装时也需要配置jdk,填入jdk的路径,在所需的组件中我也是选了"Android Studio", "Android SDK", "Android 虚拟机"和"外观(Intel chip)"。但是现在还不清楚它们的作用。解压 SDK 软件包时不知道什么原因失败了一次,后来又重新来了一边,花了不少时间,由于我下载的是英文版,又并不熟悉这个软件的操作,所以我选择用JavaWeb来做这个记账本软件。

  今天主要先做了一下后台数据库的表格,我认为记账本应该设计两个外表,一个用于账务,另一个存储用户信息。

以下是源码

import java.sql.SQLException;
import java.util.List;

import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.handlers.BeanListHandler;

import cn.cyxd.gjp.domain.Users;
import cn.cyxd.gjp.tools.JDBCUtils;



/*
 * 实现对数据表gjp_users数据增、删、改、查操作。
 * dbutils工具类完成,类成员创建QueryRunner对象,指定数据源
 */
public class UsersDao {
        private QueryRunner qr = new QueryRunner(JDBCUtils.getDataSource());
        
        /*
         * 定义方法:实现删除用户
         * 业务层调用,传递主键id值
         */
        public void deleteUsers(int uid) {
            try {
                    //拼写删除数据SQl语句
                    String sql = "DELETE FROM gjp_users WHERE uid=?";
                    qr.update(sql, uid);
            } catch (SQLException ex) {
                    System.out.println(ex);
                    throw new RuntimeException("删除用户失败");
            }
        }
        
        /*
         * 定义方法:实现编辑用户功能
         * 由业务层调用,传递Users对象
         * 将对象中的数据,更新到数据表中
         */
        public void editUsers(Users user) {
            try{
                //拼写编辑账务的SQL语句
                String sql = "UPDATE gjp_users SET uname=?,upassword=? WHERE uid=?";
                //定义对象数组,将所有的参数传递给对象数组
                Object[] params = {user.getUname(),user.getUpassword(),user.getUid()};
                qr.update(sql, params);
            }catch (SQLException ex) {
                System.out.println(ex);
                throw new RuntimeException("很遗憾!用户编辑失败");
            }
        }
        /*
         * 定义方法:实现添加用户
         * 由业务层调用,传递Users对象
         * 将Users对象中的数据,添加到数据表
         */
        public void addUsers(Users user){
            try{
                    //拼写添加数据的SQL语句
                    String sql = "INSERT  INTO gjp_users(uname,upassword) VALUES (?,?)";
                    //创建对象数据,存储2个占位符的实际参数
                    //实际参数来源是:传递过来的对象Users
                    Object[] params = {user.getUname(),user.getUpassword()};
                    //调用qr对象中的方法updata执行添加
                    qr.update(sql,params);
            }catch(SQLException ex){
                    System.out.println(ex);
                    throw new RuntimeException("用户添加失败");
            }
        }
        
        
        /*
         * 定义方法:查询数据库,带有条件去查询账务表
         * 由业务层调用,查询结果集存储到Bean对象,存储到List集合
         * 调用者传递2个日期字符串
         */
        public List<Users> select(String uname,String upassword){
            try{
                    //拼写条件查询的SQL语句
                    String sql = "SELECT *FROM gjp_users WHERE uname = ? AND upassword = ?";
                    //定义对象数组,存储?占位符
                    Object[] params = {uname,upassword};
                    //调用qr对象的方法query查询数据表,获取结果集
                    return qr.query(sql, new BeanListHandler<>(Users.class),params);
            }catch(SQLException ex){
                    System.out.println(ex);
                    throw new RuntimeException("无法识别用户");
            }
        }
        
        /*
         * 定义方法:查询用户信息
         * 由业务层调用
         * 结果集,将所有的账务数据,存储到Bean对象,存储到集合中
         */
        public List<Users> selectAll(){
                try{
                        //查询用户数据的SQL语句
                        String sql = "SELECT * FROM gjp_users";
                        //调用qr对象的方法,query方法,结果集BeanListHandler
                        return qr.query(sql,new BeanListHandler<>(Users.class) );
                }catch(SQLException e){
                        System.out.println(e);
                        throw new RuntimeException("查询所有用户失败");
                }
            }

}
import java.sql.SQLException;
import java.util.List;

import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.handlers.BeanListHandler;

import cn.cyxd.gjp.domain.ZhangWu;
import cn.cyxd.gjp.tools.JDBCUtils;



/*
 * 实现对数据表gjp_zhangwu数据增、删、改、查操作。
 * dbutils工具类完成,类成员创建QueryRunner对象,指定数据源
 */
public class ZhangWuDao {
        private QueryRunner qr = new QueryRunner(JDBCUtils.getDataSource());
        
        /*
         * 定义方法:实现删除账务
         * 业务层调用,传递主键id值
         */
        public void deleteZhangWu(int zwid) {
                    try{
                        //拼写删除数据SQl语句
                        String sql = "DELETE FROM gjp_zhangwu WHERE zwid=?";
                        qr.update(sql, zwid);
                } catch (SQLException ex) {
                        System.out.println(ex);
                        throw new RuntimeException("删除账务失败");
                }

        }
        
        /*
         * 定义方法:实现编辑账务功能
         * 由业务层调用,传递ZhangWu对象
         * 将对象中的数据,更新到数据表中
         */
        public void editZhangWu(ZhangWu zw) {
            try{
                //拼写编辑账务的SQL语句
                String sql = "UPDATE gjp_zhangwu SET flname=?,money=?,zhanghu=?,createtime=?,description=? WHERE zwid=?";
                //定义对象数组,将所有的参数传递给对象数组
                Object[] params = {zw.getFlname(),zw.getMoney(),zw.getZhanghu(),zw.getCreatetime(),zw.getDescription(),zw.getZwid()};
                qr.update(sql, params);
            }catch (SQLException ex) {
                System.out.println(ex);
                throw new RuntimeException("很遗憾!账务编辑失败");
            }
        }
        /*
         * 定义方法:实现添加账务功能
         * 由业务层调用,传递ZhangWu对象
         * 将ZhangWu对象中的数据,添加到数据表
         */
        public void addZhangWu(ZhangWu zw){
            try{
                    //拼写添加数据的SQL语句
                    String sql = "INSERT  INTO gjp_zhangwu(flname,money,zhangHu,createtime,description) VALUES (?,?,?,?,?)";
                    //创建对象数据,存储5个占位符的实际参数
                    //实际参数来源是:传递过来的对象ZhangWu
                    Object[] params = {zw.getFlname(),zw.getMoney(),zw.getZhanghu(),zw.getCreatetime(),zw.getDescription()};
                    //调用qr对象中的方法updata执行添加
                    qr.update(sql,params);
            }catch(SQLException ex){
                    System.out.println(ex);
                    throw new RuntimeException("账务添加失败");
            }
        }
        
        /*
         * 定义方法:查询数据库,带有条件去查询账务表
         * 由业务层调用,查询结果集存储到Bean对象,存储到List集合
         * 调用者传递2个日期字符串
         */
        public List<ZhangWu> select(String startDate,String endDate){
            try{
                    //拼写条件查询的SQL语句
                    String sql = "SELECT * FROM gjp_zhangwu WHERE createtime BETWEEN ? AND ?";
                    //定义对象数组,存储?占位符
                    Object[] params = {startDate,endDate};
                    //调用qr对象的方法query查询数据表,获取结果集
                    return qr.query(sql, new BeanListHandler<>(ZhangWu.class),params);
            }catch(SQLException ex){
                    System.out.println(ex);
                    throw new RuntimeException("条件查询失败");
            }
        }
        
        
        /*
         * 定义方法:查询数据库,获取所有的账务数据
         * 由业务层调用
         * 结果集,将所有的账务数据,存储到Bean对象,存储到集合中
         */
        public List<ZhangWu> selectAll(){
                try{
                        //查询账务数据的SQL语句
                        String sql = "SELECT * FROM gjp_zhangwu";
                        //调用qr对象的方法,query方法,结果集BeanListHandler
                        return qr.query(sql,new BeanListHandler<>(ZhangWu.class) );
                }catch(SQLException e){
                        System.out.println(e);
                        throw new RuntimeException("查询所有账务失败");
                }
            }


}

 

posted on 2019-02-13 20:45  一氓  阅读(151)  评论(0编辑  收藏  举报