«前の日記(2007-12-29) 最新 次の日記(2007-12-31)» 編集

ToDo:

  • 99 深呼吸して、おちけつ (~12/31 あと9日)
  • 98 毎日アウトプットを重きにおいた目標をたてる (~12/31 あと9日)
  • 97 買物は行動を変えるもの・ことに限る (~12/31 あと9日)
  • 96 合理的な行動はときに我慢を強いる(~12/31 あと9日)

ɥozɐʞıɥ


2007-12-30 カナーリ鬱入っています [長年日記]

_

ふつーに起きたが、調子悪くって2℃寝。

_ [生活] 一流の研究者とのお別れ:10分で人生を変える方法

なんか年末にも色々あって、ヨーク考えたら確かに短期的、中期的、長期的視野に欠けているなぁって思いました。

自分の立ち位置と先の見通しを考えて行動しましょうね>ヲレ。

そう考えると…以下略。

_ [生活] なかなか眠れない人のための簡単に眠る10の方法

この中で意識しているのは、仮眠をしないと寝過ごさないですね。

土曜日はそれが出来つつあるのですが、日曜日はどうしても寝過ごし気味です。

_ [ORM] Hibernate Annotationの実験 1:多(片方向)の場合

ちょっと本当にそうなのかは別にして、組織と従業員(1:*)にしてみました。本当はaggrigateなのでしょうが…。あと、双方向の場合は別途相談。
組織
package org.hikazoh;
 
import java.io.Serializable;
import javax.persistence.*;
import java.util.*;
 
@Entity
@Table(name="Department")
@NamedQuery(name="org.hikazoh.matchName",query="from org.hikazoh.Department Department where name = :name")
public class Department implements Serializable {
	@Id
	@GeneratedValue(strategy=GenerationType.IDENTITY)
	@Column(name="ID")
	private Integer iD;
	@Column(name="Name")
	private String name;
	@OneToMany(targetEntity=Employee.class)
	@JoinColumn(name="DepartmentID")
	private Set employees;
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public Set getEmployees() {
		return employees;
	}
	public void setEmployees(Set employees) {
		this.employees = employees;
	}
	public Integer getID() {
		return iD;
	}
	public void setID(Integer id) {
		iD = id;
	}
}
↑</employee>なTagが出ているのはご愛嬌。(ナンデダー??)
従業員
package org.hikazoh;
 
import java.io.Serializable;
import javax.persistence.*;
 
@Entity
@Table(name="Employee")
public class Employee implements Serializable {
	@Id
	@Column(name="ID")
	@GeneratedValue(strategy=GenerationType.IDENTITY)
	private Integer iD;
	@Column(name="FirstName")
	private String firstName;
	@Column(name="LastName")
	private String lastName;
	@Column(name="DepartmentID")
	private Integer departmentID;
	public Integer getID() {
		return iD;
	}
	public void setID(Integer id) {
		iD = id;
	}
	public String getFirstName() {
		return firstName;
	}
	public void setFirstName(String firstName) {
		this.firstName = firstName;
	}
	public String getLastName() {
		return lastName;
	}
	public void setLastName(String lastName) {
		this.lastName = lastName;
	}
	public Integer getDepartmentID() {
		return departmentID;
	}
	public void setDepartmentID(Integer departmentID) {
		this.departmentID = departmentID;
	}
}
登録するには…
package org.hikazoh;
 
import org.hibernate.*;
import org.hibernate.cfg.AnnotationConfiguration;
import java.util.*;
 
public class SimpleTest {
	public static void main(String[] args) {
		SessionFactory sessionFactory =
			new AnnotationConfiguration()
			.addPackage("org.hikazoh")
			.addAnnotatedClass(Employee.class)
			.addAnnotatedClass(Department.class)
			.buildSessionFactory();
		Session session = sessionFactory.openSession();
		Transaction tx = null;
		try{
			tx = session.beginTransaction();
 
			Department dept = new Department();
			dept.setName("Sales");
			session.save(dept);
 			
			Employee emp = new Employee();
			emp.setFirstName("Hika");
			emp.setLastName("Zou");
			emp.setDepartmentID(dept.getID());
			session.save(emp);
			
			tx.commit();
		}catch(Exception e){
			e.printStackTrace();
			System.out.println("[" + e.getLocalizedMessage() + "]");
			if ( tx != null ){
				tx.rollback();
			}
		}finally{
			session.close();
		}
		sessionFactory.close();
	}
}
HQLによる簡単な検索
package org.hikazoh;
 
import org.hibernate.*;
import org.hibernate.cfg.AnnotationConfiguration;
 
import java.util.*;
 
public class SimpleLoad {
	public static void main(String[] args) {
		SessionFactory sessionFactory =
			new AnnotationConfiguration()
			.addPackage("org.hikazoh")
			.addAnnotatedClass(Department.class)
			.addAnnotatedClass(Employee.class)
			.buildSessionFactory();
		Transaction tx = null;
		Session session = sessionFactory.openSession();
		try{
			tx = session.beginTransaction();
			Query query = session.getNamedQuery("org.hikazoh.matchName");
			query.setString("name", "Sales");
			List list =(List)  query.list();
			for(Department dept:list){
				System.out.println("[DepartmentName]= " + dept.getName());
				for(Employee emp : dept.getEmployees()){
					System.out.println("Emp First name = " + emp.getFirstName());
				}
			}
		}catch(Exception e){
			e.printStackTrace();
			System.out.println("[" + e.getLocalizedMessage() + "]");
		}finally{
			session.close();
		}
		sessionFactory.close();
	}
}

