HIbernate 에서 session 의 delete () 방법

<span style="font-size:18px;"> *    
	 * @author zhupeng
	 * @param username
	 * @param pwd
	 * @return
	 */
	//  delete                
	public boolean delete(String username,String pwd){
		System.out.println("      ");
		//     
		Session session = HibernateSessionFactory.getSession();
		//       
		Transaction tran = session.beginTransaction();//       
		Customer customer = new Customer();
		customer.setCustname(username);//   
		customer.setPwd(pwd);//   
		customer.setId(2); //session            
		session.delete(customer);
		try {
			tran.commit();
		} catch (Exception e) {
			// TODO: handle exception
			tran.rollback();
		
		}		
		if(customer!=null){
			System.out.println("    ");
			return true;
			
		}
		else
		{
			System.out.println("  false");
			return false;
		}
	</span>
<span style="font-size:18px;"> *    
	 * @author zhupeng
	 * @param username
	 * @param pwd
	 * @return
	 */
	//  delete                
	public boolean delete(){
		System.out.println("      ");
		//     
		Session session = HibernateSessionFactory.getSession();
		//       
		Transaction tran = session.beginTransaction();//       
		Customer customer =(Customer)session.get(Customer.class, 1);//     id
		 //session            
		session.delete(customer);
		try {
			tran.commit();
		} catch (Exception e) {
			// TODO: handle exception
			tran.rollback();
		
		}		
		if(customer!=null){
			System.out.println("    ");
			return true;
			
		}
		else
		{
			System.out.println("  false");
			return false;
		}
	}</span>

요약: session 의 delete 방법 은 메 인 키 를 통 해 삭 제 됩 니 다. 따라서 방법 1 에 대응 하지 않 는 다른 필드 를 설정 하 더 라 도 데 이 터 를 정상적으로 삭제 할 수 있 습 니 다. 데이터베이스 에 해당 하 는 메 인 키 값 이 존재 하지 않 으 면 다음 과 같은 이상 이 발생 합 니 다. Batch update returned unexpected row count from update [0];actual row count: 0; expected: 1 마지막 기억: 1) session 의 delete 방법 은 홈 키 를 통 해 삭제 되 며, 홈 키 가 존재 하지 않 으 면 이상 2) 지속 상태 대상 이 delete 되 어 순간 상태 대상 이 됩 니 다 < / span >

좋은 웹페이지 즐겨찾기