CRUD

将hibernate作为持久层,使用hibernate替换原先的jdbc连接数据库,执行增删改查的操作

创建UserDao接口

package dao;



import pojo.User;



import java.util.List;



public interface UserDao {

    public void insert(User u);

    public  void delete(int id);

    public List queryAll();

    public void update(User u);

}

实现接口内方法

package dao;



import org.hibernate.Session;

import org.hibernate.SessionFactory;

import org.hibernate.query.Query;

import pojo.User;



import java.util.List;



public class UserDaoImpl implements UserDao {



    @Override

    public void insert(User u){

        SessionFactory sf = hibernateUtil.getSessionFactory();

        Session session =sf.getCurrentSession();

        //开启事务

        org.hibernate.Transaction transaction = session.beginTransaction();

        session.save(u);

        transaction.commit();

        sf.close();



    }



    @Override

    public void delete(int id){

        SessionFactory sf = hibernateUtil.getSessionFactory();

        Session session =sf.getCurrentSession();

        //开启事务

        org.hibernate.Transaction transaction = session.beginTransaction();

        session.delete(id);

        transaction.commit();

        sf.close();

    }



    @Override

    public List queryAll(){

        SessionFactory sf = hibernateUtil.getSessionFactory();

        Session session =sf.getCurrentSession();

        //开启事务

        org.hibernate.Transaction transaction = session.beginTransaction();

        Query query = session.createQuery("from  User ");

        List users = query.list();

        transaction.commit();

        sf.close();

        return users;



    }



    @Override

    public void update(User u){

        SessionFactory sf = hibernateUtil.getSessionFactory();

        Session session =sf.getCurrentSession();

        //开启事务

        org.hibernate.Transaction transaction = session.beginTransaction();

        session.update(u);

        transaction.commit();

        sf.close();



    }

}

创建insert action 去调用insert方法

package action;



import dao.UserDao;

import dao.UserDaoImpl;

import pojo.User;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import java.io.IOException;



public class Insert {

        public void execute(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

            User u = new User();

            UserDao ud = new UserDaoImpl();

            u.setName(request.getParameter("name"));

            u.setAge(Integer.parseInt(request.getParameter("age")));

            u.setGender(request.getParameter("gender"));

            try {

                ud.insert(u);

            } catch (Exception e) {

                // TODO Auto-generated catch block

                e.printStackTrace();

            }

        }

        

}

编写控制器center

package service;



import action.Insert;

import action.query;



import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import java.io.IOException;



public class center extends HttpServlet {

    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

        String uri = req.getRequestURI();

        System.out.println(uri);

        if(uri.equals("/u/insert")){

            new Insert().execute(req,resp);

        }



    }

}

配置web.xml

         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"

         version="4.0">

        center

        service.center

        center

        /u/*

   

 

在打开的表单中填入数据

成功添加

数据库中数据如下

delete,update,query操作和insert一样

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值