首页 > 其他分享 >10.24

10.24

时间:2023-10-31 23:45:38浏览次数:36  
标签:10.24 rs public return id conn pstmt

跟着模板敲代码(1)

项目的架构

 Dao为数据持久层,用于实现数据库的增删改查

entity为javabean用于封装数据库中的对象

servlet为前端数据的处理层

jsp为前端页面

现在来一个个实现

 

BaseDao用于链接mysql数据库

public class BaseDao {
    static {
        try{
            Class.forName("com.mysql.jdbc.Driver");
        }catch (ClassNotFoundException e){
            e.printStackTrace();
        }
    }

    public static Connection getConnection(){
        Connection conn=null;
        try{
            String url="jdbc:mysql://localhost:3306/fruit";

            String username="root";

            String password="1234";
            conn= DriverManager.getConnection(url,username,password);
        }catch (SQLException e) {
            e.printStackTrace();
        }
        return conn;
    }
    public static  void closeConnection(Connection conn, PreparedStatement pstmt, ResultSet rs){
        try {
            if(rs!=null){
                rs.close();
            }
            pstmt.close();
            conn.close();

        }catch (SQLException e){
            e.printStackTrace();
        }
    }

}

Fruit为实体类

public class Fruit {
    public Integer id;

    public String name;
    public Integer price;
    public Integer weight;

    public  String location;

    public Fruit() {
    }

    public Fruit(Integer id, String name, Integer price, Integer weight, String location) {
        this.id = id;
        this.name = name;
        this.price = price;
        this.weight = weight;
        this.location = location;
    }

    public Fruit(String name, Integer price, Integer weight, String location) {
        this.name = name;
        this.price = price;
        this.weight = weight;
        this.location = location;
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Integer getPrice() {
        return price;
    }

    public void setPrice(Integer price) {
        this.price = price;
    }

    public Integer getWeight() {
        return weight;
    }

    public void setWeight(Integer weight) {
        this.weight = weight;
    }

    public String getLocation() {
        return location;
    }

    public void setLocation(String location) {
        this.location = location;
    }
}

接着实现增删改查

public class FruitDao {
    /**
     * 查看全部
     * @return
     */
    public List<Fruit> selectAll(){
        List<Fruit> list=new ArrayList<>();
        Connection conn = BaseDao.getConnection();
        PreparedStatement pstmt=null;
        ResultSet rs=null;
        try {
            pstmt=conn.prepareStatement("select * from fruit");
            rs=pstmt.executeQuery();
            while (rs.next()){
                Fruit f=new Fruit(rs.getInt(1),rs.getString(2),rs.getInt(3),rs.getInt(4),rs.getString(5));
                list.add(f);
            }
        }catch (Exception e){
            e.printStackTrace();
        }finally {
            BaseDao.closeConnection(conn,pstmt,rs);
        }
        return list;
    }

    /**
     * 增加
     * @param f
     * @return
     */
    public int insert(Fruit f ){
        int count=0;
        Connection conn = BaseDao.getConnection();
        PreparedStatement pstmt=null;
        ResultSet rs=null;
        try {
            pstmt=conn.prepareStatement("insert into fruit(name,price,weight,location) values (?,?,?,?)");
//            rs=pstmt.executeQuery();
            pstmt.setString(1,f.getName());
            pstmt.setInt(2,f.getPrice());
            pstmt.setInt(3,f.getWeight());
            pstmt.setString(4,f.getLocation());
            count=pstmt.executeUpdate();
        }catch (Exception e){
            e.printStackTrace();
        }finally {
            BaseDao.closeConnection(conn,pstmt,rs);
        }
        return count;
    }


    /**
     * 根据id进行查询
     * @param id
     * @return
     */
    public Fruit selectById(int id){
        Fruit f=new Fruit();
        Connection conn = BaseDao.getConnection();
        PreparedStatement pstmt=null;
        ResultSet rs=null;
        try {
            pstmt=conn.prepareStatement("select * from fruit where id=?");
            pstmt.setInt(1,id);
            rs=pstmt.executeQuery();
            while (rs.next()){
                f=new Fruit(rs.getInt(1),rs.getString(2),rs.getInt(3),rs.getInt(4),rs.getString(5));
//                pstmt.setInt(1,id);
            }
        }catch (Exception e){
            e.printStackTrace();
        }finally {
            BaseDao.closeConnection(conn,pstmt,rs);
        }
        return f;
    }