_ [生活] ぶろがー達の退職

この考え方に賛同する部分が多いです。

直感を信じろ、自分を信じろ、好きを貫け、人を褒めろ、人の粗探ししてる暇があったら自分で何かやれ。って記事に触発されているヒトは周りにも居ます。ヲレみたいな人間でも色々と相談はされます。その時に言っているのは…

人間だもの、霞食っては生きてゆけません。明日で人間辞めるなら、それでいいけど…終わりまでのプランを考えた上で、今の立ち位置振る舞いを考えることだよ。

ってことですな。>自戒。

_ [ORM] Hibernate Annotationの実験 1:多(双方向)

こんな感じでしょうか?条件は上と一緒。 従業員
package org.hikazoh;
 
import java.io.Serializable;
import javax.persistence.*;
 
@Entity
@Table(name="Employee")
@NamedQuery(name="org.hikazoh.Employee",query="from org.hikazoh.Employee where lastName =:lastname")
public class Employee implements Serializable {
	@Id
	@Column(name="ID")
	@GeneratedValue(strategy=GenerationType.IDENTITY)
	private Integer iD;
	@Column(name="FirstName")
	private String firstName;
	@Column(name="LastName")
	private String lastName;
	@ManyToOne(targetEntity=Department.class)
	@JoinColumn(name="departmentID",referencedColumnName="ID")
	private Department department;
	public Integer getID() {
		return iD;
	}
	public void setID(Integer id) {
		iD = id;
	}
	public String getFirstName() {
		return firstName;
	}
	public void setFirstName(String firstName) {
		this.firstName = firstName;
	}
	public String getLastName() {
		return lastName;
	}
	public void setLastName(String lastName) {
		this.lastName = lastName;
	}
	public Department getDepartment() {
		return department;
	}
	public void setDepartment(Department department) {
		this.department = department;
	}
}
組織
package org.hikazoh;
 
import java.io.Serializable;
import javax.persistence.*;
import java.util.*;
 
@Entity
@Table(name="Department")
@NamedQuery(name="org.hikazoh.matchName",query="from org.hikazoh.Department Department where name = :name")
public class Department implements Serializable {
	@Id
	@GeneratedValue(strategy=GenerationType.IDENTITY)
	@Column(name="ID")
	private Integer iD;
	@Column(name="Name")
	private String name;
	@OneToMany(targetEntity=Employee.class)
	@JoinColumn(name="DepartmentID")
	private Set employees;
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public Set getEmployees() {
		return employees;
	}
	public void setEmployees(Set employees) {
		this.employees = employees;
	}
	public Integer getID() {
		return iD;
	}
	public void setID(Integer id) {
		iD = id;
	}
}
エントリーは
package org.hikazoh;
import org.hibernate.*;
import org.hibernate.cfg.AnnotationConfiguration;
import java.util.*;
public class SimpleTest {
	public static void main(String[] args) {
		SessionFactory sessionFactory =
			new AnnotationConfiguration()
			.addPackage("org.hikazoh")
			.addAnnotatedClass(Employee.class)
			.addAnnotatedClass(Department.class)
			.buildSessionFactory();
		Session session = sessionFactory.openSession();
		Transaction tx = null;
		try{
			tx = session.beginTransaction();
			Department dept = new Department();
			dept.setName("Sales");
			session.save(dept);
 		
			Employee emp = new Employee();
			emp.setFirstName("Hika");
			emp.setLastName("Zou");
			emp.setDepartment(dept);
			session.save(emp);
			
			tx.commit();
		}catch(Exception e){
			e.printStackTrace();
			System.out.println("[" + e.getLocalizedMessage() + "]");
			if ( tx != null ){
				tx.rollback();
			}
		}finally{
			session.close();
		}
		sessionFactory.close();
	}
}
検索は…従業員からと組織からをHQLで簡単に…
package org.hikazoh;
 
import org.hibernate.*;
import org.hibernate.cfg.AnnotationConfiguration;
import java.util.*;
 
public class SimpleLoad {
 
	public static void main(String[] args) {
		SessionFactory sessionFactory =
			new AnnotationConfiguration()
			.addPackage("org.hikazoh")
			.addAnnotatedClass(Department.class)
			.addAnnotatedClass(Employee.class)
			.buildSessionFactory();
		Transaction tx = null;
		Session session = sessionFactory.openSession();
		try{
			tx = session.beginTransaction();
			Query query = session.getNamedQuery("org.hikazoh.matchName");
			query.setString("name", "Sales");
			List list =(List)  query.list();
			for(Department dept:list){
				System.out.println("[DepartmentName]= " + dept.getName());
				for(Employee emp : dept.getEmployees()){
					System.out.println("Emp First name = " + emp.getFirstName());
				}
			}
 			
			query = session.getNamedQuery("org.hikazoh.Employee");
			query.setString("lastname", "Zou");
			List emps = (List)query.list();
			for(Employee emp : emps){
				System.out.println("[Emp First name]" + emp.getFirstName());
				System.out.println("Department name]" + emp.getDepartment().getName());
			}
		}catch(Exception e){
			e.printStackTrace();
			System.out.println("[" + e.getLocalizedMessage() + "]");
		}finally{
			session.close();
		}
		sessionFactory.close();
	}
}


2002|09|10|11|12|
2003|01|02|03|04|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|
«前の日記(2007-12-29) 最新 次の日記(2007-12-31)» 編集