Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,027

HOME > กระทู้สำหรับภาษาต่าง ๆ > สอบถามเรื่องโปรแกรม Eclipse ในการเพิ่มเวลาเข้าในฐานข้อมูล phpmyadmin



สอบถามเรื่องโปรแกรม Eclipse ในการเพิ่มเวลาเข้าในฐานข้อมูล phpmyadmin

 
Topic : 073790



โพสกระทู้ ( 133 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook


ผมมีปัญหาครับ คือผมใช้ โปรแกรม Eclipse ในการเขียน java โดยใช้ Hibernate วิชานี้ อ. สอนด้วยครับ คือนี้เป็นมินิโปรเจ็คเล้กๆนะครับ มีปัญหาการใช้เวลาครับ จะมีเวลาเข้ามาเกี่ยวข้องเกี่ยวกับจองตั๋วหนังครับ โดยผมจะเพิ่ม เวลา เช่น TimeID=T001 Time=09:00 ครับ แบบนี้มีใคร ช่วยหน่อยหน่อยครับติดตรงนี้ ผมใช้ Hibernate เข้ามาจัดการครับ โดยใช้ เซิฟสำรอง phpmyadmin
ไฟล์ที่เกี่ยวข้อง
1. log4j.properties (ไฟล์)
Code
log4j.rootLogger= debug,stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.SimpleLayout
log4j.logger.org.hibernate.SQL=debug
log4j.logger.org.hibernate.type=debug
log4j.logger.org.hibernate.tool. hbm2ddl\=debug
log4j.logger.org.hibernate=debug


2. hibernate.cfg.xml (ไฟล์)

<?xml version='1.0' encoding='utf-8'?>
        <!DOCTYPE hibernate-configuration PUBLIC
        "-//Hibernate/Hibernate Configuration DTD//EN"
        "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<hibernate-configuration>
        <session-factory>
                <property name="hibernate.connection.driver_class">
                        com.mysql.jdbc.Driver</property>
                <property name="hibernate.connection.url">

                        jdbc:mysql://localhost/projectmovie?characterEncoding=UTF-8</property>
                <property name="hibernate.connection.username">root</property>
                <property name="hibernate.connection.password"></property>
                <property name="hibernate.connection.pool_size">10</property>
                <property name="show_sql">true</property>
                <property name="hibernate.format_sql">true</property>
                <property name="dialect">org.hibernate.dialect.MySQLDialect</property>
                <property name="hibernate.hbm2ddl.auto">validate</property>
                <property name="current_session_context_class">thread</property>

                <!-- Mapping files -->
                <mapping class="annotaion.Time" />
                
        </session-factory>
</hibernate-configuration>


3. HibernateUtil ในโฟลเดอร์ util

package util;

import org.hibernate.SessionFactory;
import org.hibernate.Session;
import org.hibernate.HibernateException;
import org.hibernate.Transaction;
import org.hibernate.cfg.AnnotationConfiguration;

public class HibernateUtil {

	private static final SessionFactory sessionFactory;
	private static final ThreadLocal<Session> threadSession = new ThreadLocal<Session>();
	private static final ThreadLocal<Transaction> threadTransaction = new ThreadLocal<Transaction>();

	static {
		try {
			sessionFactory = new AnnotationConfiguration().configure()
					.buildSessionFactory();

		} catch (Throwable ex) {
			throw new ExceptionInInitializerError(ex);

		}
	}

	public static Session getSession() {

		Session session = (Session) threadSession.get();
		try {
			if (session == null) {
				session = sessionFactory.openSession();
				threadSession.set(session);
			}

		} catch (HibernateException ex) {
			throw ex;
		}
		return session;

	}

	public static void closeSession() {
		try {
			Session session = (Session) threadSession.get();
			threadSession.set(null);
			if (session != null && session.isOpen())
				session.close();
		} catch (HibernateException ex) {
			throw ex;
		}
	}

	public static void beginTransaction() {
		Transaction tx = (Transaction) threadTransaction.get();
		try {
			if (tx == null) {
				tx = getSession().beginTransaction();
				threadTransaction.set(tx);
			}
		} catch (HibernateException ex) {
			throw ex;
		}
	}

	public static void commitTransaction() {
		Transaction tx = (Transaction) threadTransaction.get();
		try {
			if (tx != null && !tx.wasCommitted() && !tx.wasRolledBack()) {
				tx.commit();
			}
			threadTransaction.set(null);
		} catch (HibernateException ex) {
			rollbackTransaction();
			throw ex;
		}
	}

	public static void rollbackTransaction() {
		Transaction tx = (Transaction) threadTransaction.get();
		try {
			threadTransaction.set(null);
			if (tx != null && !tx.wasCommitted() && !tx.wasRolledBack()) {
				tx.rollback();
			}
		} catch (HibernateException ex) {
			throw ex;
		}
	}
}


4. TimeDAO ในโฟลเดอร์ dao

package dao;

import util.HibernateUtil;
import annotaion.Time;
import java.util.List;
import java.util.Arrays;
import org.hibernate.Criteria;
import org.hibernate.Session;

public class TimeDAO {
	public void insert(Time time) throws Exception {
		try {
			Session session = HibernateUtil.getSession();
			session.save(time);
		} catch (Exception ex) {
			throw ex;
		}
	}

	public void update(Time time) throws Exception {
		try {
			Session session = HibernateUtil.getSession();
			session.update(time);
		} catch (Exception ex) {
			throw ex;
		}
	}

	public void delete(Time time) throws Exception {
		try {
			Session session = HibernateUtil.getSession();
			session.delete(time);
		} catch (Exception ex) {
			throw ex;
		}
	}

	public Time findByPK(String TimID) throws Exception {
		Time time = null;
		try {
			Session session = HibernateUtil.getSession();
			time = (Time) session.get(Time.class, TimID);
			return time;
		} catch (Exception ex) {
			throw ex;
		}
	}

	public List<Time> findAll() throws Exception {
		List<Time> list = null;
		try {
			Session session = HibernateUtil.getSession();
			Criteria crit = session.createCriteria(Time.class);
			list = toList(crit.list());
		} catch (Exception ex) {
			throw ex;
		}
		return list;
	}

	public static List<Time> toList(final List<?> beans) {
		if (beans == null)
			return null;
		if (beans.isEmpty())
			return null;
		int size = beans.size();
		Time[] list = new Time[size];
		list = (Time[]) beans.toArray(list);
		return Arrays.asList(list);
	}
}


5. Time ในโฟลเดอร์ annotaion

package annotaion;

import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Id;
import javax.persistence.Column;
import java.util.Date;

@Entity
@Table(name = "time")
public class Time {
	@Id
	@Column(name = "TimeID")
	private String TimeID;
	@Column(name = "Time")
	private Date Time;

	public String getTimeID() {
		return TimeID;
	}

	public void setTimeID(String timeID) {
		TimeID = timeID;
	}

	public Date getTime() {
		return Time;
	}

	public void setTime(Date time) {
		Time = time;
	}

	public Time() {

	}

	public Time(String timeID,Date time) {
		this.TimeID = timeID;
		this.Time = time;
	}
}


6. ClientTime โฟลเดอร์ client ตัวนี้รันครับ

package client;

import annotaion.Time;
import util.HibernateUtil;
import dao.TimeDAO;
import java.util.List;

public class ClientTime {
	public static void main(String[] args) {
		ClientTime tim = new ClientTime();
		tim.addTime();
	}
	public void addTime() {
		Time tm1 = new Time("T001", 9:00);
		Time tm2 = new Time("T002", 13:00);
		Time tm3 = new Time("T003", 19:00);

		try {
			HibernateUtil.beginTransaction();
			TimeDAO timeDAO = new TimeDAO(); 
			timeDAO.insert(tm1);
			timeDAO.insert(tm2);
			timeDAO.insert(tm3);
			HibernateUtil.commitTransaction();
		} catch (Exception ex) {
			ex.printStackTrace();
			HibernateUtil.rollbackTransaction();
			System.out.print("เกิดข้อผิดพลาดในการเพิ่มข้อมูล Time");
		} finally {
			HibernateUtil.closeSession();
		}
	}
}




Tag : MySQL, Win (Windows App), J#


Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2012-02-14 00:20:55 By : veeitdata5 View : 1738 Reply : 1
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

สงสัยในไทยครีเอท จะไม่มีคนเขียน Java น่ะครับ แต่ดูแล้วน่าจะเรียกผ่าน Odbc ครับ ส่วน Connection ก็ใช้ MyOdbc ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-02-25 12:14:38 By : webmaster
 


   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : สอบถามเรื่องโปรแกรม Eclipse ในการเพิ่มเวลาเข้าในฐานข้อมูล phpmyadmin
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 01
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่