    public int update(Fruit f ){
        int count=0;
        Connection conn = BaseDao.getConnection();
        PreparedStatement pstmt=null;
        ResultSet rs=null;
        try {
            pstmt=conn.prepareStatement("update fruit set name=? , price=? , weight=? , location=? where id=?");

            pstmt.setString(1,f.getName());
            pstmt.setInt(2,f.getPrice());
            pstmt.setInt(3,f.getWeight());
            pstmt.setInt(5,f.getId());
            pstmt.setString(4,f.getLocation());
            count=pstmt.executeUpdate();
        }catch (Exception e){
            e.printStackTrace();
        }finally {
            BaseDao.closeConnection(conn,pstmt,rs);
        }
        return count;
    }

    /**
     * 根据id进行删除
     * @param id
     * @return
     */
    public int delete(int id){
        int count=0;
        Connection conn = BaseDao.getConnection();
        PreparedStatement pstmt=null;
        ResultSet rs=null;
        try {
            pstmt=conn.prepareStatement("delete from fruit where id=?");
            pstmt.setInt(1,id);
            count=pstmt.executeUpdate();
        }catch (Exception e){
            e.printStackTrace();
        }finally {
            BaseDao.closeConnection(conn,pstmt,rs);
        }
        return count;
    }


}

剩下的明天继续

 

标签:10.24,rs,public,return,id,conn,pstmt
From: https://www.cnblogs.com/daniel350-wang/p/17801753.html

相关文章

  • 每日总结10.24
    今天是一个充实的学习日,我早上开始了算法与数据结构的课程,这门课程涵盖了许多重要的计算机科学概念。今天,我们深入研究了树和生成树的概念,这是算法和数据结构中的关键主题。学习了树的基本结构和性质,以及如何使用树来解决各种计算问题。我还学到了一些巧妙的解题方法,这些方法在算......
  • 「Log」2023.10.24 小记
    序幕/尾声昨天跑了\(1000m\),晚上享受到了优质睡眠。虽说肌肉有点疼,但无压力起床,状态拉满。下楼之后感觉没想象中那么冷,大抵跟昨天莫名其妙的霾有关系。附近在装修,到处都是尘土,但天还是很蓝。\(\text{6:50}\):慵懒到校,整整博客,今天准备写写猪国杀。\(\text{7:30}\):模拟赛开题......
  • 10.24
    今天学习了使用mybatis通过注解的方式实现对数据库最基本的增删改查定义了一个Emp的类对象Emp.javapackagecom.itheima.mybatisdatabaseexample.pojo;importlombok.AllArgsConstructor;importlombok.Data;importlombok.NoArgsConstructor;importjava.time.LocalDat......
  • 2023.10.24——每日总结
    学习所花时间(包括上课):9h代码量(行):0行博客量(篇):1篇今天,上午学习,下午学习;我了解到的知识点:1.mybatis明日计划:学习......
  • 23.10.24(jsp下拉框添加默认值)
    通过查阅网上资料,得到jsp下拉框默认值的设置方式:<selectname="zy"id="zy"required><optionvalue="0"></option><optionvalue="信息工程"<%=selectValue.equals("信息工程")?"selected&......
  • 大二打卡(10.24)
    今天做了什么:数据结构,第一节课复习,第二节课开始对哈夫曼相关知识讲解,都是离散里面学过的,除了代码实现,还算轻松的一节课,下节课就要开始讲图了,一天天过的真快啊马原,今天座位占的好,在第四排,虽然离老师不近,但是还是可以的,下次抢个再考前一点点的位置晚上白话文,金瓶mei,以前只知道是......
  • 10.24日记
    CPU 计算机硬件基本系统有五大部分组成:运算器,控制器,存储器,输入设备,输出设备。 存储器分为内部存储器(即内存,容量小,速度快,临时存放数据)和外部存储器(即硬盘,光盘等,容量大,速度慢,长期保存数据) 中央处理单元组成:由运算器,控制器,寄存器组和内部总线组成 中央处理单元功能:实现程序控制,操......
  • 10.24
    今日代码:200行今日时间:4小时学习内容:今天学习了spark的相关知识,受益匪浅,留了点作业  编程实践:参考教程https://dblab.xmu.edu.cn/blog/4322/,任意选择以下一种方式通过SparkAPI编写一个独立应用程序。(一)使用sbt对Scala独立应用程序进行编译打包(二)使用Maven对Java独立应用......
  • 10.24送温暖,把“猿”节过的圆圆满满(文末双重福利!)
    "IT有得聊”是机械工业出版社旗下IT专业资讯和服务平台,致力于帮助读者在广义的IT领域里,掌握更专业、实用的知识与技能,快速提升职场竞争力。程序员之歌在那山的那边海的那边......
  • pod启动时报错:failed to set bridge addr: "cni0" already has an IP address differe
    今天创建pod的时候,一直不running,describepod后看到报错:Failedcreatepodsandbox:rpcerror:code=Unknowndesc=failedtosetupsandboxcontainer"bb8a1493......